在安装Rancher时,发现其中一个节点一直是失败,经排查是因为Prometheus耗尽了磁盘空间,于是就将其所属的Volume删除,以便释放磁盘空间,但是在我重新设置mysql
配置文件后,重新启动mysql
时就会提示这个错误:docker: Error response from daemon: driver failed programming external connectivity
原因:
从目前的现象来看,是因为docker
服务启动时定义的自定义链DOCKER在我配置firewall
的时候,因为冲突被清掉了,此时只重启某个容器就会出现这个异常,如果要恢复自定义链DOCKER
,只需要重启docker服务即可。
systemctl restart docker
firewall
的底层是使用iptables进行数据过滤,建立在iptables之上,这可能会与Docker
产生冲突。当firewalld
启动或者重启的时候,将会从iptables
中移除DOCKER
的规则,从而影响了Docker
的正常工作。如果你在 Docker 启动之后再启动或者重启firewalld
,此时就需要重启Docker
服务才可以保证其正常使用。