Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes Pod不会调度到具有本地PV的节点。。持久卷声明不会绑定到本地持久卷_Kubernetes_Persistent Volumes_Persistent Volume Claims - Fatal编程技术网

Kubernetes Pod不会调度到具有本地PV的节点。。持久卷声明不会绑定到本地持久卷

Kubernetes Pod不会调度到具有本地PV的节点。。持久卷声明不会绑定到本地持久卷,kubernetes,persistent-volumes,persistent-volume-claims,Kubernetes,Persistent Volumes,Persistent Volume Claims,我正在尝试将mongo安排到集群(卡塔尔)中的给定节点 我在pod描述中看到以下错误消息: Warning FailedScheduling 58m default-scheduler 0/7 nodes are available: 1 node(s) had taint {node-role.kubernetes.io/master: }, that the pod didn't tolerate, 6 node(s) didn't find available persist

我正在尝试将mongo安排到集群(卡塔尔)中的给定节点

我在pod描述中看到以下错误消息:

  Warning  FailedScheduling  58m   default-scheduler  0/7 nodes are available: 1 node(s) had taint {node-role.kubernetes.io/master: }, that the pod didn't tolerate, 6 node(s) didn't find available persistent volumes to bind.
Mongo依赖于以下2项索赔:

[dsargrad@malta cfg]$ kubectl get pvc
NAME                                    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS    AGE
data-volume-learning-center-mongodb-0   Pending                                      local-storage   3m57s
logs-volume-learning-center-mongodb-0   Pending                                      local-storage   3m57s

[dsargrad@malta cfg]$ kubectl describe pvc data-volume-learning-center-mongodb-0
Name:          data-volume-learning-center-mongodb-0
Namespace:     default
StorageClass:  local-storage
Status:        Pending
Volume:
Labels:        app=learning-center-mongodb-svc
Annotations:   <none>
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
VolumeMode:    Filesystem
Used By:       learning-center-mongodb-0
Events:
  Type    Reason                Age                   From                         Message
  ----    ------                ----                  ----                         -------
  Normal  WaitForFirstConsumer  4m45s                 persistentvolume-controller  waiting for first consumer to be created before binding
  Normal  WaitForPodScheduled   12s (x19 over 4m42s)  persistentvolume-controller  waiting for pod learning-center-mongodb-0 to be scheduled
它们使用“本地”存储。。在qatar.corp.sensis.com节点上

[dsargrad@malta cfg]$ kubectl get nodes
NAME                    STATUS   ROLES                  AGE   VERSION
benin.corp.sensis.com   Ready    <none>                 45h   v1.20.5
chad.corp.sensis.com    Ready    <none>                 45h   v1.20.5
malta.corp.sensis.com   Ready    control-plane,master   45h   v1.20.5
qatar.corp.sensis.com   Ready    <none>                 45h   v1.20.5
spain.corp.sensis.com   Ready    <none>                 45h   v1.20.5
togo.corp.sensis.com    Ready    <none>                 45h   v1.20.5
tonga.corp.sensis.com   Ready    <none>                 45h   v1.20.5
我的本地存储类:

[dsargrad@malta cfg]$ kubectl get storageclass
NAME                      PROVISIONER                    RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
local-storage (default)   kubernetes.io/no-provisioner   Delete          WaitForFirstConsumer   false                  4h22m
以下是数据PV的说明

[dsargrad@malta cfg]$ kubectl describe pv mongo-data-pv
Name:              mongo-data-pv
Labels:            app=learning-center-mongodb-svc
Annotations:       <none>
Finalizers:        [kubernetes.io/pv-protection]
StorageClass:      local-storage
Status:            Available
Claim:             default/data-volume-learning-center-mongodb-0
Reclaim Policy:    Retain
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          1Gi
Node Affinity:
  Required Terms:
    Term 0:        kubernetes.io/hostname in [qatar.corp.sensis.com]
Message:
Source:
    Type:  LocalVolume (a persistent volume backed by local storage on a node)
    Path:  /home/storage/mongo/data
Events:    <none>
[dsargrad@maltacfg]$kubectl描述pv mongo数据pv
名称:mongo data pv
标签:app=学习中心mongodb svc
注释:
终结器:[kubernetes.io/pv保护]
StorageClass:本地存储
状态:可用
声明:默认/数据量学习中心mongodb-0
回收策略:保留
访问模式:RWO
VolumeMode:文件系统
容量:1Gi
节点关联:
所需条款:
术语0:kubernetes.io/hostname在[kartar.corp.sensis.com]中
信息:
资料来源:
类型:LocalVolume(由节点上的本地存储支持的持久卷)
路径:/home/storage/mongo/data
活动:
还有日志

