GCE持久磁盘与Kubernetes Pod相同的区域?

时间:2016-05-18 20:30:25

标签: google-compute-engine kubernetes google-kubernetes-engine

我试图通过部署对象yaml在kubernetes pod中挂载GCE持久性磁盘。 我观察到这种行为,只要节点(pod所在的节点)与永久磁盘(例如us-central1-a)位于同一区域,安装就会成功。 但是,如果存在不同的区域(例如us-central1-a中的节点和us-central1-b中的磁盘),则安装时间超出。

这种行为有效吗?我在文档中找不到任何可以验证它的内容。

http://kubernetes.io/docs/user-guide/volumes/#gcePersistentDisk

我们正在使用多区域群集,这使得加载正确的磁盘变得很麻烦。

3 个答案:

答案 0 :(得分:2)

您可以使用此nodeSelector:

    nodeSelector:
      failure-domain.beta.kubernetes.io/zone: us-central1-b

答案 1 :(得分:1)

GCE持久性磁盘是zonal resource,因此pod只能请求其区域中的PD。

答案 2 :(得分:0)

您需要将广告连播安排在同一PD区域。为此,您需要使用nodeSelector或nodeAffinity:required。

如果使用动态预配置的卷,则需要了解拓扑。这可以通过将存储类的volumeBindingMode设置为WaitForFirstConsumer来完成:volume binding