Keepalived 解决使用 systemctl 无法关闭
解决方法:
linux下到这个路径下去找 keepalived.service文件
vim /usr/lib/systemd/system/keepalived.service
修改 KillMode=control-group 停止该进程组
修改 KillMode=process 主要是用于停止该进程的主进程
ExecStop=/bin/kill -TERM $MAINPID 这个配置之后就可以使用systemctl stop keepalived 关闭所有的keepalived进程
$MAINPID 为该文件记录的值,需要指定pid才可以正确执行reload 和 stop
修改之后的配置:
shell[Unit]
Description=LVS and VRRP High Availability Monitor
After=syslog.target network-online.target
[Service]
Type=forking
PIDFile=/var/run/keepalived.pid
KillMode=control-group
EnvironmentFile=-/etc/sysconfig/keepalived
ExecStart=/usr/sbin/keepalived $KEEPALIVED_OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/bin/kill -TERM $MAINPID
[Install]
WantedBy=multi-user.target
保存之后 不要忘记 systemctl daemon-reload 来重载这些配置
systemctl start keepalived # 开启keepalived
使用这个命令来查看进程:
ps -aux | grep keepalived | grep -v grep
如果查询不到进程就算是配置OK了