MariaDB Keepalived 双主热备之踩坑记
MariaDB 和 Keepalived 使用 yum 安装,在验证 Keepalived
时,关闭一台机器上的 MariaDB , 总是无法杀死 Keepalived 进程,导致虚拟
ip 无法迁移到另外一台服务器上。单独执行 track_script
里配置的脚本,却可以杀死 Keepalived 进程,怀疑是 track_script
里配置的脚本没有执行,所以一开始我以为是 Keepalived
的配置文件写错了,查阅了多篇博客,反复修改还是不行。后来在 Keepalived
日志文件里发现一些提示 Unknown keyword 'track_script{
。经过检索,发现是配置文件和大括号之间少了一个空格。加上空格后就可以正常运行了。
总结一下: 1. 日志很重要,有些问题从日志里就可以找到答案。其实一开始就发现日志里有这个问题了,但是没有进一步深究,于是浪费了很多时间在其他方面。 2. 当没有解决思路时,可以放一放,不要一味纠结其中。配置文件我也检查了好几遍,发现了其他没有加空格的地方,唯独单单没发现这点,可能当时自己一心急于解决问题,头脑已经混乱了。
另附 Keepalived 配置单独日志的方法: Keepalived 日志默认存放在
/var/log/messages
中,想要将其单独存放,需在
/etc/sysconfig/keepalived
文件中修改
KEEPALIVED_OPTIONS="-D -d -S 0
。并在
/etc/rsyslog.conf
末尾添加
local0.* /var/log/keepalived.log
。