Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google compute engine GCE持久磁盘与Kubernetes吊舱位于同一区域?_Google Compute Engine_Kubernetes_Google Kubernetes Engine - Fatal编程技术网

Google compute engine GCE持久磁盘与Kubernetes吊舱位于同一区域?

Google compute engine GCE持久磁盘与Kubernetes吊舱位于同一区域?,google-compute-engine,kubernetes,google-kubernetes-engine,Google Compute Engine,Kubernetes,Google Kubernetes Engine,我正试图通过部署对象yaml将GCE持久磁盘装入kubernetes吊舱。 我观察到这种行为,只要节点(pod所在的节点)与持久磁盘(比如us-central1-a)位于同一区域,装载就会成功。 但是,如果在不同的区域(例如us-central1-a中的节点和us-central1-b中的磁盘)中存在,则装载超时 这种行为有效吗?我在文档中找不到任何东西来验证它是否正确 我们使用的是多区域集群,这使得加载正确的磁盘非常麻烦 GCE持久磁盘是一个,因此pod只能请求其所在区域的PD。您可以使用此

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

这种行为有效吗?我在文档中找不到任何东西来验证它是否正确


我们使用的是多区域集群,这使得加载正确的磁盘非常麻烦

GCE持久磁盘是一个,因此pod只能请求其所在区域的PD。

您可以使用此节点选择器:

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

你需要把你的吊舱安排在同一个PD区域。为此,您需要使用nodeSelector或nodeAffinity:required


如果您使用的是动态配置的卷,则需要具有拓扑意识。这是通过将存储类的volumeBindingMode设置为WaitForFirstConsumer:

文档并不是直接针对区域的内容来实现的。我找到的最好的引语是“与持久性磁盘不同,云存储存储桶不限于实例所在的区域”。您在哪里添加此属性?nodeSelector是模板规范的一部分。我无法在该注释中设置格式,因此无法给出详细的示例,但是
spec.template.spec.nodeSelector
是您想要的。