vCenter Server 7.0 で rsyslog が vmdird と messages へのログ出力を停止する
search cancel

vCenter Server 7.0 で rsyslog が vmdird と messages へのログ出力を停止する

book

Article ID: 428323

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

Symptoms:

rsyslog (syslog デーモン) は、自身が管理する次のログへの書き込みを停止します。

/var/log/vmware/messages
/var/log/vmware/vmdird/vmdird-syslog.log etc.


免責事項: これは英文の記事 rsyslog stops logging to vmdird and messages in vCenter Server 7.0 の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

Environment

VMware vCenter Server 7.0

Cause

この問題は vCenter Server アプライアンスがバージョン 7.0 以降で使用している、オープンソースの rsyslog ライブラリにおける予期せぬ変更によって引き起こされています。

Resolution

この問題は vCenter Server 7.0 U3o, バージョン 7.0.3.01700, ビルド 22357613 以降で解決されています。


回避策:

スクリプトによる回避策

  1. 英語版記事に添付されている syslogConfigFix.sh スクリプトを vCenter Server アプライアンスにアップロードします。
  2. 次のコマンドでスクリプトに実行権限を付与します:
    # chmod +x syslogConfigFix.sh
  3. スクリプトを実行します。
    # ./syslogConfigFix.sh
コマンド例:
root@vcsa_name [ ~ ]# chmod +x syslogConfigFix.sh
root@vcsa_name [ ~ ]# ./syslogConfigFix.sh

手動での回避策

  1. /etc/rsyslog.conf のバックアップを作成します。
    # cp /etc/rsyslog.conf /etc/rsyslog.conf.bak
    
  2. /etc/rsyslog.conf で、 *.* ?esxLoc;esxFmtif ($hostname != $$myhostname ) then ?esxLoc;esxFmt に置き換えます。
  3. ファイルを保存します。
  4. /etc/vmware-syslog/syslog.conf のバックアップを作成します。
    # cp /etc/vmware-syslog/syslog.conf /etc/vmware-syslog/syslog.conf.bak
  5. /etc/vmware-syslog/syslog.conf で、 & stop を見つけ削除します。
  6. rsyslog サービスを再起動します。:
    # systemctl restart rsyslog
上記の回避策を実行したあと /var/log/vmware/vmdird/vmdird-syslog.log にログが出力されているか確認してください。出力されていない場合は、vmdird サービスを再起動する必要があります。
service-control --restart vmdird

Additional Information

影響/リスク:

vmdird サービスのリモートログが収集されなくなります。