我最近开始探索 Kubernetes,并决定尝试将 kafka 部署到 k8s。但是我在创建持久卷时遇到问题。我创建了一个存储类和一个持久卷,但持久卷声称处于待定状态,表示“没有匹配的卷插件”。这是我使用的 yaml 文件,虚线表示新文件。有人知道为什么会这样吗?
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: Immediate
reclaimPolicy: Retain
------------------------
apiVersion: v1
kind: PersistentVolume
metadata:
name: kafka-pv
spec:
capacity:
storage: 10Gi
volumeMode: Filesystem
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: local-storage
local:
path: /mnt/disks/ssd1
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- docker-desktop
---------------------------
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: zookeeper-pvc
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 5Gi
storageClassName: local-storage
最佳答案
正如 MaggieO 所说,将 ReadWriteMany 更改为 ReadWriteOnce 是问题的一部分。另一部分是我必须在我的 C: 驱动器上手动创建/mnt/disks/ssd1 文件夹,然后写入“路径:/c/mnt/disks/ssd1”。我的示例中没有出现,但无论如何我都在尝试做并且可能对其他人有帮助的事情是我试图为一个 PV 使用两个 PVC,这是不可能的。 PV 和 PVC 的关系是 1 对 1。
关于kubernetes - 本地 PersistentVolumeClaim 说 "no volume plugin matched",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60988966/