k8s的Pod反亲和性

针对对象为Pod,目的是实现,新建Pod和目标Pod不要调度到一起,不在同一个Node上

示例:

bash 复制代码
root@k8s-master:/home/vagrant# cat pod.yaml 
apiVersion: v1
kind: Pod
metadata:
  name: testpod01
  labels:
    app: myapp01
    env: test1
spec:
  containers:
  - name: testpod01
    image: nginx:1.23.2
    imagePullPolicy: IfNotPresent

root@k8s-master:/home/vagrant# cat pod2.yaml 
apiVersion: v1
kind: Pod
metadata:
  name: testpod02
  labels:
    app: myapp02
    env: test2
spec:
  affinity:
    podAntiAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:  ##必须满足下面匹配规则
      - labelSelector:
          matchExpressions:
          - key: app
            operator: In  
            values:
            - myapp01  ## app=myapp01, 上面的Pod是符合要求的
        topologyKey: "kubernetes.io/hostname"
  containers:
  - name: testpod02
    image: redis:6.2


root@k8s-master:/home/vagrant# kubectl create -f pod.yaml 
pod/testpod01 created
root@k8s-master:/home/vagrant# kubectl create -f pod2.yaml 
pod/testpod02 created

root@k8s-master:/home/vagrant# kubectl get pods -o wide --show-labels
NAME            READY   STATUS    RESTARTS   AGE   IP              NODE          NOMINATED NODE   READINESS GATES   LABELS
node-affinity   1/1     Running   0          30m   172.16.126.2    k8s-worker2   <none>           <none>            <none>
testpod01       1/1     Running   0          11s   172.16.194.67   k8s-worker1   <none>           <none>            app=myapp01,env=test1
testpod02       1/1     Running   0          9s    172.16.126.3    k8s-worker2   <none>           <none>            app=myapp02,env=test2
相关推荐
jran-1 小时前
Docker 数据卷&应用部署
运维·docker·容器
jran-1 小时前
Docker dockerfile镜像制作&compose服务编排&私有仓库
java·docker·容器
云达闲人2 小时前
搭建DevOps企业级仿真实验环境:012容器运行时 containerd 详解
运维·kubernetes·containerd·devops·proxmox ve·容器运行时·容器部署
环流_2 小时前
Nacos VS Eureka
云原生·eureka
云游牧者2 小时前
K8S安全框架深度解析-从认证到RBAC实战完全指南
安全·容器·kubernetes·rbac·kubeconfig·rolebinding
古城小栈2 小时前
K8s 核心知识 讲解
docker·容器·kubernetes
杨云龙UP2 小时前
MySQL主库高峰期备份引发504故障:从库手动切换接管 + 主从恢复同步 + Docker版DB2重启实战_2026-05-17
linux·运维·数据库·mysql·docker·容器·centos
天涯明月19932 小时前
AEnvironment深度研究报告
人工智能·后端·云原生
jran-3 小时前
Docker 架构&命令
运维·docker·容器
不吃香菜kkk、3 小时前
SonarQube安装配置使用
ci/cd·kubernetes·云计算