首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Kubernetes .spec.selectors文件中定义Deployment.yaml有什么需要?

在Kubernetes .spec.selectors文件中定义Deployment.yaml有什么需要?
EN

Stack Overflow用户
提问于 2021-10-19 07:17:24
回答 1查看 678关注 0票数 6

.spec.selector字段定义部署如何查找要管理的Pods。但是,我们也在模板中定义了标签,那么我们在.spec.selectors字段中得到的额外内容是什么,因为部署可以找到要使用模板中定义的标签来管理的Pods?

在下面的代码中,如何通过部署来管理带有“LabelocCloud.oracle.com/open: allow”的pod,因为它在spec.selectors中没有描述过。

代码语言:javascript
复制
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: cheeseshop
spec:
  replicas: 1
  progressDeadlineSeconds: 180
  selector:
     matchLabels:
       app.kubernetes.io/name: tutorial
       app.kubernetes.io/component: cheeseshop
  template:
     metadata:
       labels:
         app.kubernetes.io/name: tutorial
         app.kubernetes.io/component: cheeseshop
         occloud.oracle.com/open-network-policy: allow
       name: cheeseshop
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-19 11:24:16

spec.seletor字段由部署/复制集控制器使用。它必须是在中指定的标签的子集。这就是为什么你可能在你的吊舱里有额外的标签。但它们仍将由部署来管理。

spec.selector还用于检查是否有任何现有的ReplicaSet已经匹配这些条件。如果Deployment controller找到了一个孤立的ReplicaSet,它将被部署使用,而不是创建一个新的。请参阅https://github.com/kubernetes/kubernetes/blob/master/pkg/controller/deployment/deployment_controller.go#L222

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69626519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档