centos 7中配置keepalived日志为别的路径

keepalived 安装:

cd 
./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了。

关注dbDao.com的新浪微博

扫码加入微信Oracle小密圈,了解Oracle最新技术下载分享资源

TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569