欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

k8s設(shè)置非強(qiáng)一致反親和性示例

 更新時(shí)間:2023年10月29日 11:27:50   作者:ponponon  
這篇文章主要為大家介紹了k8s設(shè)置非強(qiáng)一致反親和性示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

Q:如何設(shè)置反親和性

盡可能讓 pod 部署在不同的 node 上,如果需要部署的pod數(shù)大于節(jié)點(diǎn)數(shù),也可以在一個(gè)節(jié)點(diǎn)上部署多個(gè) pod,如何設(shè)置?

A:要設(shè)置反親和性(PodAntiAffinity),以盡可能讓Pod部署在不同的節(jié)點(diǎn)上,但允許多個(gè)Pod在一個(gè)節(jié)點(diǎn)上部署,您可以使用適當(dāng)?shù)腜odAntiAffinity規(guī)則。這通常涉及到使用適當(dāng)?shù)臉?biāo)簽和拓?fù)溆颉?/p>

以下是如何設(shè)置這樣的反親和性規(guī)則的一般步驟:

  • 為節(jié)點(diǎn)添加標(biāo)簽:首先,您需要為集群中的節(jié)點(diǎn)添加適當(dāng)?shù)臉?biāo)簽,以便您可以在反親和性規(guī)則中使用它們。例如,您可以為節(jié)點(diǎn)添加一個(gè)標(biāo)簽,如rackzone,以表示節(jié)點(diǎn)所在的機(jī)架或區(qū)域。
  • 創(chuàng)建PodAntiAffinity規(guī)則:在您的Pod定義中,您可以使用affinity字段來(lái)定義反親和性規(guī)則。以下是一個(gè)示例:
apiVersion: v1
kind: Pod
metadata:
  name: my-pod
spec:
  affinity:
    podAntiAffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
      - weight: 100  # 設(shè)置優(yōu)先級(jí)
        podAffinityTerm:
          labelSelector:
            matchExpressions:
            - key: "app"
              operator: In
              values:
              - my-app
          topologyKey: "kubernetes.io/hostname"  # 使用節(jié)點(diǎn)的主機(jī)名標(biāo)簽,或者您設(shè)置的標(biāo)簽

上述示例中,我們創(chuàng)建了一個(gè)PodAntiAffinity規(guī)則,該規(guī)則使用preferredDuringSchedulingIgnoredDuringExecution字段,這表示這是一個(gè)"優(yōu)先級(jí)規(guī)則",而不是絕對(duì)必需的規(guī)則。該規(guī)則要求不同Pod的my-app標(biāo)簽值必須匹配,但它們不能調(diào)度到相同的節(jié)點(diǎn)上,使用節(jié)點(diǎn)的主機(jī)名標(biāo)簽(kubernetes.io/hostname)作為拓?fù)溆蜴I來(lái)實(shí)現(xiàn)這一點(diǎn)。

部署Pod

當(dāng)您部署多個(gè)Pod時(shí),Kubernetes調(diào)度器將根據(jù)反親和性規(guī)則盡力確保它們不會(huì)在相同的節(jié)點(diǎn)上調(diào)度。如果有足夠的節(jié)點(diǎn)可用,它們可以分布在不同的節(jié)點(diǎn)上,以滿足反親和性規(guī)則。如果節(jié)點(diǎn)數(shù)量少于Pod數(shù)量,一些Pod可能需要共享節(jié)點(diǎn),但反親和性規(guī)則會(huì)盡力確保它們分布在盡可能多的不同節(jié)點(diǎn)上。

請(qǐng)注意,設(shè)置preferredDuringSchedulingIgnoredDuringExecution而不是requiredDuringSchedulingIgnoredDuringExecution允許一些Pod仍然可以共享節(jié)點(diǎn),如果沒(méi)有足夠的節(jié)點(diǎn)可供選擇。這可以幫助在節(jié)點(diǎn)資源有限的情況下仍然盡量滿足反親和性規(guī)則。

確保您的集群中有足夠的節(jié)點(diǎn)來(lái)容納您的Pod,以便反親和性規(guī)則可以正常工作。如果節(jié)點(diǎn)資源不足,Pod可能會(huì)被迫在同一節(jié)點(diǎn)上調(diào)度,這可能會(huì)違反反親和性規(guī)則。

Q:幫我修改

affinity:
  podAntiAffinity:
    requiredDuringSchedulingIgnoredDuringExecution: #設(shè)置調(diào)度策略。
      - labelSelector:
          matchExpressions:
            - key: app
              operator: In
              values:
                - imdb-match-api
        topologyKey: kubernetes.io/hostname

A: 您提供的配置是使用requiredDuringSchedulingIgnoredDuringExecution,這表示Pod之間的反親和性是強(qiáng)制的,而且如果違反規(guī)則,Pod將不會(huì)被調(diào)度。

