ラージビッグバナー(970x90)

Linux

LVS や Nginx を冗長化するときに keepalived のログを個別で出力する方法

更新日:

ビッグバナー(piglog)728px

ロードバランサにLVSを使ったり、リバースプロキシをNginxで作ったりしたときに、冗長化したい場合は keepalived を利用しますが、keepalived のログはデフォルトで /var/log/messages に出力されます。

これだと、フェイルオーバーが発生したときのログを追いにくいので keepalived のログを個別で出力する方法をメモします。keepalived のログ出力先を変更するので、LVS でも Nginx の場合でも同じ方法で対応できました。

手順

例えば、LVS + keepalived などで冗長している想定ですが、そこら辺の話は省きます。あくまで、keepalived のログを個別で出力する方法です。

環境

CentOS7
Keepalived v1.2.13(yumで入る最新)

ログの設定

/etc/sysconfig/keepalived でログのファシリティの設定をします。

以下の様に変更します。設定ファイルのコメントにもありますが、0-7 のなかで rsyslog で使用していないものを使えば良いです。

次に、rsyslog側の設定でログファイルを指定します。/etc/rsyslog.d/keepalived.conf を用意します。

次に、ログローテートの設定をします。/etc/logrotate.d/keepalived を用意します。

ログ出力先のディレクトリを作成して、rsyslogd と keepallived を再起動します。

ログローテートのテストをします。

上記だとローテーション後にローテートされて圧縮されたファイルしか存在しないが、その前に設定を反映するために keepalived を再起動しているので、Slave に切り替わっていることが原因で、現在の Master側の keepalived を再起動して再度フェイルオーバーさせれば、keepalived.log が生成される。

以上。
↓↓↓ 持っていると便利な一冊。

 

レクタングル (大)

レクタングル (大)

リンクユニット(レスポンシブ)

-Linux
-

Copyright© ぴぐろぐ , 2018 All Rights Reserved.