pkill引起的一次事故

2019-10-26  本文已影响0人  PENG先森_晓宇

背景:在宿主机上安装了俩个haproxy容器,并使用keepalived达到高可用。

情景:宿主机上安装了keepalived,然后宿主机上启动的容器haproxy内也启动了keepalived。

操作:由于需要调试本地的keepalived,修改完keepalived配置后,需要杀死keeplaived进程,然后重启。所以使用pkill keepalived来杀死,然后在重启。

现象:发现此时的容器内的虚拟ip172.40.0.100已经ping不通了,也就是haproxy容器内的keepalived服务已经挂了。

误区:在宿主机上执行pkill keepalived,只会杀死宿主机的keepalived的服务

思考:很明显在宿主机上执行pkill keepalived后,将宿主机和所有docker内关于keepalived的服务都杀死了。说明在docker内的所有进程将会映射到宿主机上,而宿主机的进程并不会映射到docker内。

证明:在宿主机上使用ps aux | grep keepalived,果然发现并不是只有宿主机上keepalived的进程,还包括了俩haproxy内的keepalived进程(圈住的部分)


image
上一篇下一篇

猜你喜欢

热点阅读