Kubernetes 复制集和守护程序集之间的混合

Kubernetes 复制集和守护程序集之间的混合,kubernetes,Kubernetes,是否存在复制集和守护程序之间的混合。 我想指定我总是希望有2个吊舱。但这些豆荚必须 永远不要在同一个节点上。我有10个节点 有什么方法可以实现这一点吗?在部署或复制集中,您可以使用podAffinity和podAntiaffinity pod间关联和反关联允许您基于节点上已运行的pod上的标签而不是基于节点上的标签来约束您的pod有资格调度哪些节点 规则的形式是“如果X已经运行一个或多个符合规则Y的pod,则该pod应该或在反亲和性的情况下不应该在X中运行”。Y表示为带有可选的名称空间关联列表的

是否存在复制集和守护程序之间的混合。 我想指定我总是希望有2个吊舱。但这些豆荚必须 永远不要在同一个节点上。我有10个节点 有什么方法可以实现这一点吗?

在部署或复制集中,您可以使用podAffinity和podAntiaffinity

pod间关联和反关联允许您基于节点上已运行的pod上的标签而不是基于节点上的标签来约束您的pod有资格调度哪些节点

规则的形式是“如果X已经运行一个或多个符合规则Y的pod,则该pod应该或在反亲和性的情况下不应该在X中运行”。Y表示为带有可选的名称空间关联列表的LabelSelector

apiVersion: apps/v1
kind: Deployment
metadata:
  name: web
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: k8s.gcr.io/nginx-slim:0.8
        ports:
        - containerPort: 80
          name: web
      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchExpressions:
              - key: app
                operator: In
                values:
                - nginx
            topologyKey: "kubernetes.io/hostname" 
上面的示例nginx pod1和pod2永远不会安排在同一个节点上

在官方网站上找到更多细节