在kubernetes,为什么PVC声称在绑定前等待消费者,但似乎已绑定?

ruarlubt  于 2023-01-25  发布在  Kubernetes
关注(0)|答案(1)|浏览(272)

我有一个聚氯乙烯,这是由许多吊舱使用,并应绑定到一个PV使用RAM磁盘
当我尝试描述PVC时,收到以下消息:

waiting for first consumer to be created before binding

我不明白这一点,因为它看起来确实与我绑定。如果我对PV进行描述,我非常肯定PVC绑定到它,它会说存在对default/PVC_name的声明
如果我登录到正在使用PVC的容器的shell,我可以ls挂载目录,查看正在保存和读取的文件等。
从所有的迹象来看,我可以告诉PVC肯定看起来绑定,那么为什么描述消息说,否则?

mzsu5hc0

mzsu5hc01#

**可能的解决方法1:**在k8s 1.24上不自动配置持久卷

在k8s 1.24之前,* 默认存储类 * 为standard,它使用 * 卷绑定模式 * Immediate。但是,从k8s 1.24开始,* 默认存储类 * 为standard-rwo,它使用 * 卷绑定模式 * WaitForFirstConsumer
此行为是有意的,实际上也是首选的。请创建一个使用PVC的工作负载,然后将创建一个PV。

*将存储类更新为 * 立即

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: Immediate  # <-- bind as soon as PVC is created

WaitForFirstConsumer仅在Pod使用您的PVC时绑定。
有关详细信息,请查看持久卷和动态预配置。

**可能的解决方法2:**检查是否已在主节点上创建PV。默认情况下,普通Pod使用所谓的污点将主节点标记为不可调度。要在主节点上运行某些服务,您有两种选择:

1.为某个服务添加容错以允许其在主节点上运行:
1.您可以删除主节点上的污点,这样任何pod都可以在主节点上运行。您应该知道这是危险的,因为它会使群集非常不稳定。
有关详细信息,请浏览类似的SO

相关问题