Skip to content

Commit

Permalink
ja-trans: tasks/run-application/run-stateless-application-deployment/ (
Browse files Browse the repository at this point in the history
…kubernetes#14955)

* ja-trans: tasks/run-application/run-stateless-application-deployment/

* modify "exploring" translation
  • Loading branch information
oke-py authored and cstoku committed Aug 28, 2019
1 parent d603196 commit f86a858
Showing 1 changed file with 150 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
---
title: Deploymentを使用してステートレスアプリケーションを実行する
min-kubernetes-server-version: v1.9
content_template: templates/tutorial
weight: 10
---

{{% capture overview %}}

このページでは、Kubernetes Deploymentオブジェクトを使用してアプリケーションを実行する方法を説明します。

{{% /capture %}}


{{% capture objectives %}}

* nginx deploymentを作成します。
* kubectlを使ってdeploymentに関する情報を一覧表示します。
* deploymentを更新します。

{{% /capture %}}


{{% capture prerequisites %}}

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

{{% /capture %}}


{{% capture lessoncontent %}}

## nginx deploymentの作成と探検

Kubernetes Deploymentオブジェクトを作成することでアプリケーションを実行できます。また、YAMLファイルでDeploymentを記述できます。例えば、このYAMLファイルはnginx:1.7.9 Dockerイメージを実行するデプロイメントを記述しています:

{{< codenew file="application/deployment.yaml" >}}


1. YAMLファイルに基づいてDeploymentを作成します:

kubectl apply -f https://k8s.io/examples/application/deployment.yaml

1. Deploymentに関する情報を表示します:

kubectl describe deployment nginx-deployment

出力はこのようになります:

user@computer:~/website$ kubectl describe deployment nginx-deployment
Name: nginx-deployment
Namespace: default
CreationTimestamp: Tue, 30 Aug 2016 18:11:37 -0700
Labels: app=nginx
Annotations: deployment.kubernetes.io/revision=1
Selector: app=nginx
Replicas: 2 desired | 2 updated | 2 total | 2 available | 0 unavailable
StrategyType: RollingUpdate
MinReadySeconds: 0
RollingUpdateStrategy: 1 max unavailable, 1 max surge
Pod Template:
Labels: app=nginx
Containers:
nginx:
Image: nginx:1.7.9
Port: 80/TCP
Environment: <none>
Mounts: <none>
Volumes: <none>
Conditions:
Type Status Reason
---- ------ ------
Available True MinimumReplicasAvailable
Progressing True NewReplicaSetAvailable
OldReplicaSets: <none>
NewReplicaSet: nginx-deployment-1771418926 (2/2 replicas created)
No events.

1. Deploymentによって作成されたPodを一覧表示します:

kubectl get pods -l app=nginx

出力はこのようになります:

NAME READY STATUS RESTARTS AGE
nginx-deployment-1771418926-7o5ns 1/1 Running 0 16h
nginx-deployment-1771418926-r18az 1/1 Running 0 16h

1. Podに関する情報を表示します:

kubectl describe pod <pod-name>

ここで`<pod-name>`はPodの1つの名前を指定します。

## Deploymentの更新

新しいYAMLファイルを適用してDeploymentを更新できます。このYAMLファイルは、Deploymentを更新してnginx 1.8を使用するように指定しています。

{{< codenew file="application/deployment-update.yaml" >}}

1. 新しいYAMLファイルを適用します:

kubectl apply -f https://k8s.io/examples/application/deployment-update.yaml

1. Deploymentが新しい名前でPodを作成し、古いPodを削除するのを監視します:

kubectl get pods -l app=nginx

## レプリカ数を増やすことによるアプリケーションのスケール

新しいYAMLファイルを適用することで、Deployment内のPodの数を増やすことができます。このYAMLファイルは`replicas`を4に設定します。これはDeploymentが4つのPodを持つべきであることを指定します:

{{< codenew file="application/deployment-scale.yaml" >}}

1. 新しいYAMLファイルを適用します:

kubectl apply -f https://k8s.io/examples/application/deployment-scale.yaml

1. Deploymentに4つのPodがあることを確認します:

kubectl get pods -l app=nginx

出力はこのようになります:

NAME READY STATUS RESTARTS AGE
nginx-deployment-148880595-4zdqq 1/1 Running 0 25s
nginx-deployment-148880595-6zgi1 1/1 Running 0 25s
nginx-deployment-148880595-fxcez 1/1 Running 0 2m
nginx-deployment-148880595-rwovn 1/1 Running 0 2m

## Deploymentの削除

Deploymentを名前を指定して削除します:

kubectl delete deployment nginx-deployment

## ReplicationControllers -- 昔のやり方

複製アプリケーションを作成するための好ましい方法はDeploymentを使用することです。そして、DeploymentはReplicaSetを使用します。 DeploymentとReplicaSetがKubernetesに追加される前は、[ReplicationController](/docs/concepts/workloads/controllers/replicationcontroller/)を使用して複製アプリケーションを構成していました。

{{% /capture %}}


{{% capture whatsnext %}}

* [Deploymentオブジェクト](/docs/concepts/workloads/controllers/deployment/)の詳細

{{% /capture %}}


0 comments on commit f86a858

Please sign in to comment.