小知識:RHEL7上設置Keepalived日誌重定向

以前在MySQL主主+Keepalived架構安裝部署也有描述Keepalived日誌重定向的部分,其中提到RHEL7(實際是RHEL6.8以上)要配置rsyslog,回顧下以前的配置,主要就是改兩個地方:html

1.配置 /etc/sysconfig/keepalived 文件

vi /etc/sysconfig/keepalived 修改KEEPALIVED_OPTIONS的值:
# Options for keepalived. See `keepalived --help' output and keepalived(8) and
# keepalived.conf(5) man pages for a list of all options. Here are the most
# common ones :
#
# --vrrp               -P    Only run with VRRP subsystem.
# --check              -C    Only run with Health-checker subsystem.
# --dont-release-vrrp  -V    Dont remove VRRP VIPs & VROUTEs on daemon stop.
# --dont-release-ipvs  -I    Dont remove IPVS topology on daemon stop.
# --dump-conf          -d    Dump the configuration data.
# --log-detail         -D    Detailed log messages.
# --log-facility       -S    0-7 Set local syslog facility (default=LOG_DAEMON)
#

# KEEPALIVED_OPTIONS="-D"
KEEPALIVED_OPTIONS="-D -d -S 0"

2.添加keepalived日誌保存位置的配置

由於第一步至關設置了log-facility=0,(-S 0),那麼添加local0的日誌都重定向到/var/log/keepalived.log中:

vi /etc/rsyslog.confshell

..這裏省略源文件內容.. 最後追加
# keepalived -S 0
local0.* /var/log/keepalived.log

可是實際驗證發現,若是對於RHEL7,這樣設置還不行,實際觀察ps -ef|grep keep發現keepalived的進程仍是KEEPALIVED_OPTIONS="-D"方式運行的,咱們設置的KEEPALIVED_OPTIONS="-D -d -S 0"並未生效,大概懷疑到是RHEL7服務管理與RHEL6有較大區別,從這方面去找緣由,以RHEL7爲關鍵字進行相關問題搜索,最終發現RHEL7的確還需多作一步以下操做,才能夠保證讀取到咱們上面的環境配置文件:架構

3.修改 /lib/systemd/system/keepalived.service 文件

將配置文件中的這兩行:日誌

EnvironmentFile=-/usr/local/keepalived/etc/sysconfig/keepalived
ExecStart=/usr/local/keepalived/sbin/keepalived $KEEPALIVED_OPTIONS

從新修改成:code

EnvironmentFile=/etc/sysconfig/keepalived
ExecStart=/sbin/keepalived $KEEPALIVED_OPTIONS

能夠看到這裏/sbin/keepalived $KEEPALIVED_OPTIONS定義的變量是經過EnvironmentFile定義的配置文件去找的。htm

修改完成後,須要注意從新加載下service,不然後面啓動keepalived服務會報錯:blog

systemctl daemon-reload

最後重啓rsyslog和keepalived服務,就能夠實現RHEL7上Keepalived日誌重定向到/var/log/keepalived.log了。進程

相關文章
相關標籤/搜索