我最近开始探索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发布于 2020-04-06 06:07:52
正如MaggieO所说,将ReadWriteMany改为ReadWriteOnce是问题的一部分。另一部分是,我必须在C上创建/mnt/disks/ssd1 1文件夹:手动驱动并编写"path: /c/mnt/disk/ssd1 1“。有些事情在我的例子中没有出现,但我无论如何都在尝试去做,并且可能会对其他人有所帮助,那就是我试图为一个PV提供两个PV,这是不可能的。PV与PVC的关系为1 :1。
发布于 2020-04-02 12:55:13
您的持久卷声明配置文件应该如下所示:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: zookeeper-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
storageClassName: local-storage只需将存取方式从ReadWriteMany更改为ReadWriteMany即可
如果有帮助请告诉我。
发布于 2020-04-02 11:16:32
您必须将持久化卷索赔与持久化卷绑定.正如您所提到的pvc storageclassName:本地存储。尝试使用as storageclassName: kafka,这样你的pvc就可以被限制在pv上。
https://stackoverflow.com/questions/60988966
复制相似问题