4 Przykład konfiguracji monitorowania VMware
Przegląd
Poniższy przykład opisuje, jak skonfigurować Zabbix do monitorowania maszyn wirtualnych VMware. Obejmuje to:
- utworzenie hosta reprezentującego środowisko VMware;
- utworzenie reguły wykrywania niskiego poziomu, która wykrywa maszyny wirtualne w środowisku VMware;
- utworzenie prototypu hosta, na podstawie którego Zabbix wygeneruje rzeczywiste hosty dla maszyn wirtualnych wykrytych przez regułę wykrywania niskiego poziomu.
Wymagania wstępne
Ten przykład nie obejmuje konfiguracji VMware. Zakłada się, że VMware jest już skonfigurowane.
Przed kontynuowaniem ustaw parametr StartVMwareCollectors w pliku konfiguracyjnym serwera Zabbix na 2 lub więcej (wartość domyślna to 0).
Utwórz host
1. Przejdź do Data collection → Hosts.
2. Utwórz host:
- W polu Host name wprowadź nazwę hosta (na przykład „VMware VMs”).
- W polu Host groups wpisz lub wybierz grupę hostów (na przykład „Virtual machines”).

- Na karcie Macros ustaw następujące makra hosta:
- {$VMWARE.URL} — adres URL SDK usługi VMware (hipernadzorcy ESXi) (https://servername/sdk)
- {$VMWARE.USERNAME} — nazwa użytkownika usługi VMware
- {$VMWARE.PASSWORD} — hasło użytkownika {$VMWARE.USERNAME} usługi VMware

3. Kliknij przycisk Add, aby utworzyć host. Ten host będzie reprezentować Twoje środowisko VMware.
Utwórz regułę wykrywania niskiego poziomu
1. Kliknij Discovery dla utworzonego hosta, aby przejść do listy reguł wykrywania niskiego poziomu dla tego hosta.
2. Utwórz regułę wykrywania niskiego poziomu:
- W polu Name wprowadź nazwę reguły wykrywania niskiego poziomu (na przykład „Wykryj maszyny wirtualne VMware”).
- W polu Type wybierz „Simple check”.
- W polu Key wprowadź wbudowany klucz pozycji do wykrywania maszyn wirtualnych VMware:
vmware.vm.discovery[{$VMWARE.URL}] - W polach User name i Password wprowadź odpowiednie makra wcześniej skonfigurowane na hoście.

3. Kliknij przycisk Add, aby utworzyć regułę wykrywania niskiego poziomu. Ta reguła wykrywania wykryje maszyny wirtualne w Twoim środowisku VMware.
Utwórz prototyp hosta
1. Na liście reguł wykrywania niskiego poziomu kliknij Host prototypes dla wcześniej utworzonej reguły wykrywania niskiego poziomu.
2. Utwórz prototyp hosta. Ponieważ prototypy hostów są wzorcami do tworzenia hostów za pomocą reguł wykrywania niskiego poziomu, większość pól będzie zawierać makra wykrywania niskiego poziomu. Zapewnia to tworzenie hostów z właściwościami opartymi na zawartości pobranej przez wcześniej utworzoną regułę wykrywania niskiego poziomu.
- W polu Host name wprowadź makro {#VM.UUID}.
- W polu Visible name wprowadź makro {#VM.NAME}.
- W polu Templates wprowadź lub wybierz szablon "VMware Guest". Ten szablon zawiera pozycje VMware oraz reguły wykrywania do monitorowania stanu zasilania maszyny wirtualnej, użycia CPU, użycia pamięci, urządzeń sieciowych itp.
- W polu Host groups wprowadź lub wybierz grupę hostów (na przykład "Discovered hosts").
- W polu Interfaces dodaj niestandardowy interfejs hosta. Następnie wprowadź makro {#VM.DNS} w polu DNS name lub wprowadź makro {#VM.IP} w polu IP address. Alternatywnie, jeśli maszyny wirtualne w Twoim środowisku VMware mają wiele interfejsów, przejdź do sekcji Zaawansowana konfiguracja interfejsu hosta. Skonfigurowanie niestandardowego interfejsu hosta jest konieczne do prawidłowego działania szablonu VMware Guest.

- Na karcie Macros ustaw makro {$VMWARE.VM.UUID} z wartością {#VM.UUID}. Jest to konieczne do prawidłowego działania szablonu VMware Guest, który używa tego makra jako makra użytkownika na poziomie hosta w parametrach pozycji (na przykład vmware.vm.net.if.discovery[{$VMWARE.URL}, {$VMWARE.VM.UUID}]).

3. Kliknij przycisk Add, aby utworzyć prototyp hosta. Ten prototyp hosta będzie używany do tworzenia hostów dla maszyn wirtualnych wykrytych przez wcześniej utworzoną regułę wykrywania niskiego poziomu.
Wyświetlanie hostów i metryk
Po utworzeniu prototypu hosta reguła wykrywania niskiego poziomu utworzy hosty dla wykrytych maszyn wirtualnych VMware, a Zabbix rozpocznie ich monitorowanie. Należy pamiętać, że wykrywanie i tworzenie hostów można również wykonać ręcznie, jeśli to konieczne.
Aby wyświetlić utworzone hosty, przejdź do sekcji menu Zbieranie danych → Hosty.

Aby wyświetlić zebrane metryki, przejdź do sekcji menu Monitorowanie → Hosty i kliknij Najnowsze dane dla jednego z hostów.

Zaawansowana konfiguracja interfejsu hosta
Klucz pozycji vmware.vm.discovery[{$VMWARE.URL}], skonfigurowany w sekcji Utwórz regułę wykrywania niskiego poziomu, zwraca dane interfejsów sieciowych w polu "net_if":
"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": []
}
]
Dane te można wykorzystać do skonfigurowania niestandardowego interfejsu hosta.
1. Podczas tworzenia reguły wykrywania niskiego poziomu dodatkowo skonfiguruj makro wykrywania niskiego poziomu. Na karcie Makra LLD utwórz niestandardowe makro LLD z wartością JSONPath. Na przykład:
- {#MYLAB.NET.IF} -
$.net_if[?(@.ifbackingdevice=="VLAN(myLab)")].ifip[0].first()

2. Podczas tworzenia prototypu hosta dodaj niestandardowy interfejs hosta i wprowadź makro LLD w polu Nazwa DNS lub Adres IP.
