journalctl コマンドで vCenter Server のイベントを見てみる

Share on:

Table of contents

概要

以前、こちらの記事で vCenter Server 7.0 でのイベントのエクスポート方法 (PowerCLI / syslog) について書いていました。記事でも書いたとおり、vCenter Server Appliance 6.5 以降ではイベントストリーミングが追加され既定で有効になっていますが、syslog 転送は手動で構成する必要がありました。

リモートの Syslog サーバへのイベント ストリーミングの構成

vCenter Serverストリーミング機能へのイベントの書き込みを構成することもできます。イベントのストリーミングは、vCenter Server でのみサポートされます。リモート Syslog サーバに対するイベントのストリーミングは、デフォルトで無効になっています。リモート Syslog サーバへの vCenter Server イベントのストリーミングは、vCenter Server 管理インターフェイスで有効にして設定することができます。

  1. vpxd.event.syslogオプションを有効または無効にします。
    この設定のデフォルト値は「有効」です。

syslog で転送できるのであればデータベース以外のどこかに記録されてないかなと思い色々と試してみたところ、journalctl コマンドで vMon のジャーナルを参照すると syslog 転送時と同じイベントの記録が確認できたので、参考までに見つけた流れなどを備忘録として残しておきたいと思います。

なお、公式マニュアルやナレッジベースなどの公開情報は見当たらなかったのでサポート外の操作になるとは思われます。vCenter Server Appliance が壊れるような操作では無いはずですが実施する場合は自己責任でお願いします。

VMware Service Lifecycle Manager (vMon)

vSphere 6.5 以降では vCenter Server のアーキテクチャが変わっており、多くの vCenter Server 関連サービスは VMware Service Lifecycle Manager サービス (vMon) の子プロセスとして動作するようになっています(PSC 関連など一部のサービスは対象外)1

vCenter Server 6.x のサービスを停止、開始、再起動する方法 (2109881)

注:vSphere 6.5 から、vCenter Server サービスは、Windows Service Control Manager (SCM) のスタンドアロンのサービスではなくなりました。vCenter Server Appliance サービスは、VMware Service Lifecycle Manager サービスの子プロセスとして動作します。

試しに systemctl list-units を grep してみると vMon が systemd の Unit として登録されていることが分かります。

1# systemctl list-units --no-pager | grep vmon
2vmware-vmon.service                                                                         loaded active running   VMware Service Lifecycle Manager

systemctl status で Unit のランタイム情報が色々見られますが、最後の方に出力される直近のジャーナルを見てみるとリモート syslog ストリーミングと同じ出力があります。このため、どうやら journalctl で vMon のジャーナルを見ればリモート syslog ストリーミングと同じようなイベントが見られそうです。

 1# systemctl status vmware-vmon.service
 2● vmware-vmon.service - VMware Service Lifecycle Manager
 3   Loaded: loaded (/lib/systemd/system/vmware-vmon.service; enabled; vendor preset: enabled)
 4  Drop-In: /etc/systemd/system.control/vmware-vmon.service.d
 5           └─50-BlockIOAccounting.conf, 50-CPUAccounting.conf, 50-MemoryAccounting.conf
 6           /etc/systemd/system/vmware-vmon.service.d
 7           └─dep_override.conf
 8   Active: active (running) since Thu 2021-02-11 17:28:30 UTC; 1h 8min ago
 9 Main PID: 40011 (vmon)
