精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

十分鐘搞懂K8S的親和與反親和調度

云計算 云原生
本文主要快速講解Kubernetes的親和性調度和反親和性調度,通過理論結合實際的方式,讓理解更深刻。

本文主要快速講解Kubernetes的親和性調度 和 反親和性調度,通過理論結合實際的方式,讓理解更深刻。

首先來個一句話總結:親和性調度就像關系親密的閨蜜,你去哪兒我也去哪兒。反親和性調度就像賭氣的兩個孩子,賭氣永遠不在一起玩兒。更多解釋和實戰詳見下文。花10分鐘看到最后,你肯定會有收獲。

一、調度Pod的主要方式

Pod調度到指定Node的方式主要有4種:

  • nodeName調度:直接在Pod的yaml編排文件中指定nodeName,調度到指定name的節點上。
  • nodeSelector調度:直接在Pod的yaml編排文件中指定nodeSelector,調度到帶有指定label的節點上。
  • 污點(Taints)和容忍度(Tolerations)調度:詳見文章《5分鐘搞懂K8S的污點和容忍度(理論+實戰)》。主要通過在Node節點上打污點,然后在Pod的yaml編排文件中配置容忍度,來實現調度。
  • 親和-反親和調度:見下文講解。

二、為什么需要親和調度

有了nodeName調度、nodeSelector調度、污點(Taints)和容忍度(Tolerations)調度,為什么還需要親和-反親和調度呢?

為了更靈活更復雜的調度方式。比如有些場景想把2個Pod 調度到一臺節點上,有的場景為了隔離性高可用性想把2個Pod分開到不同節點上,或者有的場景想把Pod調度到指定的一些特點節點上。

三、親和調度的前置概念(重要)

label在K8S中是非常重要的概念,不管是什么場景,只要和選擇、篩選相關的,基本是用label字段來匹配的。

親和性和反親和性的調度,篩選的條件依舊用的是Node的label字段。

不管是Node親和性調度,還是Pod親和性調度,被調度的主體都是Pod。都是講的Pod根據親和規則調度到某個節點,或者Pod跟隨別的Pod調到到某個節點(比如Pod1跟隨Pod2,Pod2被調度到B節點,那么Pod1也被調度到B節點)。

Node親和性調度 和  Pod親和性調度 的配置都是寫在 編排Pod的yaml里。因為被調度的主體是Pod。

Node親和性調度是指Pod和Node的親密關系。

Pod親和性調度是指Pod和Pod的親密關系。

  • 硬親和:親和規則只有一種,必須符合該規則。
  • 軟親和:規則有多種,每個權重不同,根據權重優先級去選擇一個規則。

Node親和性調度的圖示如下,Pod親和性調用和Pod反親和性調用也類似。

四、親和調度的具體概念

Affinity的中文意思是親近,用來表述親和性調度再合適不過了。

親和性調度:就好像Node(或者Pod)和Pod是關系很好的閨蜜,Pod說,“只要符合這種label的Node(Pod)都是我的好閨蜜,閨蜜在哪兒我就去哪兒”。

反親和性調度:就好像2個Pod是賭氣的2個孩子,互相對著干,一個往東,另一隨便去哪個方向就是不往東,他們不會去到同一個地方。

1.記住這三種調度關系

親和性調度 和 反親和性調度的關系就三種:

  • node親和調度:硬親和、軟親和
  • pod親和調度:硬親和、軟親和
  • pod反親和調度:硬親和、軟親和

2.記住這2種親和表達式

不管是Node親和 還是Pod親和,他們都有2種親和性表達方式:

  • RequiredDuringSchedulingIgnoredDuringExecution:是硬親和的方式,必須滿足指定的規則才可以把Pod調度到該Node上。這里注意Required這個詞,中文意思必須的。
  • PreferredDuringSchedulingIgnoredDuringExecution:是軟親和的方式,強調優先滿足某個規則,然后根據優先的規則,將Pod調度到節點上。這里注意Preferred這個詞,中文意思是首選,用來說明選擇規則的優先級,確實比較合適。

