[comment]: # translation:outdated

[comment]: # ({3ca85094-3ca85094})
# 10. 仮想マシン監視

[comment]: # ({/3ca85094-3ca85094})

[comment]: # ({9629b83b-621e23e6})
#### 概要

Zabbixは、[ローレベルディスカバリ](/manual/discovery/low_level_discovery)ルールを使用してVMwareハイパーバイザーおよび仮想マシンを自動的に検出し、
事前定義された[ホストプロトタイプ](/manual/discovery/low_level_discovery/host_prototypes)に基づいて、それらを監視するためのホストを作成できます。

Zabbixには、VMware vCenterまたはESXiハイパーバイザーを監視するための[すぐに使えるテンプレート](/manual/config/templates_out_of_the_box/vmware)も含まれています。

必要なVMware vCenterまたはvSphereの最小バージョンは5.1です。

[comment]: # ({/9629b83b-621e23e6})

[comment]: # ({7c4732bd-4c2e8939})
#### データ収集

仮想マシンの監視は、次の2つのステップで構成されます。

1. Zabbixの *vmware collector* プロセスが仮想マシンのデータを収集します。これらのプロセスは、SOAPプロトコルを介してVMware Webサービスから必要な情報を取得し、前処理を行ったうえで、Zabbixサーバーの共有メモリに保存します。

2. Zabbixの *poller* プロセスが、Zabbixのシンプルチェック [VMware monitoring item keys](/manual/vm_monitoring/vmware_keys) を使用してデータを取得します。

Zabbixは、収集したデータをVMware設定データとVMwareパフォーマンスカウンターデータに分類します。  
これら2種類のデータは、いずれも *vmware collector* プロセスによって独立して収集されます。

VMwareパフォーマンスカウンター情報に基づいて、次の統計情報を利用できます。

- データストア
- ディスクデバイス
- CPU
- 電源
- ネットワークインターフェース
- カスタムパフォーマンスカウンターのアイテム