10    Tasks: 3425
11   Memory: 42.6M
12      CPU: 2min 518ms
13   CGroup: /system.slice/vmware-vmon.service
14           ├─ 2713 /usr/bin/python /usr/lib/applmgmt/ddns/py/ddns.py --enable
15           ├─40011 /usr/lib/vmware-vmon/vmon -s NONE
16          (略)
17           ├─53846 postgres: vc VCDB 127.0.0.1(46562) idle
18           └─55357 postgres: wcpuser VCDB [local] idle
19
20Feb 11 18:36:32 vcsa.tanzu.local vpxd[42887]: Event [239262] [1-1] [2021-02-11T18:36:32.030659Z] [vim.event.EventEx] [info] [VSPHERE.LOCAL\machine-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c] [] [239262] [vCenter Image Builder File System Resource status changed from Yellow to Green on vcsa.tanzu.local  ]
21Feb 11 18:36:32 vcsa.tanzu.local vpxd[42887]: Event [239263] [1-1] [2021-02-11T18:36:32.03918Z] [vim.event.EventEx] [info] [VSPHERE.LOCAL\machine-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c] [] [239263] [vCenter Log File System Resource status changed from Yellow to Green on vcsa.tanzu.local  ]
22Feb 11 18:36:32 vcsa.tanzu.local vpxd[42887]: Event [239264] [1-1] [2021-02-11T18:36:32.046504Z] [vim.event.EventEx] [info] [VSPHERE.LOCAL\machine-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c] [] [239264] [vCenter ESXi Dump Collector File System Resource status changed from Yellow to Green on vcsa.tanzu.local  ]
23Feb 11 18:36:32 vcsa.tanzu.local vpxd[42887]: Event [239265] [1-1] [2021-02-11T18:36:32.052491Z] [vim.event.EventEx] [info] [VSPHERE.LOCAL\machine-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c] [] [239265] [vCenter Update Manager File System Resource status changed from Yellow to Green on vcsa.tanzu.local  ]
24Feb 11 18:36:32 vcsa.tanzu.local vpxd[42887]: Event [239266] [1-1] [2021-02-11T18:36:32.058669Z] [vim.event.UserLogoutSessionEvent] [info] [VSPHERE.LOCAL\machine-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c] [] [239266] [User VSPHERE.LOCAL\machine-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c@127.0.0.1 logged out (login time: Thursday, 11 February, 2021 06:36:31 PM, number of API invocations: 34, user agent: pyvmomi Python/3.7.5 (Linux; 4.19.126-2.ph3; x86_64))]

journalctl で vMon のジャーナルを見てみる

