Skip to content

Commit

Permalink
Translate tasks/configure-pod-container/quality-service-pod/ into Jap…
Browse files Browse the repository at this point in the history
…anese (#16173)

* copy from content/en/docs/tasks/configure-pod-container/quality-service-pod.md to Ja

* Translate tasks/configure-pod-container/quality-service-pod/ into Japanese

Guaranteed, Burstable, BestEffortは用語として存在するので訳さない

Signed-off-by: Takuma Hashimoto <[email protected]>

* Update content/ja/docs/tasks/configure-pod-container/quality-service-pod.md

Co-Authored-By: Naoki Oketani <[email protected]>

* Update content/ja/docs/tasks/configure-pod-container/quality-service-pod.md

Co-Authored-By: Naoki Oketani <[email protected]>

* Update content/ja/docs/tasks/configure-pod-container/quality-service-pod.md

Co-Authored-By: Naoki Oketani <[email protected]>

* Update content/ja/docs/tasks/configure-pod-container/quality-service-pod.md

Co-Authored-By: Naoki Oketani <[email protected]>

Co-authored-by: Naoki Oketani <[email protected]>
  • Loading branch information
2 people authored and k8s-ci-robot committed Jan 8, 2020
1 parent bc97607 commit a5acc50
Showing 1 changed file with 256 additions and 0 deletions.
256 changes: 256 additions & 0 deletions content/ja/docs/tasks/configure-pod-container/quality-service-pod.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,256 @@
---
title: PodにQuality of Serviceを設定する
content_template: templates/task
weight: 30
---


{{% capture overview %}}

このページでは、特定のQuality of Service (QoS)クラスをPodに割り当てるための設定方法を示します。Kubernetesは、Podのスケジューリングおよび退役を決定するためにQoSクラスを用います。

{{% /capture %}}


{{% capture prerequisites %}}

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

{{% /capture %}}


{{% capture steps %}}

## QoSクラス

KubernetesはPodの作成時に次のいずれかのQoSクラスをPodに割り当てます:

* Guaranteed
* Burstable
* BestEffort

## namespaceの作成

この演習で作成するリソースがクラスター内で分離されるよう、namespaceを作成します。


```shell
kubectl create namespace qos-example
```

## GuaranteedのQoSクラスを割り当てたPodを作成する

PodにGuaranteedのQoSクラスを与えるには、以下が必要になります:

* Pod内のすべてのコンテナにメモリーの制限と要求が与えられており、同じ値であること。
* Pod内のすべてのコンテナにCPUの制限と要求が与えられており、同じ値であること。

以下に1つのコンテナをもつPodの設定ファイルを示します。コンテナには200MiBのメモリー制限とリクエストを与え、700ミリCPUの制限と要求を与えます。

{{< codenew file="pods/qos/qos-pod.yaml" >}}

Podを作成してください:

```shell
kubectl apply -f https://k8s.io/examples/pods/qos/qos-pod.yaml --namespace=qos-example
```

Podの詳細な情報を確認してください:

```shell
kubectl get pod qos-demo --namespace=qos-example --output=yaml
```

この出力では、KubernetesがPodにGuaranteed QoSクラスを与えたことを示しています。Podのコンテナにメモリー制限と一致するメモリー要求があり、CPU制限と一致するCPU要求があることも確認できます。

```yaml
spec:
containers:
...
resources:
limits:
cpu: 700m
memory: 200Mi
requests:
cpu: 700m
memory: 200Mi
...
qosClass: Guaranteed
```
{{< note >}}
コンテナにメモリー制限を指定し、メモリー要求を指定していない場合は、Kubernetesは自動的にメモリー制限と一致するメモリー要求を割り当てます。同様に、コンテナにCPU制限を指定し、CPU要求を指定していない場合は、Kubernetesは自動的にCPU制限と一致するCPU要求を割り当てます。
{{< /note >}}
Podを削除してください:
```shell
kubectl delete pod qos-demo --namespace=qos-example
```

## BurstableのQoSクラスを割り当てたPodを作成する

次のような場合に、Burstable QoSクラスがPodに与えられます:

* PodがGuaranteed QoSクラスの基準に満たない場合。
* Pod内の1つ以上のコンテナがメモリーまたはCPUの要求を与えられている場合。

以下に1つのコンテナをもつPodの設定ファイルを示します。コンテナには200MiBのメモリー制限と100MiBのメモリー要求を与えます。

{{< codenew file="pods/qos/qos-pod-2.yaml" >}}

Podを作成してください:

```shell
kubectl apply -f https://k8s.io/examples/pods/qos/qos-pod-2.yaml --namespace=qos-example
```

Podの詳細な情報を確認してください:

```shell
kubectl get pod qos-demo-2 --namespace=qos-example --output=yaml
```

この出力では、KubernetesがPodにBurstable QoSクラスを与えたことを示しています。

```yaml
spec:
containers:
- image: nginx
imagePullPolicy: Always
name: qos-demo-2-ctr
resources:
limits:
memory: 200Mi
requests:
memory: 100Mi
...
qosClass: Burstable
```
Podを削除してください:
```shell
kubectl delete pod qos-demo-2 --namespace=qos-example
```

## BestEffortのQoSクラスを割り当てたPodを作成する

PodにBestEffort QoSクラスを与えるには、Pod内のコンテナにはメモリーやCPUの制限や要求を指定してはなりません。

以下に1つのコンテナをもつPodの設定ファイルを示します。コンテナにはメモリーやCPUの制限や要求がありません:

{{< codenew file="pods/qos/qos-pod-3.yaml" >}}

Podを作成してください:

```shell
kubectl apply -f https://k8s.io/examples/pods/qos/qos-pod-3.yaml --namespace=qos-example
```

Podの詳細な情報を確認してください:

```shell
kubectl get pod qos-demo-3 --namespace=qos-example --output=yaml
```

この出力では、KubernetesがPodにBestEffort QoSクラスを与えたことを示しています。

```yaml
spec:
containers:
...
resources: {}
...
qosClass: BestEffort
```
Podを削除してください:
```shell
kubectl delete pod qos-demo-3 --namespace=qos-example
```

## 2つのコンテナを含むPodを作成する

以下に2つのコンテナをもつPodの設定ファイルを示します。一方のコンテナは200MiBのメモリー要求を指定し、もう一方のコンテナには要求や制限を指定しません。

{{< codenew file="pods/qos/qos-pod-4.yaml" >}}

このPodがBurstable QoSクラスの基準を満たしていることに注目してください。つまり、Guaranteed QoSクラスの基準に満たしておらず、一方のコンテナにはメモリー要求を与えられています。

Podを作成してください:

```shell
kubectl apply -f https://k8s.io/examples/pods/qos/qos-pod-4.yaml --namespace=qos-example
```

Podの詳細な情報を確認してください:

```shell
kubectl get pod qos-demo-4 --namespace=qos-example --output=yaml
```

この出力では、KubernetesがPodにBurstable QoSクラスを与えたことを示しています:

```yaml
spec:
containers:
...
name: qos-demo-4-ctr-1
resources:
requests:
memory: 200Mi
...
name: qos-demo-4-ctr-2
resources: {}
...
qosClass: Burstable
```
Podを削除してください:
```shell
kubectl delete pod qos-demo-4 --namespace=qos-example
```

## クリーンアップ

namespaceを削除してください:

```shell
kubectl delete namespace qos-example
```

{{% /capture %}}

{{% capture whatsnext %}}


### アプリケーション開発者向け

* [コンテナとPodにメモリーリソースを割り当てる](/docs/tasks/configure-pod-container/assign-memory-resource/)

* [コンテナとPodにCPUリソースを割り当てる](/docs/tasks/configure-pod-container/assign-cpu-resource/)

### クラスター管理者向け

* [Namespaceにメモリー要求および制限のデフォルト値を設定する](/docs/tasks/administer-cluster/memory-default-namespace/)

* [NamespaceにCPU要求および制限のデフォルト値を設定する](/docs/tasks/administer-cluster/cpu-default-namespace/)

* [Namespaceに最小および最大メモリー量の制約を設定する](/docs/tasks/administer-cluster/memory-constraint-namespace/)

* [Namespaceに最小および最大のCPU使用量の制約を設定する](/docs/tasks/administer-cluster/cpu-constraint-namespace/)

* [NamespaceにメモリーおよびCPUのクォータを設定する](/docs/tasks/administer-cluster/quota-memory-cpu-namespace/)

* [NamespaceにPodのクォータを設定する](/docs/tasks/administer-cluster/quota-pod-namespace/)

* [APIオブジェクトのクォータを設定する](/docs/tasks/administer-cluster/quota-api-object/)
{{% /capture %}}





0 comments on commit a5acc50

Please sign in to comment.