5.Pod反亲和调度(1) 反亲和的硬亲和
接着上面的例子,继续准备Pod3的yaml编排文件,如下:
apiVersion: v1kind: Podmetadata:name: webapp-2namespace: demolabels:app: webapp-2spec:containers:- name: webappimage: nginxports:- containerPort: 80affinity:podAntiAffinity:requiredDuringSchedulingIgnoredDuringExecution:- topologyKey: kubernetes.io/hostnamelabelSelector:matchExpressions:- key: appoperator: Invalues:- webapp
使用Pod反亲和的方式,让Pod3和Pod1不会部署在一起 。部署完毕后 , 查看结果,Pod3因为反亲和被调度到了k8s-worker-2节点 。
文章插图
(2) 反亲和的软亲和
反亲和的软亲和 和 硬亲和类似,只是多了权重 , 你可以自行尝试 。
六、总结本文主要快速讲解Kubernetes的亲和性和反亲和性调度 。读完本文你需要记住以下3点:
- 亲和性 和 反亲和性的调度,筛选的条件使用的是Node(Pod)的label字段 。
- 亲和性调度:就好像Node(Pod)和Pod是关系很好的闺蜜,Pod说,“只要符合这种label的Node(Pod)都是我的好闺蜜,闺蜜在哪儿我就去哪儿” 。
- 反亲和性调度:就好像2个Pod是赌气的2个孩子,互相对着干 , 一个往东,另一随便去哪个方向就是不往东,他们不会去到同一个地方 。
【十分钟搞懂K8S的亲和与反亲和调度】
推荐阅读
- 一文搞懂基于 OpenTelemetry 进行 Kubernetes 全链路观测
- 放弃亚马逊、谷歌,彻底告别K8s!
- 大白话说明白K8S的PV / PVC / StorageClass
- 惹网友爆笑!TVB知名男星商演唱歌疯狂走音,登台十分钟薪酬17万
- K8s 多集群实践思考和探索
- K8S 入门到实战--部署应用到 K8S
- 鸡蛋羹蒸了十分钟还是稀的 鸡蛋羹蒸了十分钟还是稀的怎么办
- 一文搞懂Redis架构演化之路
- 一文搞懂二叉搜索树、B树、B+树、AVL树、红黑树
- Prometheus on k8s 部署与实战操作进阶篇