kubernetest通過etcd刪除一直處於terminating狀態的pod


背景簡介:

刪除pod時有時候會出現一直刪不掉的情況,比如節點資源滿了或者其他原因,導致pod一直處於Terminating狀態,遲遲刪除不掉。

 

解決辦法:

1. 傳統辦法刪除(此種辦法此刻可能會一直處於無限等待中...)

[root@k8s-master ~]# kubectl delete -f nginx.yaml 
或者
[root@k8s-master ~]# kubectl delete deployments nginx

  

2. 系統自帶參數強制刪除

[root@k8s-master ~]# kubectl delete pod nginx-5897bcd455-nmbrd --grace-period=0 --force

  

3. 進etcd庫刪除(不到萬不得已,謹慎操作)

i.   先找到etcd的三個證書相關的文件,我的(kubeadm安裝)在目錄 /etc/kubernetes/pki/etcd/ 下

ii.  執行命令查找pod

ETCDCTL_API=3 etcdctl --endpoints=https://192.168.12.39:2379 --cacert=/etc/kubernetes/pki/etcd/ca.pem --cert=/etc/kubernetes/pki/etcd/etcd-client.pem --key=/etc/kubernetes/pki/etcd/etcd-client-key.pem get /registry/pod --prefix --keys-only | grep nginx-5897bcd455

iii.  執行命令刪除pod

ETCDCTL_API=3 etcdctl --endpoints=https://192.168.12.39:2379 --cacert=/etc/kubernetes/pki/etcd/ca.pem --cert=/etc/kubernetes/pki/etcd/etcd-client.pem --key=/etc/kubernetes/pki/etcd/etcd-client-key.pem del /registry/pods/default/nginx-5897bcd455-nmbrd

 

 刪除成功,會返回1,就這樣一個個刪除即可。

 

如果這樣都刪不掉,那么..只能呵呵了啊。

 

結束

 


免責聲明!

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



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