VMwareパフォーマンスカウンターからデータを取得するアイテムの完全な一覧については、[*VMware monitoring item keys*](/manual/vm_monitoring/vmware_keys#footnotes) を参照してください。

VMwareイベントの取得頻度は、[vmware.eventlog](/manual/vm_monitoring/vmware_keys#vmware.eventlog) のポーリング間隔に依存しますが、5秒未満にはできないことに注意してください。

[comment]: # ({/7c4732bd-4c2e8939})

[comment]: # ({ef4a06c9-68c3f7d5})
#### 設定

Zabbixサーバーを[sources](/manual/installation/install#configure_the_sources)からコンパイルする場合、仮想マシン監視を有効にするには、`--with-libcurl --with-libxml2` 設定オプションを指定してコンパイルする必要があります。
Zabbixパッケージは、これらのオプションがすでに有効な状態でコンパイルされています。

仮想マシン監視では、以下のZabbixサーバー設定ファイルパラメータを変更できます。

- [`StartVMwareCollectors`](/manual/appendix/config/zabbix_server#startvmwarecollectors)

::: noteclassic
監視対象のVMwareサービス数より多くのコレクターを有効にすることを推奨します。
そうしないと、VMware設定データの取得（大規模環境では時間がかかります）によって、VMwareパフォーマンスカウンター統計の取得が遅延する可能性があります。
<br><br>
一般的に、`StartVMwareCollectors` の値は `2` 未満にすべきではなく、監視対象のVMwareサービス数の2倍を超えないようにする必要があります: サービス数 < `StartVMwareCollectors` < (サービス数 \* 2)。
たとえば、1つのVMwareサービスを監視する場合は `StartVMwareCollectors` を `2` に設定し、3つのサービスを監視する場合は `5` に設定します。
<br><br>
必要なコレクター数は、VMware環境の規模、および `VMwareFrequency` と `VMwarePerfFrequency` の設定パラメータにも依存することに注意してください。
:::

- [`VMwareCacheSize`](/manual/appendix/config/zabbix_server#vmwarecachesize)
- [`VMwareFrequency`](/manual/appendix/config/zabbix_server#vmwarefrequency)
- [`VMwarePerfFrequency`](/manual/appendix/config/zabbix_server#vmwareperffrequency)
- [`VMwareTimeout`](/manual/appendix/config/zabbix_server#vmwaretimeout)

::: noteimportant
データストア容量メトリクスをサポートするには、VMware の `vpxd.stats.maxQueryMetrics` キーの値が少なくとも `64` に設定されていることを確認してください。
詳細については、[*VMware Knowledge Base* article](https://kb.vmware.com/s/article/2107096) を参照してください。
:::

[comment]: # ({/ef4a06c9-68c3f7d5})

[comment]: # ({dc05cb06-e5966479})
##### ディスカバリ

Zabbixは、低レベルディスカバリルール（例: *vmware.hv.discovery\[{$VMWARE.URL}\]*）を使用して、VMwareハイパーバイザーおよび仮想マシンを自動的に検出できます。
さらに、Zabbixはホストプロトタイプを使用して、検出されたエンティティに対応する実際のホストを自動的に生成できます。
詳細については、[*ホストプロトタイプ*](/manual/discovery/low_level_discovery/host_prototypes)を参照してください。

[comment]: # ({/dc05cb06-e5966479})

[comment]: # ({b1610a0a-38145b5c})
##### 設定例

*VMware FQDN* テンプレートを使用して VMware を監視するための Zabbix の設定方法の基本的な例については、[*Zabbix による VMware の監視*](/manual/guides/monitor_vmware) を参照してください。

VMware を監視するためのホスト、低レベル検出ルール、およびホストプロトタイプの作成方法の詳細な例については、[*設定例*](/manual/vm_monitoring/example) を参照してください。

[comment]: # ({/b1610a0a-38145b5c})

[comment]: # ({6f6ab067-44948bb1})
#### 拡張ログ

*vmware collector* プロセスによって収集されたデータは、デバッグレベル5を使用して詳細なデバッグのためにログへ記録できます。
デバッグレベルは、[サーバー](/manual/appendix/config/zabbix_server#debuglevel) および [プロキシ](/manual/appendix/config/zabbix_proxy#debuglevel) の設定ファイルで設定するか、
ランタイム制御オプション `-R log_level_increase="vmware collector,N"` を使用して設定できます。ここで "N" はプロセス番号です。

例えば、すべての *vmware collector* プロセスのデバッグレベルを 4 から 5 に上げるには、次のコマンドを実行します。

    zabbix_server -R log_level_increase="vmware collector"

2 番目の *vmware collector* プロセスのデバッグレベルを 4 から 5 に上げるには、次のコマンドを実行します。

    zabbix_server -R log_level_increase="vmware collector,2"

VMware collector データの拡張ログが不要になった場合は、`-R log_level_decrease` コマンドを実行して、デバッグレベルをデフォルト (3) に下げることを推奨します。

[comment]: # ({/6f6ab067-44948bb1})

[comment]: # ({cc21c6f6-f6f9d3ef})
#### トラブルシューティング

- メトリクスを利用できない場合は、最近のVMware vSphereバージョンでそれらがデフォルトで利用不可または無効になっていないこと、またはパフォーマンスメトリクスのデータベースクエリに何らかの制限が設定されていないことを確認してください。  
  詳細については、[ZBX-12094](https://support.zabbix.com/browse/ZBX-12094)を参照してください。
- `config.vpxd.stats.maxQueryMetrics` が無効である、または許可されている最大文字数を超えているというエラーが表示される場合は、vCenter Serverの設定に `config.vpxd.stats.maxQueryMetrics` パラメータを追加してください。  
  このパラメータの値は、VMwareの *web.xml* ファイル内の `maxQuerysize` の値と同じである必要があります。  
  詳細については、[*VMware Knowledge Base* の記事](https://kb.vmware.com/s/article/2107096)を参照してください。
- Zabbixインストール環境でメモリを過剰に使用している疑いがある場合は、[tcmallocを使用した過剰なメモリ使用量のプロファイリング](/manual/installation/known_issues#profiling-excessive-memory-usage-with-tcmalloc)を参照してください。

[comment]: # ({/cc21c6f6-f6f9d3ef})
