Ein Leitfaden zur ESXi-SNMP-Konfiguration für die Überwachten Workloads
Die Überwachung der Infrastruktur ist für Unternehmen wichtig, da Sie dadurch Probleme rechtzeitig erkennen und Ausfälle verhindern können. Wenn ein Ausfall auftritt, können Sie dank frühzeitiger Benachrichtigungen so schnell wie möglich mit der Behebung der damit verbundenen Probleme beginnen. In einer VMware vSphere-Umgebung wird empfohlen, die ESXi-Überwachung zu konfigurieren. Eine der kostengünstigsten Methoden zur Überwachung von ESXi-Hosts ist die Verwendung der integrierten Funktionen und des Simple Network Management Protocol (SNMP). In diesem Fall muss ein dedizierter Server mit Überwachungssoftware konfiguriert werden. Dieser Blogbeitrag behandelt die ESXi-SNMP-Konfiguration und erklärt, wie Sie SNMP auf ESXi-Hosts aktivieren können.
Vorbereiten der Umgebung
So aktivieren Sie SNMP auf ESXi:
- Secure Shell (SSH) aktivieren
- SNMP konfigurieren
- ESXi-Firewall konfigurieren
Ich werde die ESXi-SNMP-Konfiguration anhand eines Beispiels mit einem ESXi 7.0 Host und einem Ubuntu-Linux-Rechner, auf dem die Überwachungssoftware installiert ist, erläutern.
Die IP-Adresse des ESXi-Hosts lautet 192.168.101.208.
Die IP-Adresse des Ubuntu-Linux-Rechners lautet 192.168.101.209.
Verwenden Sie Ihre IP-Adressen und andere Werte für die entsprechenden Parameter, wenn Sie die ESXi-Überwachung über SNMP in Ihrer Infrastruktur entsprechend Ihrer Konfiguration konfigurieren.
Aktivieren des SSH-Zugriffs auf ESXi
Der SSH-Zugriff auf einen ESXi-Host ist erforderlich, um ESXCLI-Befehle auf einem Host aus der Ferne auszuführen. Um den SSH-Zugriff auf Ihren VMware ESXi-Host zu aktivieren, können Sie VMware Host Client verwenden. Öffnen Sie einen Webbrowser, geben Sie die IP-Adresse Ihres VMware ESXi-Hosts in die Adressleiste ein und geben Sie dann Ihre Anmeldeinformationen ein, um sich anzumelden.
Gehen Sie im Navigator Fensterbereich zu Host > Verwalten und klicken Sie auf die Registerkarte Services .
Klicken Sie mit der rechten Maustaste auf TSM-SSH und klicken Sie im Kontextmenü auf Start.
Auf dem folgenden Screenshot sehen Sie den gestarteten SSH-Serverdienst auf dem ESXi-Host.
Jetzt können Sie von einem Rechner mit installiertem SSH-Client eine Verbindung zum ESXi-Host herstellen. Wenn Sie Windows verwenden, können Sie PuTTY nutzen, einen kostenlosen und praktischen SSH-Client. Unter Linux führen Sie den SSH-Client über die Befehlszeile mit dem folgenden Befehl aus:
ssh your_username@host_ip_address
Geben Sie die IP-Adresse Ihres ESXi-Hosts und den Port TCP 22 (die Standardportnummer) in den Einstellungen des SSH-Clients ein, um über SSH mit dem ESXi-Host zu verbinden.
VMware ESXi-SNMP-Konfiguration
Sobald der SSH-Zugriff auf den VMware ESXi-Host hergestellt ist, können Sie die VMware ESXi-SNMP-Optionen konfigurieren. Auf VMware ESXi-Hosts kann SNMP nur in der Befehlszeilenschnittstellekonfiguriert werden. Über die grafische Benutzeroberfläche (GUI) können Sie den SNMP-Dienst nur starten, stoppen und neu starten.
Führen Sie den Befehl in der Konsole (Terminal) aus und überprüfen Sie den SNMP-Status auf dem ESXi-Host:
esxcli system snmp get
SNMP ist standardmäßig deaktiviert. Die Ausgabe für deaktiviertes SNMP auf ESXi ist auf dem Screenshot zu sehen. Die meisten Parameter sind leer und/oder nicht konfiguriert.
Konfigurieren der Parameter eines SNMP-Agenten
Legen Sie die SNMP-Parameter für einen SNMP-Agenten auf dem ESXi-Host fest. Der SNMP-Agent wird verwendet, um Benachrichtigungen (SNMP-Traps und -Informs) an einen Überwachungsserver zu senden und GET-, GETNEXT- und GETBULK-Anfragen zu empfangen.
Legen Sie den Community-Name fest („public” ist der standardmäßig festgelegte Community-Name). Der Community-Name in diesem Beispiel lautet „NAKIVO”.
esxcli system snmp set --communities nakivo
Legen Sie das SNMP-Ziel fest. Das SNMP-Ziel ist ein Server, auf dem Überwachungssoftware installiert ist, um SNMP-Traps zu verarbeiten und Überwachungsinformationen zu sammeln. In meinem Beispiel ist das SNMP-Ziel der Rechner, auf dem Ubuntu Linux läuft (192.168.101.209). UDP 161 ist der Standard-Port für SNMP und dieser Port ist in meiner ESXi-SNMP-Konfiguration definiert:
esxcli system snmp set --targets=192.168.101.209@161/nakivo
Geben Sie einen Standort an, z. B. die geografische Lage, die Adresse, das Rechenzentrum oder einen Raum, in dem sich der Server befindet:
esxcli system snmp set --syslocation "Server room"
Geben Sie die Kontaktinformationen an. Die E-Mail-Adresse des Systemadministrators kann für diesen Parameter definiert werden:
esxcli system snmp set --syscontact michaelbose@nakivo.com
Aktivieren Sie SNMP auf ESXi:
esxcli system snmp set --enable true
Überprüfen Sie den SNMP-Status auf dem ESXi-Host erneut:
esxcli system snmp get
Jetzt können Sie sehen, dass die Parameter konfiguriert sind.
Die Engine-ID ist die eindeutige Kennung für den SNMP-Agenten (wird für SNMP v3 verwendet). Die Engine-ID kann mit dem folgenden Befehl festgelegt werden (optional):
esxcli system snmp set -engineid 544a33209458
Der SNMP-Status lautet running jetzt. Sie können auch VMware Host Client öffnen, zu Host > Verwalten > Servicesgehen und den Status des Dienstes snmpd überprüfen.
Testen Sie die aktuelle SNMP-Konfiguration.
esxcli system snmp test
Wenn Sie nach der Bearbeitung der SNMP-Einstellungen den SNMP-Agenten neu starten möchten, verwenden Sie den folgenden Befehl:
/etc/init.d/snmpd restart
Alternativ können Sie ESXi SNMP in der VMware Host Client-GUI auf der Registerkarte „ <“ (Dienste) neu starten: >Services Klicken Sie mit der rechten Maustaste auf den Dienst und wählen Sie im Kontextmenü „Restart“ (Neustart) aus: Restart
Wenn Sie die ESXi-SNMP-Einstellungen zurücksetzen müssen, verwenden Sie den folgenden Befehl:
esxcli system snmp set -r
Der Befehl zum Deaktivieren von SNMP auf einem ESXi-Host lautet:
esxcli system snmp set --enable false
Sie können die SNMP-Verfügbarkeit von einem Linux-Rechner aus überprüfen, wenn dieser Linux-Rechner das SNMP-Ziel ist. Wir verwenden hierfür Ubuntu Linux.
Installieren Sie den erforderlichen SNMP-Client unter Ubuntu Linux, falls dieser Client noch nicht installiert ist:
sudo apt-get install snmp
Verbinden Sie sich über SNMP mit dem ESXi-Host, um die für die Überwachung verfügbaren Parameter zu überprüfen:
snmpwalk -v2c -c nakivo 192.168.101.208
In der Konsolenausgabe sollte eine lange Liste von Objekten für die ESXi-Überwachung über SNMP angezeigt werden. Diese Objekte sind Management Information Bases (MIBs) und Object Identifiers (OIDs), die Elemente der hierarchischen Struktur der Überwachungsparameter sind.
Eine SNMP-MIB ist eine Sammlung von Informationen über Objekte (Parameter und Einstellungen), die hierarchisch organisiert sind. Es gibt skalare und tabellarische MIBs. MIBs können standardisiert oder herstellerspezifisch sein.
Eine SNMP-OID ist ein eindeutig identifiziertes verwaltetes Objekt in der hierarchischen MIB-Struktur. Verschiedene Ebenen des Baums werden von verschiedenen Organisationen zugewiesen. Anbieter können spezielle Zweige definieren, um die Parameter ihrer Produkte zu überwachen.
Ein Name ist ein eindeutiger Wert für die gesamte MIB, der der entsprechenden OID entspricht. Beispielsweise lautet der Name für die OID 1.3.6.1.2.1.1.5 lautet sysName.
Konfigurieren der ESXi-Firewall
Sie müssen die Firewall konfigurieren und den SNMP-Zugriff von Überwachungsservern auf den ESXi-Host aktivieren. Sie können ein Subnetz oder eine einzelne IP-Adresse der zugelassenen Geräte im Netzwerk festlegen.
Wir führen diese drei Befehle aus, um den Zugriff von den Netzwerken 192.168.101.0/24 zu ermöglichen, um ESXi über SNMP zu überwachen:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all false
esxcli network firewall ruleset allowedip add --ruleset-id snmp --ip-address 192.168.101.0/24
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
Geben Sie die IP-Adresse oder eine Netzwerkadresse entsprechend Ihrer Netzwerkkonfiguration ein.
Eine weniger sichere Konfiguration besteht darin, den Zugriff von jedem Netzwerkgerät aus zu ermöglichen:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
Die SNMP-Konfiguration von ESXi ist abgeschlossen. Jetzt können Sie Ihre Überwachungssoftware auf einem Überwachungsserver konfigurieren.
Konfigurieren von SNMP v3
SNMP v3 ist eine sicherere Version des Protokolls, die eine Schlüsselauthentifizierung und Verschlüsselung bietet. Die Konfiguration von SNMP v3 ist komplizierter und wird seit vSphere 5.1 unterstützt. Nachfolgend finden Sie eine Übersicht darüber, wie Sie SNMP v3 auf einem ESXi-Host aktivieren können.
Legen Sie das Authentifizierungsprotokoll und die Datenschutzoptionen fest.
esxcli system snmp set -a SHA1 -x AES128
Dabei ist:
SHA1 der Algorithmus für die kryptografische Verschlüsselung, die kryptografische Hash-Funktion (Secure Hash Algorithm 1).
AES128 ist die Methode der Verschlüsselung (Advanced Encryption Standard mit einem 128-Bit-Verschlüsselungsschlüssel) unter Verwendung der symmetrischen Blockverschlüsselung.
Generieren Sie Hashes mit einem Befehl wie:
esxcli system snmp hash –auth-hash authpass –priv-hash privhash –raw-secret
In meinem Fall lautet der Befehl:
esxcli system snmp hash --auth-hash PasswordTest1 --priv-hash PasswordTest2 --raw-secret
Verwenden Sie die in diesem Beispiel angegebenen Passwörter nicht in Produktionsumgebungen. Verwenden Sie sichere, eindeutige Passwörter (das Passwort muss mindestens 7 Zeichen lang sein). Speichern Sie die generierten Hash-Zeichenfolgen. In meinem Fall lauten die Hashes wie folgt.
Authhash: 831a798d1cda90ca1a3ab80d38f81a44c0851ada
Privhash: 38cf6f13d09a4651362338eac2c3d62b42514bc9
Verwenden Sie die generierten Hashes und fügen Sie einen Benutzer hinzu. Es können bis zu fünf Benutzer hinzugefügt werden.
esxcli system snmp set -e yes -C user -u snmpuser/authhash/privhash/priv
Dabei gilt:
user ist die Kontakt-E-Mail-Adresse des Benutzers
snmpuser ist der Benutzername (maximal 32 Zeichen)
authhash ist der Authentifizierungs-Hashwert
privhash ist der Datenschutz-Hashwert
Wir fügen user1 hinzu und verwenden die in der Ausgabe des vorherigen Befehls generierten Hashes.
esxcli system snmp set -e yes -C user1@nakivo.com -u user1/831a798d1cda90ca1a3ab80d38f81a44c0851ada/38cf6f13d09a4651362338eac2c3d62b42514bc9/priv
Sie können einen Benutzer ohne Sicherheit (keine Authentifizierung und kein Datenschutz) mit dem folgenden Befehl erstellen:
esxcli system snmp set --user user2/-/-/none
Definieren Sie die SNMP-Zieladresse:
esxcli system snmp set --v3targets 192.168.101.209@161/user1/priv/trap
Aktivieren Sie SNMP auf ESXi:
esxcli system snmp set --enable true
Testen Sie die SNMP-Einstellungen:
esxcli system snmp test
Sie können den erweiterten Befehl verwenden, um die VMware SNMP-Konfiguration auf ESXi zu testen:
esxcli system snmp test -u=user1 -A=PasswordTest1 -X=P2sswordTest2 -r
Dabei ist user1 der Name des SNMP-Benutzers, der zur Konfiguration hinzugefügt wurde.
Wenn der Test erfolgreich abgeschlossen wurde, wird folgende Meldung angezeigt:
Benutzer für angegebene Engine-ID und Sicherheitsstufe korrekt validiert: Protokolle
Versuchen Sie, von einem Linux-Überwachungsserver (von der Zielseite) aus über SNMP v3 eine Verbindung zum ESXi-Host herzustellen.
Dieser Befehl wird verwendet, wenn keine Authentifizierungsparameter festgelegt wurden:
snmpwalk -v3 -u user1 192.168.101.208
Wenn Sie Optionen für Sicherheit festgelegt haben, definieren Sie diese im Befehl:
snmpwalk -v3 -u user1 -l AuthPriv -a SHA -A PasswordTest1 -x AES -X PasswordTest2 192.168.101.208
Dabei ist user1 der Name meines Benutzers, der zur ESXi-SNMP-Konfiguration hinzugefügt wurde.
Wenn beim Testen der ESXi-SNMP-Konfiguration die Fehlermeldung „Unknown Benutzername” angezeigt wird, überprüfen Sie, ob Sie einen Benutzer hinzugefügt und den richtigen Benutzername in den weiteren Befehlen nach dem Hinzufügen des Benutzers definiert haben. Behalten Sie im Hinterkopf, dass diese Benutzer ungültig werden, wenn Sie nach der Konfiguration der Benutzer die Engine-ID des Agenten, das Datenschutzprotokoll oder das Authentifizierungsprotokoll ändern. In diesem Fall müssen Sie die Benutzer neu konfigurieren.
Achten Sie auch auf die Einstellungen für die Sicherheit, da eine falsche SNMP-Konfiguration eine Bedrohung darstellen und es einem böswilligen Host ermöglichen kann, Informationen über einen ESXi-Host zu erhalten. Diese Informationen können verwendet werden, um Schwachstellen zu erkennen und einen Cyberangriff zu starten.
SNMP-Konfiguration mehrerer ESXi-Hosts
Die Verwendung von VMware-Hostprofilen kann Ihnen helfen, SNMP zu aktivieren und mehrere ESXi-Hosts rationeller zu konfigurieren, wenn Sie eine große Anzahl von ESXi-Hosts in Ihrer VMware vSphere-Umgebung haben.
Um SNMP zu aktivieren und mehrere ESXi-Hosts zu konfigurieren, benötigen Sie die VMware vSphere Enterprise Plus-Lizenz , um VMware-Hostprofile in VMware vSphere Client verwenden zu können. Die VMware-SNMP-Einstellungen für Profile von ESXi-Hosts befinden sich unter Management > Hostprofile > Ihr Profil > SNMP-Agent-Konfiguration. Sie können auch vSphere PowerCLI verwenden, um den Konfigurationsprozess einer großen Anzahl von ESXi-Hosts zu automatisieren und die ESXi-SNMP-Konfiguration auf diesen Hosts festzulegen.
Fazit
Die ESXi-SNMP-Konfiguration erfordert SSH-Zugriff auf ESXi-Hosts, die Konfiguration von SNMP-Agenten und die Freigabe des Zugriffs in der ESXi-Firewall. Die ESXi-Überwachung ermöglicht es Ihnen, bei Erkennung von Problemen rechtzeitig zu reagieren und die allgemeine Serviceverfügbarkeit zu verbessern. Vergessen Sie nicht, ein VMware vSphere VM-Backup durchzuführen, um Datenverluste zu vermeiden und im Katastrophenfall Daten wiederherstellen und Workloads wiederherstellen zu können.
NAKIVO Backup & Replication ist die universelle Lösung für die Datensicherheit, die eine Vielzahl von Optionen für das Sichern und Wiederherstellen von VMware vSphere-VMs und anderen Daten in einem Rechenzentrum bietet. Darüber hinaus unterstützt die neueste Version der Lösung die ESXi-Überwachung als Teil der VMware vSphere-Überwachung.










