假设目前我有 2 个PVC
与ReadWriteOnce
,分别由Pod #1
和Pod #2
声明。两者都在Node #1
上运行。
接下来,Pod #2
使用较新的 Docker 映像进行更新。但是,同时运行Pod #3
并将其分配给Node #1
。由于Node #1
现在已经满了,Pod #2
只能由 Kubernetes 分配给Node #2
。
由于AWS EBS和Google PersistentDisk只能挂载在单个节点上,Pod #2
无法连接到之前声称的PVC
吗?
如果是,如何避免出现此问题?
是的,这是 pv/pvc 的缺点,目前 AWS 和 GCE 的存储交付。
为避免这种情况,您必须使用没有此限制的其他存储基础架构。可能性是CEPH,Gluster,scaleIO(和其他(。这些解决方案将存储从磁盘中抽象出来,并提供不再依赖于节点的存储层。
这应该不是问题。当Pod #2
计划Node #2
时,Kubernetes 应该自动将卷从Node #1
中分离出来,并将其附加到Node #2
,以便Pod #2
在那里使用。