Se encuentra viendo la documentación de la versión en desarrollo, puede estar incompleta.
Únase a nuestro proyecto de traducción y ayude a traducir la documentación de Zabbix a su lengua materna.

4 Ejemplo de configuración de monitoreo de VMware

Descripción general

El siguiente ejemplo describe cómo configurar Zabbix para monitorear máquinas virtuales VMware. Esto involucra:

  • crear un equipo que represente su entorno VMware;
  • crear una regla de descubrimiento de bajo nivel que descubra máquinas virtuales en su entorno VMware;
  • crear un prototipo de equipo, a partir del cual Zabbix generará equipos reales para las máquinas virtuales descubiertas mediante la regla de descubrimiento de bajo nivel.

Requisitos previos

Este ejemplo no cubre la configuración de VMware. Se supone que VMware ya está configurado.

Antes de continuar, establezca el parámetro StartVMwareCollectors en el archivo de configuración del servidor Zabbix en 2 o más (el valor predeterminado es 0).

Crear un equipo

1. Vaya a Recopilación de datosEquipos.

2. Crear un equipo:

  • En el campo Nombre de equipo, ingrese un nombre de equipo (por ejemplo, "VMware VM").
  • En el campo Grupos de equipos, escriba o seleccione un grupo de equipos (por ejemplo, "Máquinas virtuales").

  • En la pestaña Macros, configure las siguientes macros de equipo:
    • {$VMWARE.URL} - URL del SDK del servicio VMware (hipervisor ESXi) (https://servername/sdk)
    • {$VMWARE.USERNAME} - Nombre de usuario del servicio VMware
    • {$VMWARE.PASSWORD} - Contraseña de usuario del servicio VMware {$VMWARE.USERNAME}

3. Haga clic en el botón Agregar para crear el equipo. Este equipo representará su entorno VMware.

Crear una regla de descubrimiento de bajo nivel

1. Haga clic en Descubrimiento para que el equipo creado vaya a la lista de reglas de descubrimiento de bajo nivel para ese equipo.

2. Crear una regla de descubrimiento de bajo nivel:

  • En el campo Nombre, ingrese un nombre de regla de descubrimiento de bajo nivel (por ejemplo, "Descubrir VMware VM").
  • En el campo Tipo, seleccione "Comprobación simple".
  • En el campo Clave, ingrese la clave del elemento integrado para descubrir máquinas virtuales VMware: vmware.vm.discovery[{$VMWARE.URL}]
  • En los campos Nombre de usuario y Contraseña, introduzca las macros correspondientes previamente configuradas en el host.

3. Haga clic en el botón Agregar para crear la regla de descubrimiento de bajo nivel. Esta regla de descubrimiento descubrirá máquinas virtuales en su entorno VMware.

Create a host prototype

1. In the list of low-level discovery rules, click Host prototypes for the previously created low-level discovery rule.

2. Create a host prototype. Since host prototypes are blueprints for creating hosts through low-level discovery rules, most fields will contain low-level discovery macros. This ensures that the hosts are created with properties based on the content retrieved by the previously created low-level discovery rule.

  • In the Host name field, enter the macro {#VM.UUID}.
  • In the Visible name field, enter the macro {#VM.NAME}.
  • In the Templates field, enter or select the "VMware Guest" template. This template contains VMware items and discovery rules for monitoring the power state of a virtual machine, CPU usage, memory usage, network devices, etc.
  • In the Host groups field, enter or select a host group (for example, "Discovered hosts").
  • In the Interfaces field, add a custom host interface and, in the DNS name field, enter the macro {#VM.DNS}. Alternatively (based on the configuration of your VMware environment), in the IP address field, enter the macro {#VM.IP}. This is necessary for the correct functioning of the VMware Guest template.

  • In the Macros tab, set the {$VMWARE.VM.UUID} macro with the value {#VM.UUID}. This is necessary for the correct functioning of the VMware Guest template that uses this macro as a host-level user macro in item parameters (for example, vmware.vm.net.if.discovery[{$VMWARE.URL}, {$VMWARE.VM.UUID}]).

3. Click the Add button to create the host prototype. This host prototype will be used to create hosts for virtual machines discovered by the previously created low-level discovery rule.

Ver equipos y métricas

Una vez creado el prototipo de equipo, la regla de descubrimiento de bajo nivel creará equipos para las máquinas virtuales VMware descubiertas y Zabbix comenzará a monitorearlas. Tenga en cuenta que el descubrimiento y la creación de equipos también se pueden ejecutar manualmente, si es necesario.

Para ver los equipos creados, navegue hasta la sección del menú Recopilación de datosEquipos.

Para ver las métricas recopiladas, navegue hasta la sección del menú MonitoreoEquipos y haga clic en Últimos datos para uno de los equipos.

Advanced host interface configuration

The vmware.vm.discovery[{$VMWARE.URL}] item key, configured in the Create a low-level discovery rule section, returns network interfaces data in the "net_if" field:

"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": []
             }
           ]

This data can be used to configure a custom host interface.

1. When creating a low-level discovery rule, additionally configure a low-level discovery macro. In the LLD macros tab, create a custom LLD macro with a JSONPath value. For example:

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

2. When creating a host prototype, add a custom host interface and enter the LLD macro in the DNS name or IP address field.