以前在MySQL主主+Keepalived架構安裝部署也有描述Keepalived日誌重定向的部分,其中提到RHEL7(實際是RHEL6.8以上)要配置rsyslog,回顧下以前的配置,主要就是改兩個地方:html
# 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"
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的確還需多作一步以下操做,才能夠保證讀取到咱們上面的環境配置文件:架構
將配置文件中的這兩行:日誌
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了。進程