我正在通过 statefulset 部署 stolon(默认来自 stolon repo)。
我在 statefulset 配置中定义了
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes: ["ReadWriteOnce"]
storageClassName: stolon-local-storage
resources:
requests:
storage: 1Gi
这是我的存储类:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: stolon-local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer
statefulset 创建得很好,但 pod 有错误:
pod 有未绑定(bind)的立即 PersistentVolumeClaims
我该如何解决?
最佳答案
pod has unbound immediate PersistentVolumeClaims
在这种情况下,pvc 无法连接到 storageclass,因为它不是 default。 .
Depending on the installation method, your Kubernetes cluster may be deployed with an existing StorageClass that is marked as default. This default StorageClass is then used to dynamically provision storage for PersistentVolumeClaims that do not require any specific storage class. See PersistentVolumeClaim documentation for details.
可用于使新创建的存储类成为默认存储类的命令。
kubectl patch storageclass <name_of_storageclass> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
然后你可以使用
kubectl get storageclass
它应该看起来像这样NAME PROVISIONER AGE
stolon-local-storage (default) kubernetes.io/gce-pd 1d
关于kubernetes - 有状态集部署期间出现错误 "pod has unbound immediate PersistentVolumeClaim",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58607949/