[dsargrad@malta cfg]$ kubectl describe pv mongo-logs-pv
Name:              mongo-logs-pv
Labels:            app=learning-center-mongodb-svc
Annotations:       <none>
Finalizers:        [kubernetes.io/pv-protection]
StorageClass:      local-storage
Status:            Available
Claim:             default/logs-volume-learning-center-mongodb-0
Reclaim Policy:    Retain
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          1Gi
Node Affinity:
  Required Terms:
    Term 0:        kubernetes.io/hostname in [qatar.corp.sensis.com]
Message:
Source:
    Type:  LocalVolume (a persistent volume backed by local storage on a node)
    Path:  /home/storage/mongo/logs
Events:    <none>
[dsargrad@maltacfg]$kubectl描述pv mongo日志pv
名称:mongo logs pv
标签:app=学习中心mongodb svc
注释:
终结器:[kubernetes.io/pv保护]
StorageClass:本地存储
状态:可用
声明:默认/logs-volume-learning-center-mongodb-0
回收策略:保留
访问模式:RWO
VolumeMode:文件系统
容量:1Gi
节点关联:
所需条款:
术语0:kubernetes.io/hostname在[kartar.corp.sensis.com]中
信息:
资料来源:
类型:LocalVolume(由节点上的本地存储支持的持久卷)
路径:/home/storage/mongo/logs
活动:
在节点qatar.corp.sensis.com上,我有PV中引用的文件夹


为什么qatar.corp.sensis.com的pod时间表和PVC不能绑定到PVs?

我做了一个愚蠢的假设,如果PVC声明了一个尺寸,我会在描述命令的输出中看到这一点。我必须获得PVC规范的yaml,以确保其要求的数量超过PV分配的数量

我现在已成功绑定

[dsargrad@malta cfg]$ kubectl apply -f *logs* --namespace default
persistentvolume/mongo-logs-pv configured
[dsargrad@malta cfg]$ kubectl apply -f *data* --namespace default
persistentvolume/mongo-data-pv configured
[dsargrad@malta cfg]$ kubectl get pvc
NAME                                    STATUS   VOLUME          CAPACITY   ACCESS MODES   STORAGECLASS    AGE
data-volume-learning-center-mongodb-0   Bound    mongo-data-pv   10Gi       RWO            local-storage   98m
logs-volume-learning-center-mongodb-0   Bound    mongo-logs-pv   10Gi       RWO            local-storage   98m
通过仔细查看PVC规格,我找到了所需的细节。 有趣的是,是youtube上的视频让我猜到了答案。见时间从6:50左右开始

在以下注释中,存储大小为“2G”


我做出了愚蠢的假设,如果PVC声明了一个大小,我会在descripe命令的输出中看到它。我必须获得PVC规范的yaml,以确保其要求的数量超过PV分配的数量

我现在已成功绑定

[dsargrad@malta cfg]$ kubectl apply -f *logs* --namespace default
persistentvolume/mongo-logs-pv configured
[dsargrad@malta cfg]$ kubectl apply -f *data* --namespace default
persistentvolume/mongo-data-pv configured
[dsargrad@malta cfg]$ kubectl get pvc
NAME                                    STATUS   VOLUME          CAPACITY   ACCESS MODES   STORAGECLASS    AGE
data-volume-learning-center-mongodb-0   Bound    mongo-data-pv   10Gi       RWO            local-storage   98m
logs-volume-learning-center-mongodb-0   Bound    mongo-logs-pv   10Gi       RWO            local-storage   98m
通过仔细查看PVC规格,我找到了所需的细节。 有趣的是,是youtube上的视频让我猜到了答案。见时间从6:50左右开始

在以下注释中,存储大小为“2G”


