kubernetes集群卸载后docker程序无法启动问题:docker.service启动失败:Unit not found
kubernetes集群卸载后docker程序无法启动问题:docker.service启动失败:Unit not found
最近在搞k8s集群,现在有外网的环境上安装了一个k8s测试集群。现在要把外网转换为内网安装生产集群。
发现把k8s相关组件卸载完之后,发现docker还是无法启动。发现报如下错误:
# Failed to start docker.service: Unit not found
安装k8s之后docker的启动需要有些依赖的服务启动之后才能启动,但是我把所有相关的服务都删除了,并且添加的依赖也在docke.service中删除了。但是docker还是无法启动。我甚至把docker都卸载了但是还是无法解决。
后来在网上查找相应的错误,找到了一篇和我的错误极为相似的问题,也是卸载k8s集群后无法启动docker。
经过检查,/etc/systemd/system/flanneld.service依然存在,并且存在/etc/systemd/system/docker.service.requires目录,在该目录下包含了软连接flanneld.service,该软链接指向了真正的flanneld.service,从而实现了两个服务的启动顺序的关联。
解决办法:
删除 /etc/systemd/system/docker.service.requires/flanneld.service,使用systemctl daemon-reload重新加载服务配置文件,最后systemctl start docker.service,发现docker启动成功了。
参考链接: