云硬盘不支持跨可用区挂载到节点,在跨可用区的集群环境中,推荐通过 CBS-CSI 拓扑感知特性来避免跨可用区挂载问题。
拓扑感知调度需要多个 Kubernetes 组件配合完成,包括 Scheduler、PV controller、external-provisioner。具体流程如下:
volume.kubernetes.io/selected-node: 10.0.0.72
。volume.kubernetes.io/selected-node
),根据 nodeName 获取 Node 对象,传入到 external-provisioner 中。failure-domain.beta.kubernetes.io/zone
)后在对应可用区创建 PV,达到和 Pod 相同可用区的效果,避免云硬盘和 Node 在不同可用区而无法挂载问题。使用以下 YAML,在 Storageclass 中设置 volumeBindingMode 为 WaitForFirstConsumer。示例如下:
kind: StorageClass
metadata:
name: cbs-topo
parameters:
type: cbs
provisioner: com.tencent.cloud.csi.cbs
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
说明:CBS-CSI 和 In-Tree 组件均支持该操作。
本页内容是否解决了您的问题?