你好,弗洛,是的。我知道他们正处于待审状态。。这就是我问题的实质。我已经创建了两个PV,我认为它们应该像上面描述的那样绑定。我有相当多的PVs和PVC经验。。在过去,我使用CEPH RBD作为我的供应商。这是我第一次使用“本地”PV。你能描述PV mongo data PV
kubectl并看看PV是在什么节点上吗?嗨,Jonas(@Jonas)。。我只是在问题的底部加了这个。@DavidSargrad抱歉,我删除了我的评论,因为我回答得太快了,抱歉。我也不太习惯这些类型的PV。大多数时候,我会将它绑定到云存储。我还在调查中,希望我能帮上忙:)@Flo嗨,两年前我第一次使用K8S时。。NFS是我的起点(当时我使用NFS客户机provisioner)。我最终搬到了CEPH。在这个特殊的例子中,我的目标是使用“本地”存储。。NFS不是我的选择。现在我想依靠本地存储。。直到我让rook在集群中运行。所以我真的很想弄明白为什么mongo吊舱不会安排时间。我认为我创建的2个PV应该分配到卡塔尔,pod应该安排到卡塔尔,最后2个mongo PVC应该绑定。Hi@Flo是的。我知道他们正处于待审状态。。这就是我问题的实质。我已经创建了两个PV,我认为它们应该像上面描述的那样绑定。我有相当多的PVs和PVC经验。。在过去,我使用CEPH RBD作为我的供应商。这是我第一次使用“本地”PV。你能描述PV mongo data PV
kubectl并看看PV是在什么节点上吗?嗨,Jonas(@Jonas)。。我只是在问题的底部加了这个。@DavidSargrad抱歉,我删除了我的评论,因为我回答得太快了,抱歉。我也不太习惯这些类型的PV。大多数时候,我会将它绑定到云存储。我还在调查中,希望我能帮上忙:)@Flo嗨,两年前我第一次使用K8S时。。NFS是我的起点(当时我使用NFS客户机provisioner)。我最终搬到了CEPH。在这个特殊的例子中,我的目标是使用“本地”存储。。NFS不是我的选择。现在我想依靠本地存储。。直到我让rook在集群中运行。所以我真的很想弄明白为什么mongo吊舱不会安排时间。我认为我创建的2个PV应该分配到卡塔尔,pod应该安排到卡塔尔,最后2个mongo PVC应该绑定。干得好,很高兴你修复了它。我会尽量记住的,以防发生在我身上hehe@Flo .. 我感谢你的反馈!干得好,很高兴你修好了。我会尽量记住的,以防发生在我身上hehe@Flo .. 我感谢你的反馈!
[dsargrad@malta cfg]$ kubectl describe pv mongo-logs-pv
Name:              mongo-logs-pv
Labels:            app=learning-center-mongodb-svc
Annotations:       <none>
Finalizers:        [kubernetes.io/pv-protection]
StorageClass:      local-storage
Status:            Available
Claim:             default/logs-volume-learning-center-mongodb-0
Reclaim Policy:    Retain
Access Modes:      RWO
VolumeMode:        Filesystem
Capacity:          1Gi
Node Affinity:
  Required Terms:
    Term 0:        kubernetes.io/hostname in [qatar.corp.sensis.com]
Message:
Source:
    Type:  LocalVolume (a persistent volume backed by local storage on a node)
    Path:  /home/storage/mongo/logs
Events:    <none>
[dsargrad@malta cfg]$ kubectl apply -f *logs* --namespace default
persistentvolume/mongo-logs-pv configured
[dsargrad@malta cfg]$ kubectl apply -f *data* --namespace default
persistentvolume/mongo-data-pv configured
[dsargrad@malta cfg]$ kubectl get pvc
NAME                                    STATUS   VOLUME          CAPACITY   ACCESS MODES   STORAGECLASS    AGE
data-volume-learning-center-mongodb-0   Bound    mongo-data-pv   10Gi       RWO            local-storage   98m
logs-volume-learning-center-mongodb-0   Bound    mongo-logs-pv   10Gi       RWO            local-storage   98m
[dsargrad@malta cfg]$ kubectl get pvc logs-volume-learning-center-mongodb-0 -o yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  creationTimestamp: "2021-03-31T15:55:40Z"
  finalizers:
  - kubernetes.io/pvc-protection
  labels:
    app: learning-center-mongodb-svc
  managedFields:
  - apiVersion: v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:labels:
          .: {}
          f:app: {}
      f:spec:
        f:accessModes: {}
        f:resources:
          f:requests:
            .: {}
            f:storage: {}
        f:volumeMode: {}
      f:status:
        f:phase: {}
    manager: kube-controller-manager
    operation: Update
    time: "2021-03-31T15:55:40Z"
  name: logs-volume-learning-center-mongodb-0
  namespace: default
  resourceVersion: "302313"
  uid: 09ef80fe-a45e-45e4-b515-9746b9265476
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 2G
  storageClassName: local-storage
  volumeMode: Filesystem
status:
  phase: Pending