GCE Persistent Disk 与 Kubernetes Pod 同区?
GCE Persistent Disk Same zone as Kubernetes Pod?
我正在尝试通过部署对象 yaml 在 kubernetes pod 中挂载 GCE 永久磁盘。
我观察到这种行为,只要节点(pod 所在的节点)与永久磁盘(比如 us-central1-a)位于同一区域,安装就会成功。
但是,如果有不同的区域(比如 us-central1-a 中的节点和 us-central1-b 中的磁盘),则安装超时。
这种行为有效吗?我在文档中找不到任何可以证实它的内容。
http://kubernetes.io/docs/user-guide/volumes/#gcePersistentDisk
我们正在使用多区域集群,这使得加载正确的磁盘变得很麻烦。
GCE Persistent Disks 是 zonal resource,因此 Pod 只能请求其区域中的 PD。
您可以使用这个节点选择器:
nodeSelector:
failure-domain.beta.kubernetes.io/zone: us-central1-b
您需要将 pods 安排在同一个 PD 区域。为此,您需要使用 nodeSelector 或 nodeAffinity:required.
如果您使用的是动态配置的卷,则需要了解拓扑。这是通过将存储 class 的 volumeBindingMode 设置为 WaitForFirstConsumer 来实现的:volume binding
我正在尝试通过部署对象 yaml 在 kubernetes pod 中挂载 GCE 永久磁盘。 我观察到这种行为,只要节点(pod 所在的节点)与永久磁盘(比如 us-central1-a)位于同一区域,安装就会成功。 但是,如果有不同的区域(比如 us-central1-a 中的节点和 us-central1-b 中的磁盘),则安装超时。
这种行为有效吗?我在文档中找不到任何可以证实它的内容。
http://kubernetes.io/docs/user-guide/volumes/#gcePersistentDisk
我们正在使用多区域集群,这使得加载正确的磁盘变得很麻烦。
GCE Persistent Disks 是 zonal resource,因此 Pod 只能请求其区域中的 PD。
您可以使用这个节点选择器:
nodeSelector:
failure-domain.beta.kubernetes.io/zone: us-central1-b
您需要将 pods 安排在同一个 PD 区域。为此,您需要使用 nodeSelector 或 nodeAffinity:required.
如果您使用的是动态配置的卷,则需要了解拓扑。这是通过将存储 class 的 volumeBindingMode 设置为 WaitForFirstConsumer 来实现的:volume binding