Deploymentの概要
DeploymentはReplicaSetを管理する仕組み
ReplicaSetはPodを管理し、Pod内にコンテナが存在する
Deploymentのマニフェストファイル
シンプルな例
1 | apiVersion: apps/v1 |
ポイント
- Podの稼働数が3
replicas: 3 matchLabelsでapp: webを指定templateのlabelsは先ほどselector内で指定したapp: webと同じにする
specに関してはPodのspecと同じ
Deploymentのマニフェストファイルの実行
実行する
1 | $ kubectl apply -f nginx-deployment.yml |
各情報をみてみる
1 | $ kubectl get deployment |
replicasetを増やしてみる
マニフェストファイルのreplicasの値を増減することでReplicaSetの数を調整でき、スケールすることができる
これとは別でCPU使用率と連動して動的にReplicaSetを数を増やすことができるオートスケール機能がある
スタティックな変更
マニフェストをreplicas: 5にしてみる
1 | apiVersion: apps/v1 |
適用する
1 | $ kubectl apply -f nginx-deployment.yml |
実行時の表示はconfigured
起動したPodを確認してみる
1 | $ kubectl get pod -o wide |
既存の3つのPodに加えて、新しく2つのPodが起動しているのがわかる
コマンドラインでの変更
kubectl scaleを実行することでPodの数を調整できる
現状確認
1 | $ kubectl get pod -o wide |
5コ
10コにする
1 | $ kubectl scale --replicas=10 deployment.apps/web-deploy |
メッセージはscaled
確認する
1 | $ kubectl get pod -o wide |
既存の5コに加えて新規5コが追加されたことがわかる
次回はPodの入替を行なってみる