8 Überwachung virtueller Maschinen

Überblick

Zabbix kann Regeln für die Low-Level-Discovery verwenden, um VMware-Hypervisoren und virtuelle Maschinen automatisch zu erkennen und Hosts zu erstellen, um sie auf Grundlage vordefinierter Host-Prototypen zu überwachen.

Zabbix enthält außerdem einsatzbereite Vorlagen für die Überwachung von VMware vCenter- oder ESXi-Hypervisoren.

Die mindestens erforderliche VMware vCenter- oder vSphere-Version ist 5.1.

Datenerfassung

Die Überwachung virtueller Maschinen besteht aus zwei Schritten:

  1. Zabbix-vmware collector-Prozesse sammeln Daten virtueller Maschinen – die Prozesse beziehen die erforderlichen Informationen über das SOAP-Protokoll von VMware-Webservices, verarbeiten sie vor und speichern sie im Shared Memory des Zabbix Server.

  2. Zabbix-poller-Prozesse rufen Daten mithilfe des einfachen Zabbix-Checks VMware monitoring item keys ab.

Zabbix unterteilt die gesammelten Daten in VMware-Konfigurationsdaten und VMware-Performance-Counter-Daten.
Beide Datentypen werden unabhängig voneinander von den vmware collector-Prozessen erfasst.

Die folgenden Statistiken sind auf Grundlage der Informationen aus den VMware-Performance-Countern verfügbar:

  • Datenspeicher
  • Festplattengerät
  • CPU
  • Stromversorgung
  • Netzwerkschnittstelle
  • Benutzerdefinierte Performance-Counter-Datenpunkte

Die vollständige Liste der Datenpunkte, die Daten aus VMware-Performance-Countern beziehen, finden Sie unter VMware monitoring item keys.

Beachten Sie, dass die Häufigkeit des Abrufs von VMware-Ereignissen vom Abfrageintervall von vmware.eventlog abhängt, jedoch nicht unter 5 Sekunden liegen kann.

Konfiguration

Wenn der Zabbix Server aus Quellen kompiliert wird, muss er mit den Konfigurationsoptionen --with-libcurl --with-libxml2 kompiliert werden, um die Überwachung virtueller Maschinen zu aktivieren. Zabbix-Pakete werden bereits mit aktivierten Optionen kompiliert.

Die folgenden Parameter der Zabbix-Server-Konfigurationsdatei können für die Überwachung virtueller Maschinen geändert werden:

Es wird empfohlen, mehr Collector-Prozesse zu aktivieren als VMware-Services überwacht werden; andernfalls kann das Abrufen von VMware-Performance-Counter-Statistiken durch das Abrufen von VMware-Konfigurationsdaten verzögert werden (was bei großen Installationen einige Zeit in Anspruch nimmt).

Im Allgemeinen sollte der Wert von StartVMwareCollectors nicht unter 2 liegen und nicht mehr als das Doppelte der Anzahl überwachter VMware-Services betragen: Anzahl der Services < StartVMwareCollectors < (Anzahl der Services * 2). Wenn beispielsweise ein VMware-Service überwacht wird, setzen Sie StartVMwareCollectors auf 2; bei der Überwachung von drei Services setzen Sie StartVMwareCollectors auf 5.

Beachten Sie, dass die erforderliche Anzahl an Collector-Prozessen auch vom Umfang der VMware-Umgebung sowie von den Konfigurationsparametern VMwareFrequency und VMwarePerfFrequency abhängt.

Um Metriken zur Datastore-Kapazität zu unterstützen, stellen Sie sicher, dass der Wert des VMware-Schlüssels vpxd.stats.maxQueryMetrics auf mindestens 64 gesetzt ist. Weitere Informationen finden Sie im Artikel VMware Knowledge Base.

Discovery

Zabbix kann Low-Level-Discovery-Regeln (zum Beispiel vmware.hv.discovery[{$VMWARE.URL}]) verwenden, um VMware-Hypervisoren und virtuelle Maschinen automatisch zu erkennen. Außerdem kann Zabbix Host-Prototypen verwenden, um automatisch echte Hosts für die erkannten Entitäten zu erzeugen. Weitere Informationen finden Sie unter Host prototypes.

Configuration examples

For a basic example of how to set up Zabbix for monitoring VMware using the VMware FQDN template, see Monitor VMware with Zabbix.

For a more detailed example of how to create a host, a low-level discovery rule, and a host prototype for monitoring VMware, see Setup example.

Erweiterte Protokollierung

Die von den Prozessen des vmware collector gesammelten Daten können zur detaillierten Fehlersuche mit Debug-Level 5 protokolliert werden. Das Debug-Level kann in den Konfigurationsdateien von Server und Proxy oder mithilfe der Laufzeitsteuerungsoption -R log_level_increase="vmware collector,N" konfiguriert werden, wobei "N" die Prozessnummer ist.

Um beispielsweise das Debug-Level für alle Prozesse des vmware collector von 4 auf 5 zu erhöhen, führen Sie den folgenden Befehl aus:

zabbix_server -R log_level_increase="vmware collector"

Um das Debug-Level für den zweiten Prozess des vmware collector von 4 auf 5 zu erhöhen, führen Sie den folgenden Befehl aus:

zabbix_server -R log_level_increase="vmware collector,2"

Wenn die erweiterte Protokollierung von VMware-Collector-Daten nicht mehr erforderlich ist, wird empfohlen, das Debug-Level durch Ausführen des Befehls -R log_level_decrease auf den Standardwert (3) zu verringern.

Fehlerbehebung

  • Falls Metriken nicht verfügbar sind, stellen Sie bitte sicher, dass sie in aktuellen VMware vSphere-Versionen nicht standardmäßig als nicht verfügbar markiert oder deaktiviert sind und dass keine Beschränkungen für Abfragen an die Performance-Metrik-Datenbank gesetzt sind. Weitere Informationen finden Sie unter ZBX-12094.
  • Wenn der Fehler config.vpxd.stats.maxQueryMetrics is invalid or exceeds the maximum number of characters permitted auftritt, fügen Sie den Parameter config.vpxd.stats.maxQueryMetrics zu den Einstellungen des vCenter Server hinzu. Der Wert dieses Parameters sollte mit dem Wert von maxQuerysize in der VMware-Datei web.xml übereinstimmen. Weitere Informationen finden Sie im Artikel VMware Knowledge Base.
  • Wenn Sie vermuten, dass Ihre Zabbix-Installation zu viel Speicher verwendet, siehe Profiling excessive memory usage with tcmalloc.