k8s deployment
修改pod的labels
[root@node1 data]# kubectl get pod -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
lifecycle-demo 1/1 Running 0 100m 10.244.0.38 node1 <none> <none>
[root@node1 data]# kubectl label pod lifecycle-demo aaa=bbb overwrite=True
pod/lifecycle-demo labeled
查看
[root@node1 data]# kubectl get pod -o wide --show-labels
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES LABELS
lifecycle-demo 1/1 Running 0 102m 10.244.0.38 node1 <none> <none> aaa=bbb,overwrite=True
[root@node1 data]# kubectl label pod lifecycle-demo aaa=ccc --overwrite=True
pod/lifecycle-demo labeled
[root@node1 data]# kubectl get pod -o wide --show-labels
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES LABELS
lifecycle-demo 1/1 Running 0 102m 10.244.0.38 node1 <none> <none> aaa=ccc,overwrite=True
deployment
testdeploy.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
创建deployment 并查看情况
[root@node1 data]# kubectl get deployment
NAME READY UP-TO-DATE AVAILABLE AGE
nginx-deployment 0/3 3 0 18s
[root@node1 data]# kubectl get rs
NAME DESIRED CURRENT READY AGE
nginx-deployment-6b474476c4 3 3 0 24s
[root@node1 data]# kubectl get pod --show-labels
NAME READY STATUS RESTARTS AGE LABELS
lifecycle-demo 1/1 Running 0 120m aaa=ccc,overwrite=True
nginx-deployment-6b474476c4-8sgdn 1/1 Running 0 65s app=nginx,pod-template-hash=6b474476c4
nginx-deployment-6b474476c4-nf6c2 1/1 Running 0 65s app=nginx,pod-template-hash=6b474476c4
nginx-deployment-6b474476c4-zstvj 0/1 ContainerCreating 0 65s app=nginx,pod-template-hash=6b474476c4
扩容分片,增加为4
#####扩容
[root@node1 data]# kubectl scale deployment nginx-deployment --replicas=4
deployment.apps/nginx-deployment scaled
[root@node1 data]# kubectl get pods
NAME READY STATUS RESTARTS AGE
lifecycle-demo 1/1 Running 0 123m
nginx-deployment-6b474476c4-6cttj 1/1 Running 0 10s
nginx-deployment-6b474476c4-8sgdn 1/1 Running 0 4m18s
nginx-deployment-6b474476c4-nf6c2 1/1 Running 0 4m18s
nginx-deployment-6b474476c4-zstvj 1/1 Running 0 4m18s #增加了一个pod
[root@node1 data]# kubectl get rs
NAME DESIRED CURRENT READY AGE
nginx-deployment-6b474476c4 4 4 4 10m
[root@node1 data]# kubectl get deployment
NAME READY UP-TO-DATE AVAILABLE AGE
nginx-deployment 4/4 4 4 11m
滚动更新
修改下方文件
testdeploy.yaml
[root@node1 data]# kubectl apply -f roll_updata.yaml
[root@node1 data]# kubectl get rs
NAME DESIRED CURRENT READY AGE
nginx-deployment-558fc78868 3 3 3 4m16s
nginx-deployment-5cc6c7559b 1 1 0 30s #可以看到更新出新的rs了
[root@node1 data]# kubectl get pod
NAME READY STATUS RESTARTS AGE
lifecycle-demo 1/1 Running 0 137m
nginx-deployment-5cc6c7559b-78sfk 1/1 Running 0 36s
nginx-deployment-5cc6c7559b-knr4q 1/1 Running 0 75s
nginx-deployment-5cc6c7559b-p8zpv 1/1 Running 0 35s #看到pod已经跟新了
修改文件中的镜像版本
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.12.2 #将版本号修改为此数
ports:
- containerPort: 80
应用新的配置并查看状态
[root@node1 data]# kubectl get rs
NAME DESIRED CURRENT READY AGE
nginx-deployment-558fc78868 0 0 0 5m27s
nginx-deployment-5cc6c7559b 3 3 3 101s #可以更新的看到rs生效了
[root@node1 data]# kubectl get pod
NAME READY STATUS RESTARTS AGE
lifecycle-demo 1/1 Running 0 139m
nginx-deployment-5cc6c7559b-78sfk 1/1 Running 0 2m43s
nginx-deployment-5cc6c7559b-knr4q 1/1 Running 0 3m22s
nginx-deployment-5cc6c7559b-p8zpv 1/1 Running 0 2m42s
回滚操作
[root@node1 data]# kubectl rollout undo deployment nginx-deployment
deployment.apps/nginx-deployment rolled back
[root@node1 data]# kubectl get rs
NAME DESIRED CURRENT READY AGE
nginx-deployment-558fc78868 3 3 2 7m56s
nginx-deployment-5cc6c7559b 1 1 1 4m10s
[root@node1 data]# kubectl get rs
NAME DESIRED CURRENT READY AGE
nginx-deployment-558fc78868 3 3 3 7m58s #过一会儿可以看到rs已经退回到之前的第一个了
nginx-deployment-5cc6c7559b 0 0 0 4m12s

回滚到指定版本


浙公网安备 33010602011771号