Kubernetes 將Pod分配給節(jié)點(diǎn)

2022-06-10 11:53 更新

將 Pod 分配給節(jié)點(diǎn)

此頁面顯示如何將 Kubernetes Pod 分配給 Kubernetes 集群中的特定節(jié)點(diǎn)。

在開始之前

你必須擁有一個(gè) Kubernetes 的集群,同時(shí)你的 Kubernetes 集群必須帶有 kubectl 命令行工具。 建議在至少有兩個(gè)節(jié)點(diǎn)的集群上運(yùn)行本教程,且這些節(jié)點(diǎn)不作為控制平面主機(jī)。 如果你還沒有集群,你可以通過 Minikube 構(gòu)建一個(gè)你自己的集群,或者你可以使用下面任意一個(gè) Kubernetes 工具構(gòu)建:

要檢查版本,請(qǐng)輸入 ?kubectl version?。

給節(jié)點(diǎn)添加標(biāo)簽

  1. 列出集群中的節(jié)點(diǎn)
  2. kubectl get nodes
    

    輸出類似如下:

    NAME      STATUS    AGE     VERSION
    worker0   Ready     1d      v1.6.0+fff5156
    worker1   Ready     1d      v1.6.0+fff5156
    worker2   Ready     1d      v1.6.0+fff5156
  3. 選擇其中一個(gè)節(jié)點(diǎn),為它添加標(biāo)簽:
  4. kubectl label nodes <your-node-name> disktype=ssd
    

    ?<your-node-name>? 是你選擇的節(jié)點(diǎn)的名稱。

  5. 驗(yàn)證你選擇的節(jié)點(diǎn)是否有 ?disktype=ssd? 標(biāo)簽:
  6. kubectl get nodes --show-labels
    

    輸出類似如下:

    NAME      STATUS    AGE     VERSION            LABELS
    worker0   Ready     1d      v1.6.0+fff5156     ...,disktype=ssd,kubernetes.io/hostname=worker0
    worker1   Ready     1d      v1.6.0+fff5156     ...,kubernetes.io/hostname=worker1
    worker2   Ready     1d      v1.6.0+fff5156     ...,kubernetes.io/hostname=worker2

    在前面的輸出中,你可以看到 ?worker0 ?節(jié)點(diǎn)有 ?disktype=ssd? 標(biāo)簽。

創(chuàng)建一個(gè)調(diào)度到你選擇的節(jié)點(diǎn)的 pod 

此 Pod 配置文件描述了一個(gè)擁有節(jié)點(diǎn)選擇器 ?disktype: ssd? 的 Pod。這表明該 Pod 將被調(diào)度到 有 ?disktype=ssd? 標(biāo)簽的節(jié)點(diǎn)。

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    env: test
spec:
  containers:
  - name: nginx
    image: nginx
    imagePullPolicy: IfNotPresent
  nodeSelector:
    disktype: ssd
  1. 使用該配置文件去創(chuàng)建一個(gè) pod,該 pod 將被調(diào)度到你選擇的節(jié)點(diǎn)上:
  2. kubectl create -f https://k8s.io/examples/pods/pod-nginx.yaml
    
  3. 驗(yàn)證 pod 是不是運(yùn)行在你選擇的節(jié)點(diǎn)上:
  4. kubectl get pods --output=wide
    

    輸出類似如下:

    NAME     READY     STATUS    RESTARTS   AGE    IP           NODE
    nginx    1/1       Running   0          13s    10.200.0.4   worker0


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)