[comment]: # ({7ddf901c-7bc79a95})
# 4 VMware監視設定例

[comment]: # ({/7ddf901c-7bc79a95})

[comment]: # ({3c9549aa-4948cb9c})
#### 概要

以下の例では、VMware 仮想マシンを監視するための Zabbix の設定方法について説明します。設定手順は以下のとおりです。

- VMware 環境を表すホストを作成します。
- VMware 環境内の仮想マシンを検出する低レベル検出ルールを作成します。
- ホストプロトタイプを作成します。このプロトタイプに基づいて、Zabbix は低レベル検出ルールによって検出された仮想マシンの実際のホストを生成します。

[comment]: # ({/3c9549aa-4948cb9c})

[comment]: # ({8d40aabd-5d265fdc})
#### 前提条件

::: noteclassic
この例ではVMwareの設定については説明しません。VMwareはすでに設定されていることを前提としています。
:::

続行する前に、Zabbixサーバー設定ファイルの[`StartVMwareCollectors`](/manual/appendix/config/zabbix_server#startvmwarecollectors)パラメータを`2` [以上](/manual/vm_monitoring#configuration)に設定してください（デフォルト値は`0`です）。

[comment]: # ({/8d40aabd-5d265fdc})

[comment]: # ({ae84527f-05232a19})
#### ホストの作成

1\. *データ収集*→l[*ホスト*](/manual/web_interface/frontend_sections/data_collection/hosts) に移動します。

2\. ホストを[作成](/manual/config/hosts/host)します。

- *ホスト名* フィールドにホスト名を入力します（例："VMware VMs"）
- *ホストグループ* フィールドにホストグループを入力または選択します（例："仮想マシン"）

![](../../../assets/en/manual/vm_monitoring/vmware_host.png){width="600"}

- *マクロ* タブで、以下のホストマクロを設定します。
    - {$VMWARE.URL} - VMware サービス (ESXi ハイパーバイザー) SDK URL (https://servername/sdk)
    - {$VMWARE.USERNAME} - VMware サービス ユーザー名
    - {$VMWARE.PASSWORD} - VMware サービス {$VMWARE.USERNAME} ユーザー パスワード

![](../../../assets/en/manual/vm_monitoring/vmware_host_macros.png){width="600"}

3\. *追加* ボタンをクリックしてホストを作成します。このホストが VMware 環境を表します。

[comment]: # ({/ae84527f-05232a19})

[comment]: # ({7fa8a958-967b85cf})
#### ローレベルディスカバリルールの作成

1\. 作成したホストの *検出* をクリックし、そのホストのローレベルディスカバリルールのリストに移動します。

2\. ローレベルディスカバリルールを[作成](/manual/discovery/low_level_discovery#configuring-low-level-discovery)します。

- *名前* フィールドに、ローレベルディスカバリルールの名前を入力します（例："VMware VMの検出"）
- *タイプ* フィールドで、"[シンプルチェック](/manual/config/items/itemtypes/simple_checks)"を選択します。
- *キー*フィールドに、VMware仮想マシンを検出するための組み込みアイテムキーを入力します: [`vmware.vm.discovery[{$VMWARE.URL}]`](/manual/vm_monitoring/vmware_keys#vmware.vm.discovery)
- *ユーザー名* フィールドと*パスワード*フィールドに、ホストで事前に設定した対応するマクロを入力します。

![](../../../assets/en/manual/vm_monitoring/vmware_host_discovery.png){width="600"}

3\. *追加* ボタンをクリックして、ローレベルディスカバリルールを作成します。
このディスカバリルールは、VMware環境内の仮想マシンを検出します。

[comment]: # ({/7fa8a958-967b85cf})

[comment]: # ({3c0bd2af-4202131d})
#### ホストプロトタイプの作成

1\. ローレベルディスカバリルールのリストで、以前に作成したローレベルディスカバリルールの*ホストプロトタイプ*をクリックします。

2\. ホストプロトタイプを[作成](/manual/discovery/low_level_discovery/host_prototypes#configuration)します。
ホストプロトタイプは、ローレベルディスカバリルールを使用してホストを作成するための設計図であるため、ほとんどのフィールドには[ローレベルディスカバリマクロ](/manual/config/macros/lld_macros)が含まれます。
これにより、以前に作成したローレベルディスカバリルールによって[取得されたコンテンツ](/manual/vm_monitoring/discovery_fields)に基づいたプロパティでホストが作成されます。

- *ホスト名*フィールドに、マクロ{#VM.UUID}を入力します。
- *表示名*フィールドに、マクロ{#VM.NAME}を入力します。
- *テンプレート* フィールドに"VMware ゲスト"テンプレートを入力または選択します。
このテンプレートには、仮想マシンの電源状態、CPU 使用率、メモリ使用率、ネットワークデバイスなどを監視するための [VMware アイテム](/manual/vm_monitoring/vmware_keys) と検出ルールが含まれています。
- *ホストグループ* フィールドに、ホストグループ（例："検出されたホスト"）を入力または選択します。
- *インターフェース* フィールドに、カスタムの [ホストインターフェース](/manual/discovery/low_level_discovery/host_prototypes#host-interfaces) を追加します。
次に、*DNS 名* フィールドにマクロ {#VM.DNS} を入力するか、*IP アドレス* フィールドにマクロ {#VM.IP} を入力します。
または、VMware 環境の仮想マシンに複数のインターフェースがある場合は、[*高度なホストインターフェース構成*](#advanced-host-interface-configuration) セクションに進んでください。
*VMware Guest* テンプレートを正しく動作させるには、カスタムホストインターフェースの設定が必要です。

![](../../../assets/en/manual/vm_monitoring/vmware_host_prototype.png){width="600"}

- *Macros* タブで、{$VMWARE.VM.UUID} マクロの値を {#VM.UUID} に設定します。
これは、アイテムパラメータでこのマクロをホストレベルのユーザーマクロとして使用する *VMware Guest* テンプレートを正しく動作させるために必要です。
(例: *vmware.vm.net.if.discovery\[{$VMWARE.URL}, {$VMWARE.VM.UUID}\]*)

![](../../../assets/en/manual/vm_monitoring/vmware_host_prototype_macros.png){width="600"}

3\. *追加* ボタンをクリックしてホストプロトタイプを作成します。
このホストプロトタイプは、先ほど作成したローレベルディスカバリルールによって検出された仮想マシン用のホストを作成するために使用されます。

[comment]: # ({/3c0bd2af-4202131d})

[comment]: # ({3e8fd594-92a7e887})
#### ホストとメトリックの表示

ホストのプロトタイプが作成されると、ローレベルディスカバリルールによって検出されたVMware仮想マシン用のホストが作成され、Zabbixがそれらの監視を開始します。
ホストの検出と作成は、必要に応じて[手動で実行](/manual/config/items/check_now)することもできます。

作成されたホストを表示するには、[*データ収集* → *ホスト*](/manual/web_interface/frontend_sections/data_collection/hosts)メニューセクションに移動してください。

![](../../../assets/en/manual/vm_monitoring/vmware_discovered_hosts.png){width="600"}

収集されたメトリックを表示するには、[*モニタリング* → *ホスト*](/manual/web_interface/frontend_sections/monitoring/hosts) メニューセクションに移動し、いずれかのホストの*最新データ*をクリックします。

![](../../../assets/en/manual/vm_monitoring/vmware_monitored_hosts.png){width="600"}

[comment]: # ({/3e8fd594-92a7e887})

[comment]: # ({2e5060fa-2c1d07a4})
#### ホストインターフェースの詳細設定

[*低レベル検出ルールの作成*](#create-a-low-level-discovery-rule) セクションで設定された `vmware.vm.discovery[{$VMWARE.URL}]` アイテムキーは、["net_if" フィールド](/manual/vm_monitoring/discovery_fields) にネットワークインターフェースのデータを返します。

```json
"net_if": [
      {
        "ifname": "5000",
        "ifdesc": "Network adapter 1",
        "ifmac": "00:11:22:33:44:55",
        "ifconnected": true,
        "iftype": "VirtualVmxnet3",
        "ifbackingdevice": "VLAN(myLab)",
        "ifdvswitch_uuid": "",
        "ifdvswitch_portgroup": "",
        "ifdvswitch_port": "",
        "ifip": [
          "127.0.0.1",
          "::1"
        ]
      },
      {
        "ifname": "5001",
        "ifdesc": "Network adapter 2",
        "ifmac": "00:11:22:33:44:55",
        "ifconnected": false,
        "iftype": "VirtualVmxnet3",
        "ifbackingdevice": "VLAN(myLab2)",
        "ifdvswitch_uuid": "",
        "ifdvswitch_portgroup": "",
        "ifdvswitch_port": "",
        "ifip": []
      }
    ]
```

このデータは、カスタムホストインターフェースの設定に使用できます。

1\. [低レベル検出ルールを作成](#create-a-low-level-discovery-rule) する際に、[低レベル検出マクロ](/manual/config/macros/lld_macros) を追加で設定します。
*LLD マクロ* タブで、[JSONPath](/manual/config/items/preprocessing/jsonpath_functionality) 値を指定したカスタム LLD マクロを作成します。例:

- {#MYLAB.NET.IF} - `$.net_if[?(@.ifbackingdevice=="VLAN(myLab)")].ifip[0].first()`

![](../../../assets/en/manual/vm_monitoring/vmware_lld_macro.png){width="600"}

2\. [ホストプロトタイプを作成](#create-a-host-prototype) する際に、カスタムホストインターフェイスを追加し、*DNS 名* または *IP アドレス* フィールドに LLD マクロを入力します。

![](../../../assets/en/manual/vm_monitoring/vmware_lld_macro_host_prototype.png){width="600"}

[comment]: # ({/2e5060fa-2c1d07a4})
