cd <keepalived_sourcecode_path> ./configure --prefix=/usr/local/keepalived make && make install mkdir /etc/keepalived mkdir /etc/keepalived/scripts cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/ cp /root/keepalived-2.0.6/keepalived/etc/init.d/keepalived /etc/init.d/ cp /usr/local/keepalived/sbin/keepalived /sbin/keepalived cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/ chmod +x /etc/init.d/keepalived
由于在默认状态下keepalived的日志会写入到/var/log/message中,我们需要将此剥离出来。
在centos 6下可以:
(1)首先修改/etc/sysconfig/keepalived文件,注释掉如下,添加如下:
#KEEPALIVED_OPTIONS="-D" KEEPALIVED_OPTIONS="-D -d -S 0"
(2)其次修改 /etc/rsyslog.conf 文件,添加如下:
local0.* /var/log/keepalived.log
在centos 7 下,还需要修改/lib/systemd/system/keepalived.service 文件:
centos 7使用。因为centos 7使用systemctl,通过systemctl调用service,所以需要修改/lib/systemd/system/keepalived.service文件。
将里面的:
EnvironmentFile=-/usr/local/keepalived/etc/sysconfig/keepalived ExecStart=/usr/local/keepalived/sbin/keepalived $KEEPALIVED_OPTIONS
修改成:
EnvironmentFile=/etc/sysconfig/keepalived ExecStart=/sbin/keepalived $KEEPALIVED_OPTIONS
然后重新加载service:
systemctl daemon-reload
整体的思路就是,
1. 通过systemctl start keepalived去启动;
2. 启动keepalived的时候,会去读service的配置文件:/lib/systemd/system/keepalived.service;
3. 在service的配置文件时:
3.1 启动文件路径ExecStart=/sbin/keepalived $KEEPALIVED_OPTIONS,即启动方式是带环境变量文件中参数来启动;
3.2 读取环境变量参数EnvironmentFile=/etc/sysconfig/keepalived。
4. $KEEPALIVED_OPTIONS参数是在/etc/sysconfig/keepalived的配置;我们配置的是KEEPALIVED_OPTIONS=”-D -d -S 0″;而-S是syslog的facility,0表示放在local0,在/etc/rsyslog.conf 中配置local0.* /var/log/keepalived.log
5. 所以,写日志就去/var/log/keepalived.log了。