這兩個字段也比較長,我們來做下拆解,將RequiredDuringSchedulingIgnoredDuringExecution拆解為RequiredDuringScheduling和IgnoredDuringExecution。

  • RequiredDuringScheduling:定義的規則必須強制滿足(Required)才會把Pod調度到節點上。
  • IgnoredDuringExecution:已經在節點上運行的Pod不需要滿足定義的規則,即使去除節點上的某個標簽,那些需要節點包含該標簽的Pod依舊會在該節點上運行。或者這么理解:如果Pod所在的節點在Pod運行期間標簽被刪除了,不再符合該Pod的節點親和性規則,那也沒關系,該Pod 還能繼續在該節點上運行。

3.表達式中的操作符

親和性表達方式需要用到如下幾個可選的操作符operator:

  • In:標簽的值在某個列表中
  • NotIn:標簽的值不在某個列表中
  • Exists:存在某個標簽
  • DoesNotExist:不存在某個標簽
  • Gt:標簽的值大于某個值(字符串比較)
  • Lt:標簽的值小于某個值(字符串比較)

這些操作符里,雖然沒有排斥某個節點的功能,但是用這幾個標簽也可以變相的實現排斥的功能。

4.作用域topologyKey

topologyKey很多地方解釋為拓撲建,很是費解。實際上就是個作用域的概念。

topologyKey配置了一個label的key,那么存在這個key對應的label的所有Node就在同一個作用域里。

五、實戰

理論知識講解完畢,接下來通過實戰加深理解。你可以按照步驟操作實踐。

1.nodeName調度

比如要將Pod調度到nodeName是k8s-worker-2的節點上

apiVersion: v1
kind: Pod
metadata:
  name: webapp
  namespace: demo
  labels:
    app: webapp
spec:
  nodeName: 'k8s-worker-2'
  containers:
    - name: webapp
      image: nginx
      ports:
        - containerPort: 80

2.nodeSelector調度

比如要將Pod調度到具有"special-app"="specialwebapp"的label節點上。

查看節點信息:

kubectl describe node k8s-worker-2

Pod的yaml編排文件:

apiVersion: v1
kind: Pod
metadata:
  name: webapp
  namespace: demo
  labels:
    app: webapp
spec:
  nodeSelector:
    # 選擇調度到具有這個label的節點
    "special-app": "specialwebapp"
  containers:
    - name: webapp
      image: nginx
      ports:
        - containerPort: 80

查看Pod被調度到哪臺機器上:

kubectl get pod -n demo -o wide

3.Node親和調度

Node的親和調度是指,Node和Pod的關系。

(1) 硬親和

定義Pod-Node的硬親和yaml文件:pod_node_required_affinity.yaml。文件內容如下:

apiVersion: v1
kind: Pod
metadata:
  name: webapp
  namespace: demo
  labels:
    app: webapp
spec:
  containers:
    - name: webapp
      image: nginx
      ports:
        - containerPort: 80
  affinity:
    nodeAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
        nodeSelectorTerms:
          - matchExpressions:
              - key: app
                operator: In
                values:
                  - backend

給k8s-worker-3節點添加label:

kubectl label node k8s-worker-3 app=backend

查看k8s-worker-3節點的label情況:

kubectl get node k8s-worker-3 --show-labels

執行上面的yaml部署Pod,可以看到Pod已經被調度到k8s-worker-3節點上。

(2) 軟親和

軟親和調度,主要就是加入了多個規則,每個設置了權重,yaml文件如下:

apiVersion: v1
kind: Pod
metadata:
  name: webapp
  namespace: demo
  labels:
    app: webapp
spec:
  containers:
    - name: webapp
      image: nginx
      ports:
        - containerPort: 80
  affinity:
    nodeAffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
        - weight: 80
          preference:
            matchExpressions:
              - key: app2
                operator: Exists
        - weight: 20
          preference:
            matchExpressions:
              - key: app
                operator: In
                values:
                  - backend2

刪除之前的Pod,刪除之前的k8s-worker-3節點的label,再給k8s-worker-2節點的增加app2=backend的label。

kubectl delete pod webapp -n demo
kubectl label node k8s-worker-3 app-
kubectl label node k8s-worker-2 app2=backend

部署上面的軟親和yaml文件,可以看到Pod被調度到了k8s-worker-2節點。

