kubenetes的pod处于Terminating状态的删除办法
情况如下:
[[email protected] ~]$ kubectl get pods --namespace kubeflow
NAME READY STATUS RESTARTS AGE
ambassador-75b956fb48-vthq7 1/1 Terminating 11 13h
[[email protected] ~]$
通过查看日志没有发现有用的信息,尝试删除时却处于一直在等待中,强制删除时报错
[[email protected] AIKubeflow]$ kubectl delete pods --all --grace-period=0 –force
error: name cannot be provided when a selector is specified
[[email protected] AIKubeflow]
因此只能从资源入手来删除该pod,查找该pod的etcd资源:
[[email protected] bin]$ ETCDCTL_API=3 /k8s/etcd/bin/etcdctl get "" --from-key > keys.yaml
[[email protected] bin]$ ls
etcd etcdctl keys.yaml
[[email protected] bin]$ ls
由于该资源中数据量很大,要查找很慢,所以就在vim中先输入该pod名称,然后通过shift+#查找该资源,
找到该资源后删除即可
[[email protected] bin]$ ETCDCTL_API=3 /k8s/etcd/bin/etcdctl del /registry/pods/kubeflow/ambassador-75b956fb48-vthq7
1
[[email protected] bin]$
查看pod状态发现该pod已经删除了
[[email protected] ~]$ kubectl get pods --namespace kubeflow
No resources found.
[[email protected] ~]$
问题以解决,如有问题请加技术交流群:526855734
查看到强制删除pod的方法
kubectl delete pod PODNAME -n NAMESPACE --grace-period=0 --force
PODNAME:pod名称
NAMESPACE:命名空间
kubectl delete -f your_file.yaml -n NAMESPACE --grace-period=0 --force
your_file:创建pod的yaml文件
NAMESPACE: 命名空间
最近在做少儿编程项目,欢迎大家关注蔻丁侠
参考:https://blog.****.net/weixin_34082789/article/details/85969414