website/content/ja/docs/tasks/configure-pod-container/assign-pods-nodes.md

3.5 KiB
Raw Blame History

title content_type weight
Podをードに割り当てる task 150

このページでは、KubernetesのPodをKubernetesクラスター上の特定のードに割り当てる方法を説明します。

{{% heading "prerequisites" %}}

{{< include "task-tutorial-prereqs.md" >}} {{< version-check >}}

ラベルをノードに追加する

  1. クラスター内の{{< glossary_tooltip term_id="node" text="ノード" >}}のリストをラベル付きで表示します。

    kubectl get nodes --show-labels
    

    出力は次のようになります。

    NAME      STATUS    ROLES    AGE     VERSION        LABELS
    worker0   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker0
    worker1   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker1
    worker2   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker2
    
  2. ードの1つを選択して、ラベルを追加します。

    kubectl label nodes <your-node-name> disktype=ssd
    

    ここで、<your-node-name>は選択したノードの名前です。

  3. 選択したノードにdisktype=ssdラベルがあることを確認します。

    kubectl get nodes --show-labels
    

    出力は次のようになります。

    NAME      STATUS    ROLES    AGE     VERSION        LABELS
    worker0   Ready     <none>   1d      v1.13.0        ...,disktype=ssd,kubernetes.io/hostname=worker0
    worker1   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker1
    worker2   Ready     <none>   1d      v1.13.0        ...,kubernetes.io/hostname=worker2
    

    上の出力を見ると、worker0disktype=ssdというラベルがあることがわかります。

選択したードにスケジューリングされるPodを作成する

以下のPodの構成ファイルには、nodeSelectorにdisktype: ssdを持つPodが書かれています。これにより、Podはdisktype: ssdというラベルを持っているノードにスケジューリングされるようになります。

{{% codenew file="pods/pod-nginx.yaml" %}}

  1. 構成ファイルを使用して、選択したードにスケジューリングされるPodを作成します。

    kubectl apply -f https://k8s.io/examples/pods/pod-nginx.yaml
    
  2. Podが選択したード上で実行されているをことを確認します。

    kubectl get pods --output=wide
    

    出力は次のようになります。

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

特定のードにスケジューリングされるPodを作成する

nodeNameという設定を使用して、Podを特定のードにスケジューリングすることもできます。

{{% codenew file="pods/pod-nginx-specific-node.yaml" %}}

構成ファイルを使用して、foo-nodeにだけスケジューリングされるPodを作成します。

{{% heading "whatsnext" %}}