Apache httpd のログローテートを行う場合、/etc/logrotate.d/httpd にログローテート設定内容を記述します。
この際、postrotate を利用して、Apache のプロセス(pid) に対して HUPシグナルを送出するように記述してください。
具体的な例として、以下のように記述します。
/bin/kill -HUP `cat /var/run/httpd.[INSTANCE].pid 2>/dev/null` > /dev/null 2>/dev/null || true
※[INSTANCE]は Apache のリソースID の先頭文字列”apache-“を省いたものです。
Apache のリソースID は、lcdstatus コマンドの出力より確認できます。
ご参考:
SIOS Technical Documentation
Apache Recovery Kit 管理ガイド
LifeKeeper における Apache Web Server の設定 > Apache Web Server の設定に関する考慮事項
※上記の設定は LifeKeeper の設定とは無関係な logrotate 自体の設定ですので、あくまでも参考情報です。
このため、上記設定を行う事による動作・実行結果については、事前の検証を十分に実施いただきますようお願いいたします。
なおこの方法では LifeKeeper 保護下の Apache プロセスに対して HUP シグナルを送出するため、
LifeKeeper は Apache プロセスの不在を検知してリカバリ処理 (Apache の再起動) を実施しますが、
通常の運用状態においてフェイルオーバに至ることはありません。
改訂履歴
[公開日:2016年08月30日]