Kubernetes——命令行操作


如果集群初始化失敗需要的操作:
 master:
   kubeadm reset   #回答y
   執行一條它提示給你的iptables命令即可
 node:
   systemctl stop kubelet
   rm -rf /etc/kubernetes/*
   注意:檢查防火牆、swap分區、內存
 
kubernetes使用
運行pod的兩種方式:命令行、yaml文件
控制器:deploy rs ds sts job cj(簡寫)

命令行操作deploy:
 kubectl delete deploy httpd  #刪除要指定資源類型,這里的資源類型是deploy
 kubectl delete deploy nginx
 kubectl get po
 kubectl run nginx --image=nginx -r 2
 kubectl run nginx --image=nginx --replicas=2
 kubectl get po
 kubectl get deploy
 #deploy管理多副本,但是不是直接管理,而是通過rs管理多副本。
 kubectl get deploy
 kubectl describe deploy nginx
 #能夠發現的是replicaset的名稱是deployment的name上加上一串隨機字符串,pod的name又是在rs的基礎上再加上一個隨機字符串。
 #describe中的Events可以當作簡單日志來看,有時候的pod沒有起來,可以通過描述下對應的deploy來查看。
 kubectl get rs
 kubectl describe rs nginx-2dhorht341
 #會發現其中有一項叫做controlled by :deployment/nginx
 #也印證了pod rs deploy三者之間的命名規則。


刪除pod:
 在刪除的時候要指定資源類型,pod是資源的一種。
 k8s的一些基本資源類型:
  deploy   rs   pod  ns   svc   pv   pvx
 kubectl delete po --force nginx-12sdfgfdsgs-w4ntd
 kubectl get pod   #發現刪除后又重新起來一個pod,這是因為受deploy管控的pod會自動按照要求啟動相應數量的pod,少了一個會再重啟一個。
 這個時候要想刪除pod就要連同deploy一起刪掉。
 kubectl delete deploy nginx
 kubectl get po   #發現刪除成功,但是所有的deploy下的pod均被刪除了。
 
命令行實現動態replicas的伸縮
 kubectl run nginx --image=nginx --replicas 2
 kubeclt get po
 kubectl scale --replicas 5 deploy nginx
 kubectl get pod
 kubectl get po -w    #-w watch——監控
 kubectl scale --replicas 3 deploy nginx  #縮容為三個
 
如果pod起不來,如何排錯?
 kubectl describe deploy nginx    #查看Events
 kubectl describe po nginx-qwehtqg12sdge-wq3rg
 kubectl logs nginx-qwehtqg12sdge-wq3rg     #logs只能存放pod日志,所以無需指定資源類型。
 kubectl get po -o wide  #可產看相應的node信息
 kubectl logs nginx-qwehtqg12sdge-wq3rg  -f   #持續監控

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM