未主动安装却出现大量Kubernetes进程 如何排查并彻底卸载
排查Kubernetes组件来源
执行以下步骤定位安装触发原因:
- 查二进制所属安装包:
- Debian/Ubuntu系执行:
dpkg -S $(which kubelet kubeadm kubectl) - RHEL/CentOS/Fedora系执行:
rpm -qf $(which kubelet kubeadm kubectl)
返回结果会直接标注这些K8s组件二进制属于哪个安装包,顺着包名即可确认是哪个软件依赖安装的。
- Debian/Ubuntu系执行:
- 校验Docker Desktop配置:打开Docker Desktop设置页进入Kubernetes选项卡,确认Enable Kubernetes勾选框为未选中状态。部分历史版本Docker存在升级后配置异常、自动拉起内置K8s组件的问题,若发现被意外勾选,取消后点击「Apply & Restart」即可自动停掉相关进程。
- 验证是否为Killer Intelligence相关进程:先执行
ps aux | grep kubelet拿到kubelet进程PID,再执行pstree -aps <PID>查看完整进程链路,确认父进程路径是否指向Killer相关程序;也可执行systemctl list-units --type=service | grep -i killer排查系统内是否存在Killer相关的注册服务。 - 查系统安装日志:
- Debian/Ubuntu系查看
/var/log/apt/history.log - RHEL系查看
/var/log/dnf.log或/var/log/yum.log
搜索kube、kubernetes关键词,即可查到K8s相关包的安装时间、触发安装的上层依赖项。
- Debian/Ubuntu系查看
相关运行状态参考截图:

彻底清理Kubernetes组件
按顺序执行以下操作即可完全删除所有相关组件:
- 停掉所有K8s相关服务和进程:
systemctl stop kubelet kube-proxy etcd kube-apiserver kube-controller-manager kube-scheduler 2>/dev/null ps aux | grep -v grep | grep kube | awk '{print $2}' | xargs kill -9 2>/dev/null - 卸载对应安装包:
- Debian/Ubuntu系执行:
apt remove --purge -y kubelet kubeadm kubectl kubernetes-cni kube* apt autoremove -y - RHEL/CentOS/Fedora系执行:
dnf remove -y kubelet kubeadm kubectl kubernetes-cni kube* dnf autoremove -y
- Debian/Ubuntu系执行:
- 删除所有残留配置、数据和二进制文件:
rm -rf ~/.kube/ rm -rf /etc/kubernetes/ rm -rf /var/lib/kubelet/ rm -rf /var/lib/etcd/ rm -rf /usr/local/bin/kube* rm -rf /opt/cni/ rm -rf /etc/systemd/system/kubelet.service rm -rf /etc/systemd/system/kubelet.service.d/ - 重载系统服务配置,清理失效项:
systemctl daemon-reload systemctl reset-failed - 清理完成校验:执行
which kubelet kubeadm kubectl无路径返回、ps aux | grep kube无相关业务进程、netstat -tulnp无原K8s占用的端口,即代表清理完成。
内容的提问来源于stack exchange,提问作者Redfer
相关产品推荐
相关产品推荐