ということで journalctl コマンドで vMon のジャーナルを見てみるとリモート syslog ストリーミングと同じフォーマットでイベントが取れました。

 1# journalctl -b -u vmware-vmon.service --no-pager | tail
 2Feb 11 17:38:49 vcsa.tanzu.local vpxd[42887]: Event [238747] [1-1] [2021-02-11T17:38:49.654764Z] [vim.event.UserLoginSessionEvent] [info] [VSPHERE.LOCAL\wcp-vmop-user-domain-c8-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c] [] [238747] [User VSPHERE.LOCAL\wcp-vmop-user-domain-c8-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c@192.168.0.106 logged in as Go-http-client/1.1]
 3Feb 11 17:38:55 vcsa.tanzu.local vpxd[42887]: Event [238748] [1-1] [2021-02-11T17:38:55.532846Z] [vim.event.UserLoginSessionEvent] [info] [VSPHERE.LOCAL\vpxd-extension-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c] [] [238748] [User VSPHERE.LOCAL\vpxd-extension-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c@127.0.0.1 logged in as VMware vim-java 1.0]
 4Feb 11 17:38:55 vcsa.tanzu.local vpxd[42887]: Event [238749] [1-1] [2021-02-11T17:38:55.687111Z] [vim.event.UserLogoutSessionEvent] [info] [VSPHERE.LOCAL\vpxd-extension-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c] [] [238749] [User VSPHERE.LOCAL\vpxd-extension-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c@127.0.0.1 logged out (login time: Thursday, 11 February, 2021 05:38:55 PM, number of API invocations: 3, user agent: VMware vim-java 1.0)]
 5Feb 11 17:39:05 vcsa.tanzu.local vpxd[42887]: Event [238750] [1-1] [2021-02-11T17:39:05.923455Z] [vim.event.AlarmStatusChangedEvent] [info] [] [Tanzu-Datacenter] [238750] [Alarm 'Virtual machine CPU usage' on jangari-tkc-01-control-plane-sp8lp changed from Gray to Green]
 6Feb 11 17:39:05 vcsa.tanzu.local vpxd[42887]: Event [238751] [1-1] [2021-02-11T17:39:05.923743Z] [vim.event.AlarmStatusChangedEvent] [info] [] [Tanzu-Datacenter] [238751] [Alarm 'Virtual machine memory usage' on jangari-tkc-01-control-plane-sp8lp changed from Gray to Green]
 7Feb 11 17:39:15 vcsa.tanzu.local vpxd[42887]: Event [238752] [1-1] [2021-02-11T17:39:15.924946Z] [vim.event.AlarmStatusChangedEvent] [info] [] [Tanzu-Datacenter] [238752] [Alarm 'Virtual machine CPU usage' on jangari-tkc-01-workers-v5ctf-77dc5dc95c-dmvfk changed from Gray to Green]
 8Feb 11 17:39:15 vcsa.tanzu.local vpxd[42887]: Event [238753] [1-1] [2021-02-11T17:39:15.925262Z] [vim.event.AlarmStatusChangedEvent] [info] [] [Tanzu-Datacenter] [238753] [Alarm 'Virtual machine memory usage' on jangari-tkc-01-workers-v5ctf-77dc5dc95c-dmvfk changed from Gray to Green]
 9Feb 11 17:39:15 vcsa.tanzu.local vpxd[42887]: Event [238754] [1-1] [2021-02-11T17:39:15.925485Z] [vim.event.AlarmStatusChangedEvent] [info] [] [Tanzu-Datacenter] [238754] [Alarm 'Virtual machine CPU usage' on jangari-tkc-01-workers-v5ctf-77dc5dc95c-79pwj changed from Gray to Green]
10Feb 11 17:39:15 vcsa.tanzu.local vpxd[42887]: Event [238755] [1-1] [2021-02-11T17:39:15.925652Z] [vim.event.AlarmStatusChangedEvent] [info] [] [Tanzu-Datacenter] [238755] [Alarm 'Virtual machine memory usage' on jangari-tkc-01-workers-v5ctf-77dc5dc95c-79pwj changed from Gray to Green]
11Feb 11 17:39:20 vcsa.tanzu.local vpxd[42887]: Event [238756] [1-1] [2021-02-11T17:39:20.803896Z] [vim.event.TaskEvent] [info] [VSPHERE.LOCAL\wcp-vmop-user-domain-c8-5cdf52ed-90c2-4fdc-bf47-2ca30a0f266c] [] [238756] [Task: Fetch Content of a Library Item]

ファイルにリダイレクトすればテキストファイルとして保存もできると思います。なお、vCenter Server のイベント以外にも systemd によって vmon が起動されたメッセージなどもあったので、イベントだけ取るなら vpxd や Event で grep した方が良いかもしれません。

おわりに

今回の記事では journalctl で vCenter Server のイベント(厳密には vMon のジャーナル)を取得してみました。

「vSphere 7.0 を使ってます。PowerCLI はインストールできません。syslog サーバも無いです。でもどうしてもイベントをテキストで保存したいです。」みたいな超限定的な要件がある場合にはもしかしたら使えるかもしれません。

なお、冒頭に記載した通り、公開情報は見当たらずサポートもされないと思いますので使用する場合は自己責任でお願いします。


  1. VMware vCenter Server (vpxd) サービスや vSphere Client (vsphere-ui) サービスなどの起動や停止はこの vMon が管理しています。KB2109881 にも記載されていますが、個別のサービスを操作する場合は GUI か service-control コマンドで操作する必要があります。Windows のサービスとしての操作や Linux の systemctl による操作などはやめましょう。 ↩︎