如果您希望Pod之間的反親和性是強(qiáng)制的,但仍然允許多個(gè)Pod在一個(gè)節(jié)點(diǎn)上部署,您可以使用preferredDuringSchedulingIgnoredDuringExecution,這樣如果沒(méi)有足夠的節(jié)點(diǎn)來(lái)滿足規(guī)則,Pod仍然可以共享節(jié)點(diǎn)。

修改版本

以下是您的配置的修改版本:

apiVersion: v1
kind: Pod
metadata:
  name: my-pod
spec:
  affinity:
    podAntiAffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
      - weight: 100  # 設(shè)置優(yōu)先級(jí)
        podAffinityTerm:
          labelSelector:
            matchExpressions:
            - key: app
              operator: In
              values:
              - imdb-match-api
          topologyKey: kubernetes.io/hostname

這將創(chuàng)建一個(gè)"優(yōu)先級(jí)規(guī)則",它要求不同Pod的imdb-match-api標(biāo)簽值必須匹配,但它們不能調(diào)度到相同的節(jié)點(diǎn)上。如果沒(méi)有足夠的節(jié)點(diǎn)來(lái)滿足這一規(guī)則,Pod仍然可以共享節(jié)點(diǎn),但反親和性規(guī)則將盡力確保它們分布在盡可能多的不同節(jié)點(diǎn)上。

以上就是k8s設(shè)置非強(qiáng)一致反親和性示例的詳細(xì)內(nèi)容,更多關(guān)于k8s設(shè)置非強(qiáng)一致反親和性的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • kubeadm?搭建?K8s的詳細(xì)過(guò)程

    kubeadm?搭建?K8s的詳細(xì)過(guò)程

    這篇文章主要介紹了kubeadm?搭建?K8s詳細(xì)過(guò)程,環(huán)境使用?VirtualBox?構(gòu)建的3臺(tái)虛擬機(jī),虛擬機(jī)網(wǎng)絡(luò)配置的相關(guān)步驟給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • K8s準(zhǔn)入控制Admission?Controller深入介紹

    K8s準(zhǔn)入控制Admission?Controller深入介紹

    本篇我們將聚焦于?kube-apiserver?請(qǐng)求處理過(guò)程中一個(gè)很重要的部分?--?準(zhǔn)入控制器(Admission?Controller)深入講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2022-04-04
  • k8s?Service?實(shí)現(xiàn)服務(wù)發(fā)現(xiàn)和負(fù)載均衡

    k8s?Service?實(shí)現(xiàn)服務(wù)發(fā)現(xiàn)和負(fù)載均衡

    這篇文章主要為大家介紹了k8s?Service?實(shí)現(xiàn)服務(wù)發(fā)現(xiàn)和負(fù)載均衡的工作原理及使用方式詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • kubelet為cadvisor添加namespace/pod/container標(biāo)簽示例詳解

    kubelet為cadvisor添加namespace/pod/container標(biāo)簽示例詳解

    這篇文章主要為大家介紹了kubelet為cadvisor添加namespace/pod/container標(biāo)簽示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • k8s中kubeconfig的配置以及使用詳解

    k8s中kubeconfig的配置以及使用詳解

    每當(dāng)與集群交互的時(shí)候少不了的是身份認(rèn)證,使用kubeconfig(即證書(shū))和token兩種認(rèn)證方式是最簡(jiǎn)單也最通用的認(rèn)證方式,下面這篇文章主要給大家介紹了關(guān)于k8s中kubeconfig的配置以及使用的相關(guān)資料,需要的朋友可以參考下
    2022-01-01
  • 一文解析Kubernetes使用PVC后數(shù)據(jù)丟失

    一文解析Kubernetes使用PVC后數(shù)據(jù)丟失

    這篇文章主要為大家介紹了Kubernetes使用PVC后數(shù)據(jù)丟失原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • Kubernetes實(shí)現(xiàn)CI與CD配置教程

    Kubernetes實(shí)現(xiàn)CI與CD配置教程

    這篇文章主要為大家介紹了基于Kubernetes實(shí)現(xiàn)CI與CD配置教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • Spark實(shí)現(xiàn)K-Means算法代碼示例

    Spark實(shí)現(xiàn)K-Means算法代碼示例

    這篇文章主要介紹了Spark實(shí)現(xiàn)K-Means算法代碼示例,簡(jiǎn)單介紹了K-Means算法及其原理,然后通過(guò)具體實(shí)例向大家展示了用spark實(shí)現(xiàn)K-Means算法,需要的朋友可以參考下。
    2017-10-10
  • 詳解K8S apiVersion對(duì)照表

    詳解K8S apiVersion對(duì)照表

    k8s更新迭代比較快,apiVersion也在不斷變化中,每個(gè)版本的對(duì)應(yīng)的apiVersion略有不同,這篇文章主要介紹了K8S apiVersion對(duì)照表,需要的朋友可以參考下
    2022-07-07
  • k8s安裝CICD?devtron過(guò)程詳解

    k8s安裝CICD?devtron過(guò)程詳解

    這篇文章主要為大家介紹了k8s安裝CICD?devtron過(guò)程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11

最新評(píng)論