天天看點

k8s基本指令

k8s的流程

  1. 編寫dockerfile
  2. 使用控制器來部署應用
  3. 使用服務來對外暴露應用

1. 建立應用

使用指令來建立

kubectl create deployment nginx --image=nginx:1.14

使用yaml檔案建立

kubectl create deployment nginx --image=nginx:1.14 --dry-run=client -o yaml > nginx.yaml

#空運作建立一個nginx的yaml檔案

kubectl apply -f nginx.yaml

2.服務應用

kubectl expose deployment nginx --port=80 --target-port=80 --type=NodePort

#暴露服務端口

#--port:是pod内部通信的端口

#--target-port:是服務的端口,和dockerfile裡的expose暴露的端口一緻

3. 服務更新

把nginx從1.14更新到1.15版本

使用yaml檔案更新

使用kubectl edit deployment/nginx, 找到image進行修改

使用指令更新

kubectl set image deployment nginx nginx=nginx:1.5

4. 服務縮放 (水準擴容,橫向擴容)

kubectl scale deployment nginx --replicas=2

#pod裡擴容到兩台

#也可以在yaml檔案裡修改replicas 副本數

5. 服務復原

復原到上一個版本

kubectl rollout undo deployment nginx

檢視曆史版本

kubectl rollout history deployment nginx

給曆史版本寫上注釋

kubectl annotate deployment/nginx kubernetes.io/change-cause="$資訊"

#隻能修改最後的一個版本

檢視曆史版本的詳細資訊

kubectl rollout history deployment nginx --revision=1

復原到指定版本

kubectl rollout undo deployment nginx --to-revision=1

6. 服務删除

繼續閱讀