Kubernetes 无法删除pod实例的排查过程

今天在k8s集群创建pod时,执行了如下命令:

#kubectl run busybox-service --image=busybox --replicas=3

但是在创建过程中pod既然失败了,

复制代码
[root@k8s-master ~]# kubectl get pods 
NAME                               READY     STATUS             RESTARTS   AGE
busybox-service-556d89b4d9-2c8hq   0/1       CrashLoopBackOff   4          3m
busybox-service-556d89b4d9-6tgt5   0/1       CrashLoopBackOff   5          3m
busybox-service-556d89b4d9-lc5gh   0/1       CrashLoopBackOff   4          3m

#使用如下命令想查看下失败的pod到底经历了什么,也没看出啥来,

# kubectl describe pod busybox-service-556d89b4d9-bkq56
复制代码

就想着删除pod吧,但是执行命令后怎么都删除不了,心想是不是有什么关联服务没删除有依赖了呢,真是日了狗了。

查看有哪些replicationcontroller 

[root@k8s-master ~]# kubectl get rc 
No resources found.

既然没有rc,那就在查查看有没有service呢。

[root@k8s-master ~]# kubectl get svc
NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.1.0.1     <none>        443/TCP   21h

上面也看到了既没有rc,也没有services,那尝试这样删除所有的pods:

# kubectl delete pods --all 

但是也没敢执行,因为有的pod是正常运行的,还使用呢。

那就在查看已经部署的容器

[root@k8s-master ~]# kubectl get deployment 
NAME            DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
busybox-service   3         3         3            3           19h

那就删除这个部署的容器吧;

[root@k8s-master ~]# kubectl delete deployment busybox-service
deployment.extensions "busybox-service" deleted

为什么这三个Pod实例没有rc或者services呢,因为创建它的时候是使用run来实现的,

在看那三个问题pod时没有了,就是这么神奇的.

转:https://www.cnblogs.com/saneri/p/9128980.html

原文地址:https://www.cnblogs.com/gzxbkk/p/10309850.html