我遇到
错误1个节点找不到可用的持久卷来绑定。
创建我的Pod以附加到永久存储后。
我在下面进行了设置。
PersistentVolume
和StorageClass
已成功创建并附加。
一旦我创建了PersistentVolumeClaim,它就会处于“待处理”状态,这是预期的(我相信),因为
由于WaitForFirstConsumer
的“ StorageClass
”设置,它会等待pod连接。
apiVersion: v1
kind: PersistentVolume
metadata:
name: example-local-pv
spec:
capacity:
storage: 2Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: local-storage
local:
path: /home/aozdemir/k8s
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- my-node
---
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: example-local-claim
spec:
accessModes:
- ReadWriteOnce
storageClassName: local-storage
resources:
requests:
storage: 2Gi
---
kind: Pod
apiVersion: v1
metadata:
name: task-pv-pod
spec:
volumes:
- name: task-pv-storage
persistentVolumeClaim:
claimName: example-local-claim
containers:
- name: task-pv-container
image: nginx
ports:
- containerPort: 80
name: "http-server"
volumeMounts:
- mountPath: "/usr/share/nginx/html"
name: task-pv-storage
我的问题是,在创建Pod之后,它会发出以下警告:
0/1个节点可用:1个节点未找到可用的持久性节点 要绑定的卷。
这是屏幕截图:
我在这里想念东西吗?
答案 0 :(得分:2)
那是我的坏事。 由于以下博客文章:https://kubernetes.io/blog/2018/04/13/local-persistent-volumes-beta/
请注意,PersistentVolume中有一个新的 nodeAffinity 字段 对象:Kubernetes调度程序就是这样理解的 PersistentVolume绑定到特定节点。 nodeAffinity是一个 本地持久卷的必填字段。
,我的值不正确。我将其更改为我的节点名称,然后重新部署,它可以正常工作。