4.Pod親和調度

Pod親和調度,是指Pod和Pod之間的關系。

(1) 硬親和

比如Pod1跟隨Pod2,Pod2被調度到B節點,那么Pod1也被調度到B節點。

所以這里準備2個Pod。Pod1使用上面的例子,讓Pod1采用Node硬親和調度到k8s-worker-3節點。然后再部署Pod2,讓它跟隨Pod1,也會被調度到k8s-worker-3節點。

準備Pod2的yaml編排文件pod_pod_required_affinity.yaml,如下:

apiVersion: v1
kind: Pod
metadata:
  name: webapp-1
  namespace: demo
  labels:
    app: webapp-1
spec:
  containers:
    - name: webapp
      image: nginx
      ports:
        - containerPort: 80
  affinity:
    podAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
        - topologyKey: kubernetes.io/hostname
          labelSelector:
            matchExpressions:
              - key: app
                operator: In
                values:
                  - webapp

可以看到Pod2跟隨Pod1,也被調度到了k8s-worker-3節點。

(2) 軟親和

軟親和和硬親和類似,只是多了權重,你可以自行嘗試。

5.Pod反親和調度

(1) 反親和的硬親和

接著上面的例子,繼續準備Pod3的yaml編排文件,如下:

apiVersion: v1
kind: Pod
metadata:
  name: webapp-2
  namespace: demo
  labels:
    app: webapp-2
spec:
  containers:
    - name: webapp
      image: nginx
      ports:
        - containerPort: 80
  affinity:
    podAntiAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
        - topologyKey: kubernetes.io/hostname
          labelSelector:
            matchExpressions:
              - key: app
                operator: In
                values:
                  - webapp

使用Pod反親和的方式,讓Pod3和Pod1不會部署在一起。部署完畢后,查看結果,Pod3因為反親和被調度到了k8s-worker-2節點。

(2) 反親和的軟親和

反親和的軟親和 和 硬親和類似,只是多了權重,你可以自行嘗試。

六、總結

本文主要快速講解Kubernetes的親和性和反親和性調度。讀完本文你需要記住以下3點:

  • 親和性 和 反親和性的調度,篩選的條件使用的是Node(Pod)的label字段。
  • 親和性調度:就好像Node(Pod)和Pod是關系很好的閨蜜,Pod說,“只要符合這種label的Node(Pod)都是我的好閨蜜,閨蜜在哪兒我就去哪兒”。
  • 反親和性調度:就好像2個Pod是賭氣的2個孩子,互相對著干,一個往東,另一隨便去哪個方向就是不往東,他們不會去到同一個地方。
責任編輯:趙寧寧 來源: 不焦躁的程序員
相關推薦

2023-09-27 22:33:40

KubernetesK8S

2019-09-16 09:14:51

2024-01-29 00:20:00

GolangGo代碼

2024-01-29 13:03:02

2020-12-17 06:48:21

SQLkafkaMySQL

2019-04-01 14:59:56

負載均衡服務器網絡

2020-12-11 09:40:10

DevOpsCICD

2021-03-03 11:36:57

Java 8Java 15Java

2021-09-07 09:40:20

Spark大數據引擎

2022-06-16 07:31:41

Web組件封裝HTML 標簽

2024-06-19 09:58:29

2023-04-12 11:18:51

甘特圖前端

2024-01-12 08:03:29

k8s配置持久化

2023-11-30 10:21:48

虛擬列表虛擬列表工具庫

2024-05-13 09:28:43

Flink SQL大數據

2015-09-06 09:22:24

框架搭建快速高效app

2012-07-10 01:22:32

PythonPython教程

2023-06-07 08:27:10

Docker容器

2023-11-09 14:44:27

Docker鏡像容器

2025-02-10 12:05:15

點贊
收藏

51CTO技術棧公眾號

