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:
-
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.
-
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 diesen aktivierten Optionen kompiliert.
Die folgenden Parameter der Zabbix-Server-Konfigurationsdatei können für die Überwachung virtueller Maschinen angepasst werden:
Es wird empfohlen, mehr Collector zu aktivieren als die Anzahl der überwachten VMware-Dienste;
andernfalls kann sich das Abrufen der VMware-Performance-Counter-Statistiken durch das Abrufen der VMware-Konfigurationsdaten verzögern (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 der überwachten VMware-Dienste betragen: Anzahl der Dienste < StartVMwareCollectors < (Anzahl der Dienste * 2).
Wenn beispielsweise ein VMware-Dienst überwacht wird, setzen Sie StartVMwareCollectors auf 2; wenn drei Dienste überwacht werden, setzen Sie StartVMwareCollectors auf 5.
Beachten Sie, dass die erforderliche Anzahl an Collector auch vom Umfang der VMware-Umgebung sowie von den Konfigurationsparametern VMwareFrequency und VMwarePerfFrequency abhängt.
Um Datenspeicher-Kapazitätsmetriken zu unterstützen, stellen Sie sicher, dass der Wert des VMware-Schlüssels vpxd.stats.maxQueryMetrics mindestens auf 64 gesetzt ist.
Weitere Informationen finden Sie im Artikel der 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 entdecken.
Darüber hinaus kann Zabbix Host-Prototypen verwenden, um automatisch echte Hosts für die erkannten Entitäten zu erzeugen.
Weitere Informationen finden Sie unter Host-Prototypen.
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 erfassten Daten können für eine detaillierte Fehlerbehebung mit Debug-Level 5 protokolliert werden.
Das Debug-Level kann in den Konfigurationsdateien server und proxy
oder über die Laufzeitsteuerungsoption -R log_level_increase="vmware collector,N" konfiguriert werden, wobei "N" die Prozessnummer ist.
Um beispielsweise das Debug-Level für alle vmware collector-Prozesse 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 vmware collector-Prozess 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 der VMware-Collector-Daten nicht mehr erforderlich ist, wird empfohlen, das Debug-Level wieder auf den Standardwert (3) zu senken, indem der Befehl -R log_level_decrease ausgeführt wird.
Fehlerbehebung
- Falls Metriken nicht verfügbar sind, stellen Sie bitte sicher, dass sie in neueren VMware vSphere-Versionen nicht standardmäßig deaktiviert oder abgeschaltet wurden oder dass keine Einschränkungen für Datenbankabfragen zu Leistungsmetriken festgelegt sind. Weitere Informationen finden Sie unter ZBX-12094.
- Wenn
config.vpxd.stats.maxQueryMetricsungültig ist oder der Fehler auftritt, dass die maximal zulässige Anzahl von Zeichen überschritten wird, fügen Sie den vCenter-Server-Einstellungen einen Parameterconfig.vpxd.stats.maxQueryMetricshinzu. Der Wert dieses Parameters sollte mit dem Wert vonmaxQuerysizein der Dateiweb.xmlvon VMware ü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.