Deployment
https://kubernetes.io/ja/docs/concepts/workloads/controllers/deployment/
Deployment コントローラーはPodとReplicaSetの宣言的なアップデート機能を提供します。
Example:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
namespace: app
spec:
selector:
matchLabels:
app: nginx
replicas: 1
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
参考:
spec
strategy
更新戦略。
Example:
spec:
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
上はデフォルト値。
- type …
Recreate
を選ぶと既存の全てのPodは新しいPodが作成される前に削除される maxSurge
… 理想状態のPod数を超えて作成できる最大のPod数/割合。絶対数も指定可能maxUnavailable
… 更新中に利用不可となる最大のPod数/割合。絶対数も指定可能- 本番ではキャパシティが低下しないように
0
にしておいた方が良さそう。
- 本番ではキャパシティが低下しないように
参考:
最終更新 2020-05-04: [software/k8s] Restructure Kubernetes pages (7114ade87)