K8S - Application Lifecycle Management
    
    
        Post:2022-05-01 19:31:52
        
        Tags:/
        
        K8S
        /
        
        
        
        Visit:
     
    
        Strategy
| 12
 3
 4
 5
 6
 7
 8
 
 | spec:
 strategy:
 type: Recreate/RollingUpdate
 
 rollingUpdate:
 maxUnavailable: 25%
 maxSurge: 25%
 
 | 
Rollout
| 12
 3
 4
 5
 6
 
 | kubectl rollout status deploy/my-deploy
 
 kubectl rollout history ...
 
 kubectl rollout undo ...
 
 | 
| 12
 
 | kubectl set image deploy/my-deploy nginx=nginx:1.9.1
 
 | 
Command & Arguments
- Ex. the sleeper image | 12
 3
 
 | FROM UbuntuENTRYPOINT [ "sleep" ]
 CMD [ "5" ]
 
 |  
 
- pass arguments | 12
 
 | docker run --name sleeper sleeper 10
 
 |  
 
| 12
 3
 4
 5
 
 | 
 spec:
 containers:
 - args: [ "10" ]
 
 | 
- Overwrite entrypoint| 12
 
 | docker run --name sleeper sleeper --entrypoint sleep 10
 
 |  
 
| 12
 3
 4
 5
 6
 
 | 
 spec:
 containers:
 - command: [ "sleep" ]
 args: [ "10" ]
 
 | 
Environment Variables
| 12
 3
 4
 5
 6
 
 | spec:
 containers:
 - env:
 - name: name
 value: value
 
 | 
ConfigMaps
| 12
 3
 
 | kubectl create configMap my-cm --from-literal=key=value
 kubectl create configMap my-cm --from-file=path
 
 | 
| 12
 3
 4
 5
 6
 7
 8
 
 | apiVersion: v1
 kind: ConfigMap
 metadata:
 name: my-config-map
 data:
 key1: value1
 key2: value2
 
 | 
| 12
 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
| 12
 3
 
 | kubectl create secret generic my-secret --from-literal=key=value
 kubectl create secret generic my-secret --from-file=path
 
 | 
| 12
 3
 4
 5
 6
 7
 
 | apiVersion: v1kind: Secret
 metadata:
 name: my-secret
 data:
 key1: base64-value1
 key2: base64-value2
 
 | 
| 12
 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| 12
 3
 4
 5
 6
 7
 8
 
 | spec:
 initContainers:
 - name: xxx
 image: xxx
 containers:
 - name: xxx
 image: xxx
 
 |