K8S - Application Lifecycle Management
Post:2022-05-01 19:31:52
Tags:/
K8S
/
Visit:
Strategy
1 2 3 4 5 6 7 8
| spec: strategy: type: Recreate/RollingUpdate rollingUpdate: maxUnavailable: 25% maxSurge: 25%
|
Rollout
1 2 3 4 5 6
| kubectl rollout status deploy/my-deploy
kubectl rollout history ...
kubectl rollout undo ...
|
1 2
| kubectl set image deploy/my-deploy nginx=nginx:1.9.1
|
Command & Arguments
Ex. the sleeper image
1 2 3
| FROM Ubuntu ENTRYPOINT [ "sleep" ] CMD [ "5" ]
|
pass arguments
1 2
| docker run --name sleeper sleeper 10
|
1 2 3 4 5
|
spec: containers: - args: [ "10" ]
|
- Overwrite entrypoint
1 2
| docker run --name sleeper sleeper --entrypoint sleep 10
|
1 2 3 4 5 6
|
spec: containers: - command: [ "sleep" ] args: [ "10" ]
|
Environment Variables
1 2 3 4 5 6
| spec: containers: - env: - name: name value: value
|
ConfigMaps
1 2 3
| kubectl create configMap my-cm --from-literal=key=value kubectl create configMap my-cm --from-file=path
|
1 2 3 4 5 6 7 8
| apiVersion: v1 kind: ConfigMap metadata: name: my-config-map data: key1: value1 key2: value2
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| spec: containers: - env: - name: key1 valueFrom: configMapKeyRef: name: my-config-map key: key1 envFrom: - configMapRef: name: my-config-map volumes: - name: my-volume configMap: name: my-config-map
|
Secret
1 2 3
| kubectl create secret generic my-secret --from-literal=key=value kubectl create secret generic my-secret --from-file=path
|
1 2 3 4 5 6 7
| apiVersion: v1 kind: Secret metadata: name: my-secret data: key1: base64-value1 key2: base64-value2
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| spec: containers: - env: - name: key1 valueFrom: secretKeyRef: name: my-secret key: key1 envFrom: - secretRef: name: my-secret volumes: - name: my-volume secret: secretName: my-config-map
|
Init Containers
- Containers that only run at init phase
1 2 3 4 5 6 7 8
| spec: initContainers: - name: xxx image: xxx containers: - name: xxx image: xxx
|