免責事項:これは英文の記事「Log files consuming excess amount of storage space in VMware Cloud Director 10.5 and 10.6」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
VMware Cloud Director 10.x
デフォルトの /etc/logrotate.d/messages-and-auth の設定では /var/log/messages のローテートのみでは rsyslogd.service の再起動が動作しません。
デフォルトの /etc/logrotate.d/messages-and-auth :
/var/log/messages { minsize 10M daily rotate 10 compress delaycompress notifempty}
/var/log/auth.log { minsize 10M daily rotate 10 compress delaycompress notifempty postrotate /usr/bin/systemctl restart rsyslog.service endscript}
VCD 10.6 以降では auth.log の出力先が /var/log/auth.log から /var/log/messages へと変更されています。
その結果、 /var/log/auth.log のローテートが動作しなくなり、/var/log/messages の出力先が切り替わらないことで root ("/") パーティションの容量が枯渇することがあります。
この問題は VMware Cloud Director 10.6.1.1 で修正しています。
ワークアラウンド :
/etc/logrotate.d/messages-and-auth ファイルを下記の通り修正します。
10.5.1.1 以下のバージョンの場合
/var/log/messages { minsize 10M daily rotate 10 compress delaycompress notifempty postrotate /usr/bin/systemctl restart rsyslog.service endscript}
/var/log/auth.log { minsize 10M daily rotate 10 compress delaycompress notifempty postrotate /usr/bin/systemctl restart rsyslog.service endscript}
10.6 以降のバージョンの場合
/var/log/messages { minsize 10M daily rotate 10 compress delaycompress notifempty postrotate /usr/bin/systemctl restart rsyslog.service endscript}
Note : VCD 10.6 以降では、認証ログの出力先が /var/log/auth.log から /var/log/messages に変更されたため、/var/log/auth.log のローテーションは不要です。
これらの変更を行った後は以下のコマンドで rsyslog.service を再起動します。
systemctl restart rsyslog
上記のログローテーションポリシーがご利用の環境のファイル保持ポリシーの要件を満たさない場合は、必要に応じて以下のパラメーターを変更してください。
minsize <size>
指定したサイズよりもログファイルが大きくなったときにローテーションします。ただし、指定した時間間隔より前にはローテーションされません。
rotate <number>
ファイルが削除されるまでのローテート数を設定します。