Translate tasks/configure-pod-container/assign-pods-nodes-using-node-affinity into Japanese.

This commit is contained in:
TAKAHASHI Shuuji
2020-08-16 03:08:17 +09:00
parent 39d1db81e1
commit 006a5825e9
@@ -1,13 +1,12 @@
--- ---
title: Assign Pods to Nodes using Node Affinity title: Node Affinityを利用してPodをノードに割り当てる
min-kubernetes-server-version: v1.10 min-kubernetes-server-version: v1.10
content_type: task content_type: task
weight: 120 weight: 120
--- ---
<!-- overview --> <!-- overview -->
This page shows how to assign a Kubernetes Pod to a particular node using Node Affinity in a このページでは、Node Affinityを利用して、PodをKubernetesクラスター内の特定のノードに割り当てる方法を説明します。
Kubernetes cluster.
## {{% heading "prerequisites" %}} ## {{% heading "prerequisites" %}}
@@ -19,14 +18,15 @@ Kubernetes cluster.
<!-- steps --> <!-- steps -->
## Add a label to a node ## ノードにラベルを追加する
1. List the nodes in your cluster, along with their labels: 1. クラスター内のノードを一覧表示して、ラベルを確認します。
```shell ```shell
kubectl get nodes --show-labels kubectl get nodes --show-labels
``` ```
The output is similar to this:
出力は次のようになります。
```shell ```shell
NAME STATUS ROLES AGE VERSION LABELS NAME STATUS ROLES AGE VERSION LABELS
@@ -34,20 +34,21 @@ Kubernetes cluster.
worker1 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker1 worker1 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker1
worker2 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker2 worker2 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker2
``` ```
1. Chose one of your nodes, and add a label to it: 1. ノードを選択して、ラベルを追加します。
```shell ```shell
kubectl label nodes <your-node-name> disktype=ssd kubectl label nodes <your-node-name> disktype=ssd
``` ```
where `<your-node-name>` is the name of your chosen node.
1. Verify that your chosen node has a `disktype=ssd` label: ここで、`<your-node-name>`は選択したノードの名前で置換します。
1. 選択したノードに`disktype=ssd`ラベルがあることを確認します。
```shell ```shell
kubectl get nodes --show-labels kubectl get nodes --show-labels
``` ```
The output is similar to this: 出力は次のようになります。
``` ```
NAME STATUS ROLES AGE VERSION LABELS NAME STATUS ROLES AGE VERSION LABELS
@@ -56,67 +57,59 @@ Kubernetes cluster.
worker2 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker2 worker2 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker2
``` ```
In the preceding output, you can see that the `worker0` node has a この出力を見ると、`worker0`ノードに`disktype=ssd`というラベルが追加されたことがわかります。
`disktype=ssd` label.
## Schedule a Pod using required node affinity ## required node affinityを使用してPodをスケジューリングする
This manifest describes a Pod that has a `requiredDuringSchedulingIgnoredDuringExecution` node affinity,`disktype: ssd`. 以下に示すマニフェストには、`requiredDuringSchedulingIgnoredDuringExecution`に`disktype: ssd`というnode affinityを使用したPodが書かれています。このように書くと、Podは`disktype=ssd`というラベルを持つノードにだけスケジューリングされるようになります。
This means that the pod will get scheduled only on a node that has a `disktype=ssd` label.
{{< codenew file="pods/pod-nginx-required-affinity.yaml" >}} {{< codenew file="pods/pod-nginx-required-affinity.yaml" >}}
1. Apply the manifest to create a Pod that is scheduled onto your 1. マニフェストを適用して、選択したノード上にスケジューリングされるPodを作成します。
chosen node:
```shell ```shell
kubectl apply -f https://k8s.io/examples/pods/pod-nginx-required-affinity.yaml kubectl apply -f https://k8s.io/examples/pods/pod-nginx-required-affinity.yaml
``` ```
1. Verify that the pod is running on your chosen node: 1. Podが選択したノード上で実行されていることを確認します。
```shell ```shell
kubectl get pods --output=wide kubectl get pods --output=wide
``` ```
The output is similar to this: 出力は次のようになります。
``` ```
NAME READY STATUS RESTARTS AGE IP NODE NAME READY STATUS RESTARTS AGE IP NODE
nginx 1/1 Running 0 13s 10.200.0.4 worker0 nginx 1/1 Running 0 13s 10.200.0.4 worker0
``` ```
## Schedule a Pod using preferred node affinity ## preferred node affinityを使用してPodをスケジューリングする
This manifest describes a Pod that has a `preferredDuringSchedulingIgnoredDuringExecution` node affinity,`disktype: ssd`. 以下に示すマニフェストには、`preferredDuringSchedulingIgnoredDuringExecution`に`disktype: ssd`というnode affinityを使用したPodが書かれています。このように書くと、Podは`disktype=ssd`というラベルを持つノードに優先的にスケジューリングされるようになります。
This means that the pod will prefer a node that has a `disktype=ssd` label.
{{< codenew file="pods/pod-nginx-preferred-affinity.yaml" >}} {{< codenew file="pods/pod-nginx-preferred-affinity.yaml" >}}
1. Apply the manifest to create a Pod that is scheduled onto your 1. マニフェストを適用して、選択したノード上にスケジューリングされるPodを作成します。
chosen node:
```shell ```shell
kubectl apply -f https://k8s.io/examples/pods/pod-nginx-preferred-affinity.yaml kubectl apply -f https://k8s.io/examples/pods/pod-nginx-preferred-affinity.yaml
``` ```
1. Verify that the pod is running on your chosen node: 1. Podが選択したノード上で実行されていることを確認します。
```shell ```shell
kubectl get pods --output=wide kubectl get pods --output=wide
``` ```
The output is similar to this: 出力は次のようになります。
``` ```
NAME READY STATUS RESTARTS AGE IP NODE NAME READY STATUS RESTARTS AGE IP NODE
nginx 1/1 Running 0 13s 10.200.0.4 worker0 nginx 1/1 Running 0 13s 10.200.0.4 worker0
``` ```
## {{% heading "whatsnext" %}} ## {{% heading "whatsnext" %}}
Learn more about [Node Affinity](/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity)についてさらに学ぶ。
[Node Affinity](/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity).