systemctl无法停掉keepalived

这个问题搞了好半天,记录一下,启停都是用的systemctl

起初是测试vip漂移时候发现,主备节点都开启keepalived的状况下,一切正常,主节点的vip也可以访问。

第一次停掉主节点的keepalived程序时,vip顺利漂移到从节点

再次启动主节点keepalived,vip顺利漂移到主节点

*当再停掉主节点keepalived时,发现vip无法漂移到主节点,检查进程时,发现keepalived的进程依然还在

 查找keepalived的pid文件,发现已经被干掉了

 这时候想到应该是systemd启动服务脚本的问题,查看keepalived的启动service文件

KillMode=process的大致意思是当停止keepalived的时候只停掉主进程,而主进程产生的子进程是不会被干掉的,SSH服务就是这个模式。

killmode的默认值是control-group,意思时所有进程都会被干掉,我这里选择把这项注释掉,使用默认参数

改了service文件需要使用systemctl daemon-reload来重读配置

之后在使用systemctl stop keepalived就不会出现进程还在的情况了

废了这么多话,其实可以使用systemctl kill keepalived来停掉服务,嘿嘿

posted @   ForLivetoLearn  阅读(2045)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示