小编Tob*_*ias的帖子

服务选择器与部署选择器匹配标签

我知道服务使用选择器来确定哪些 Pod 通过它们的标签将流量路由到。

apiVersion: v1
kind: Service
metadata:
  name: svc
spec:
  ports:
  - name: tcp
    protocol: TCP
    port: 443
    targetPort: 443
  selector:
    app: nginx
Run Code Online (Sandbox Code Playgroud)

这一切都很好。

现在这个选择器和spec.selector来自部署的选择器有什么区别。我知道使用它是为了使部署可以匹配和管理其 pod。

但是我不明白为什么我需要额外的matchLabels声明并且不能像在服务中那样做。这在语义上有什么用?

apiVersion: apps/v1 
kind: Deployment
metadata:
  name: nginx
spec:
  selector:
    matchLabels:
      app: nginx
  replicas: 1 
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
Run Code Online (Sandbox Code Playgroud)

提前致谢

kubernetes

8
推荐指数
3
解决办法
2266
查看次数

标签 统计

kubernetes ×1