亚洲国产成人av在线| 中文字幕av一区二区三区| 欧美肥婆姓交大片| 极品粉嫩小仙女高潮喷水久久| xx欧美视频| 自拍偷拍亚洲激情| 精品乱码一区| 国产精品无码久久久久成人app| 韩国在线视频一区| 中文字幕日韩专区| 色婷婷精品久久二区二区密| 黄色精品视频| 亚洲国产精品一区二区www在线 | 国产一区二区三区亚洲综合| 婷婷开心激情综合| 欧美日韩一级在线| 国产在线你懂得| 国产99久久久国产精品潘金网站| 国产成人精品最新| 久久久精品视频免费| 久久精品国产大片免费观看| 亚洲精品97久久| 日本网站在线看| 国产69久久精品成人| 国产chinesehd精品露脸| 在线观看网站免费入口在线观看国内 | 欧美日韩日本网| 国产白浆在线观看| 日韩经典一区二区| 98视频在线噜噜噜国产| 中文字幕电影av| 波多野结衣在线播放一区| 亚洲韩国青草视频| 天天综合网日韩| av日韩电影| 欧美日韩一区二区三区 | 99精品视频免费全部在线| 久久影院中文字幕| 精品日韩在线视频| 国产99精品一区| 亚洲国内精品视频| 国内精品免费视频| 日韩高清一区| 日韩一区二区在线观看视频| 日本人69视频| 未满十八勿进黄网站一区不卡| 日本高清视频一区二区| 欧美日韩亚洲第一| 黄色亚洲网站| 色菇凉天天综合网| 精品久久久久久久无码| www.久久.com| 欧日韩精品视频| 色婷婷狠狠18| 欧美成人三级| 69精品人人人人| 天天av天天操| 一本一道久久a久久| 日韩欧美国产1| 精人妻一区二区三区| 日韩亚洲精品在线观看| 欧美变态凌虐bdsm| 理论片大全免费理伦片| 欧美日韩另类图片| 亚洲第一网站免费视频| 精品人妻一区二区三区日产乱码卜| 好吊妞视频这里有精品| 亚洲精品98久久久久久中文字幕| 久久国产精品无码一级毛片| 国产成人精品一区二区免费看京| 国产一区二区三区中文 | 青梅竹马是消防员在线| 国产丝袜美腿一区二区三区| 亚洲精品中文字幕乱码三区不卡| 男人和女人做事情在线视频网站免费观看| 国产精品国产三级国产三级人妇| av动漫免费观看| gogo高清在线播放免费| 欧美视频不卡中文| 欧美美女一级片| 亚洲成人偷拍| 亚洲男人第一av网站| 在线观看免费黄色网址| 欧美亚韩一区| 国产精品久久久久久av| 国产美女www爽爽爽视频| 99久久久久久| 一区视频二区视频| a'aaa级片在线观看| 91国产免费观看| 亚洲人成色77777| 粉嫩av国产一区二区三区| 精品国产电影一区二区| 亚洲国产日韩一区无码精品久久久| 久久国产小视频| 久久人人爽人人| 99re热视频| 丰满亚洲少妇av| 欧美日韩在线精品| 色婷婷在线播放| 色婷婷av一区二区三区gif| 三级性生活视频| 杨幂一区二区三区免费看视频| 少妇高潮久久77777| 蜜臀久久精品久久久用户群体| 一本色道88久久加勒比精品| 成人av番号网| 国产在线一二三| 亚洲成人第一页| 免费成人黄色大片| 欧美久久综合网| 久久人人97超碰精品888| 91av国产精品| 国产亚洲一二三区| 黄色一级视频片| 日韩一级淫片| 久热在线中文字幕色999舞| 欧美一区二区三区不卡视频| 成人午夜又粗又硬又大| 一区二区免费电影| 欧美精品总汇| 亚洲国产高清福利视频| 国产一二三四区| 久久激五月天综合精品| 日韩精品一区二区三区外面| 毛片在线网站| 精品免费国产二区三区| 亚洲天堂网av在线| 免费观看日韩电影| 日本成人三级电影网站| 秋霞伦理一区| 亚洲国产成人爱av在线播放| 久久久久久久久久91| 国产一区二区三区精品欧美日韩一区二区三区| 欧美一区二区福利| 欧美成人精品一区二区男人小说| 亚洲国产第一页| 日韩欧美激情视频| 成人av网站免费观看| 黄色一级片国产| 高清在线一区二区| 久久视频中文字幕| 国产三级三级在线观看| 综合久久久久久| 91香蕉国产线在线观看| 性xxxx欧美老肥妇牲乱| 91亚洲va在线va天堂va国 | 亚洲伊人春色| 日产精品久久久一区二区福利 | 色视频www在线播放国产成人| 亚洲视屏在线观看| 国产精品私房写真福利视频| 三上悠亚av一区二区三区| 日本一本不卡| 在线观看一区不卡| 少妇搡bbbb搡bbb搡打电话| 自产国语精品视频| 97超碰最新| 欧美一卡二卡| 亚洲福利在线视频| 一级黄色免费网站| 国产亚洲人成网站| 污视频网址在线观看| 亚洲澳门在线| 成人欧美一区二区三区在线观看 | 伊人婷婷欧美激情| 久久久久久久久久久久国产精品| 黄色亚洲免费| 久久综合久久久| 99riav视频一区二区| 久久久av电影| 殴美一级特黄aaaaaa| 日韩欧美第一页| 青青操在线播放| 国产成人在线观看| av动漫在线观看| 99久久亚洲精品| 国产精品久久7| 小黄鸭精品aⅴ导航网站入口| 中文字幕av一区| 亚洲成人一级片| 色婷婷国产精品综合在线观看| 波多野结衣欲乱| 成人午夜免费电影| wwww.国产| 国产精品黄色| 性欧美大战久久久久久久免费观看| 97成人免费视频| 四虎5151久久欧美毛片| 孩xxxx性bbbb欧美| 最新av网站在线观看| 精品国产伦理网| 成人一二三四区| 一区二区在线观看视频在线观看| 国产又粗又长又爽| 免费成人美女在线观看.| 女人被男人躁得好爽免费视频| 欧美精品中文字幕亚洲专区| 成人av在线网址| 人人草在线视频| 久久天天躁狠狠躁夜夜av| 日av在线播放| 欧美mv日韩mv国产网站app| 波多野结衣家庭主妇| 一区二区激情视频| 在线观看亚洲大片短视频| 成人av电影免费在线播放| 日日噜噜夜夜狠狠| 亚洲精选91| www.激情网| 成人激情免费视频| 精品一区二区三区日本| 精品一区二区三区中文字幕视频 | av不卡免费电影| 色91精品久久久久久久久| 亚洲欧美清纯在线制服| 免费观看亚洲视频| 99成人超碰| 视频一区视频二区视频三区视频四区国产 | 免费毛片一区二区三区久久久| 精品国产乱码一区二区三区| 国产精品www色诱视频| 国产精品电影| 欧美激情18p| 在线观看h网| 久久精品电影网站| 成年人免费在线视频| 亚洲美女性视频| 少妇荡乳情欲办公室456视频| 91精品免费在线| 中文字幕免费高清在线观看| 日韩欧美亚洲成人| 免费看日韩毛片| 亚洲国产精品久久久久婷婷884| 亚洲精品卡一卡二| 国产精品久久精品日日| 亚洲福利视频二区| 黑人精品无码一区二区三区AV| 亚洲一二三四区| 午夜69成人做爰视频| 自拍偷拍欧美精品| 四虎永久免费地址| 中文字幕亚洲在| 亚洲女人毛茸茸高潮| 国产精品色婷婷久久58| 能直接看的av| 国产精品久久久久天堂| 日韩一区二区三区四区视频| 国产欧美一区二区精品忘忧草| xxxx日本免费| 国产欧美一区二区精品性| 少妇视频在线播放| 中文字幕在线不卡一区二区三区| 永久免费未视频| 亚洲另类在线视频| 久久综合久久鬼| 精品久久久久久久久久久| 91精品国产综合久久久蜜臀九色| 欧美性猛交xxxx久久久| 亚洲欧美一二三区| 欧美日韩精品久久久| 国产精品亚洲欧美在线播放| 日韩欧美国产三级电影视频| 欧美一级特黄aaaaaa| 精品性高朝久久久久久久| 美女毛片在线看| 日韩一区二区三区在线播放| 菠萝蜜视频国产在线播放| 欧美极品少妇xxxxⅹ裸体艺术 | 国产成人免费91av在线| 91成人在线| 5g影院天天爽成人免费下载| 国产人妖ts一区二区| 蜜桃导航-精品导航| 欧美精品尤物在线观看| 99re6这里有精品热视频| 日韩亚洲国产欧美| 亚洲乱码国产一区三区| 国产在线视频一区二区| av黄色一级片| 中文字幕乱码日本亚洲一区二区| 午夜少妇久久久久久久久| 天天综合日日夜夜精品| 亚洲国产无线乱码在线观看| 日韩一区二区电影在线| 黄色在线播放| 欧美高清视频免费观看| 免费成人动漫| av资源一区二区| 欧美一区三区| 东北少妇不带套对白| 日本成人在线不卡视频| 无码人妻久久一区二区三区蜜桃| 久久久久国产精品免费免费搜索 | 麻豆一区二区三| 国产精品国色综合久久| 国产麻豆精品久久| 欧美美女黄色网| 日韩国产精品久久久| 绯色av蜜臀vs少妇| 欧美国产日产图区| 久草国产精品视频| 91精品国产综合久久精品麻豆| 四虎影视2018在线播放alocalhost| 深夜福利日韩在线看| 色黄视频在线观看| 亚洲伊人一本大道中文字幕| 国产成人精品999在线观看| 最新av网址在线观看| 日韩av网站免费在线| 人妻无码中文久久久久专区| 亚洲精品写真福利| 伊人网av在线| 亚洲日本欧美中文幕| 国内老司机av在线| 成人性教育视频在线观看| 精品一区二区三区中文字幕老牛| 日本一道本久久| 国产福利一区二区三区视频 | 国产欧美亚洲视频| 国产一区不卡| 国模吧无码一区二区三区| 成人午夜大片免费观看| 亚洲 欧美 国产 另类| 一本色道久久综合狠狠躁的推荐| 好吊色在线观看| 欧美成人午夜激情| 经典三级久久| 18视频在线观看娇喘| 免费人成黄页网站在线一区二区| 天天躁日日躁aaaxxⅹ| 欧美日韩国产影院| 少妇精品高潮欲妇又嫩中文字幕| 欧美黄色www| 欧洲大片精品免费永久看nba| 91社在线播放| 国产米奇在线777精品观看| fc2ppv在线播放| 91精品国产欧美一区二区| 欧美性videos| 成人国产精品av| 91精品综合久久久久久久久久久 | 亚洲一区二区激情| 在线国产精品播放| 国产伊人久久| 亚洲一一在线| 国产一区二区三区观看| 91麻豆免费视频网站| 5月丁香婷婷综合| jizzjizz亚洲| 国产99在线免费| 亚洲三级观看| 亚洲第一黄色网址| 欧美日韩在线视频首页| 美丽的姑娘在线观看免费动漫| 日韩美女在线播放| 实拍女处破www免费看| 欧美激情一区二区三区蜜桃视频 | 欧美日韩色视频| 91精品婷婷国产综合久久| 三级福利片在线观看| 国产精品免费在线| 性欧美videos另类喷潮| 日韩视频在线观看免费视频| 欧美久久久久中文字幕| 五月天激情在线| 久久久免费看| 日本麻豆一区二区三区视频| 992在线观看| 日韩欧美中文字幕一区| 女厕盗摄一区二区三区| 日韩高清国产精品| 激情欧美日韩一区二区| 国产在线视频二区| 国产亚洲欧美另类中文| 国产精品一区免费在线| 成年人网站免费视频| 国产午夜三级一区二区三| 国产乱码精品一区二三区蜜臂 | 免费污视频在线一区| 久久99国产精品一区| eeuss影院一区二区三区| 日韩黄色一级视频| 欧美巨乳在线观看| 一本久久青青| 91性高潮久久久久久久| 精品久久久久久国产| 黄视频在线观看网站| 久久天天狠狠| 韩国av一区二区三区四区| 精品在线播放视频| 久久久999精品视频| 欧美极品中文字幕| 日本亚洲一区二区三区| 日韩欧美在线第一页| 在线网址91| 日韩偷拍一区二区| 成人91在线观看| 国产乱子伦精品无码码专区| 欧美在线精品免播放器视频|