VMware SD- WAN Gateway-Überwachungshandbuch - VMware SD-WAN 4.5
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
VMware SD-WAN Gateway-Überwachungshandbuch Die aktuellste technische Dokumentation finden Sie auf der VMware-Website unter: https://docs.vmware.com/de/ VMware, Inc. VMware Global, Inc. 3401 Hillview Ave. Zweigniederlassung Deutschland Palo Alto, CA 94304 Willy-Brandt-Platz 2 www.vmware.com 81829 München Germany Tel.: +49 (0) 89 3706 17 000 Fax: +49 (0) 89 3706 17 333 www.vmware.com/de © Copyright 2021 VMware, Inc. Alle Rechte vorbehalten. Urheberrechts- und Markenhinweise. VMware, Inc. 2
Inhalt 1 VMware SD-WAN Gateway-Überwachungshandbuch 4 Komponenten 4 Zwischengespeicherte Konfiguration 6 Überwachen von Gateways in VMware SD-WAN Orchestrator 7 Anzeigen von Gateway-Informationen 7 Überwachen von Gateways 10 Überwachen von Gateways über die neue Orchestrator-Benutzeroberfläche 12 Überwachen von Gateways über die CLI 14 Überwachen der Systemintegrität 14 Überwachen von VMware SD-WAN-Diensten 19 Kapazität von Gateway-Komponenten 25 Überwachen von Gateways über Telegraf 30 Konfigurieren der Telegraf-Integration 31 Konfigurieren von Telegraf als Syslog-Empfänger 32 Unterstützte Leistungsindikatoren 33 VMware, Inc. 3
VMware SD-WAN Gateway- Überwachungshandbuch 1 Das VMware SD-WAN Gateway-Überwachungshandbuch beschreibt die Kernkomponenten des VMware SD-WAN Gateways und erläutert, wie Sie Ihre eigenen Gateway-Bereitstellungen überwachen. Versionskompatibilität Während die Prinzipien in diesem Handbuch weitgehend auf jede Version des Gateways anwendbar sind, sind bestimmte Befehle und Beispielausgaben möglicherweise nur für Version 4.5.0 relevant. Dieses Kapitel enthält die folgenden Themen: n Komponenten n Zwischengespeicherte Konfiguration n Überwachen von Gateways in VMware SD-WAN Orchestrator n Überwachen von Gateways über die CLI n Überwachen von Gateways über Telegraf Komponenten Das SD-WAN Gateway wird auf einem Ubuntu-Betriebssystem Version 18.04 ausgeführt. Herkömmliche Open Source-Komponenten wie das Linux-Routing- und -Firewall-Subsystem (iptables) sind jedoch nicht an der Verarbeitung des Benutzerdatenverkehrs beteiligt. Der gesamte Netzwerk-Stack wird im Benutzerbereich in einem Prozess namens gwd implementiert. Obwohl gwd die überwiegende Mehrheit der Funktionen im System enthält, gibt es verschiedene andere Komponenten, die den Betrieb der SD-WAN Gateway-Instanz unterstützen. VMware, Inc. 4
VMware SD-WAN Gateway-Überwachungshandbuch Benutzerspeicher VMware SD-WAN- Open-Source- Prozesse Prozesse natd mgd gwd bgpd vc procmon watchfrr Kernel-Speicher In der folgenden Tabelle sind die Prozesse mit der Beschreibung und den Protokolldateien aufgelistet. Prozess Beschreibung Protokolldatei vc_procmon VMware SD-WAN Process Monitor /var/log/vc_procmon.log (vc_procmon) ist der grundlegende Prozess des VMware SD-WAN- Systems. Dieser Prozess ist dafür verantwortlich, andere VMware SD- WAN-Prozesse zu starten, sie bei einem Ausfall erneut zu starten und den Speicherverbrauch von gwd zu überwachen. mgd Der Management Plane Daemon /var/log/mgd.log (mgd) ist für die Kommunikation mit dem Orchestrator verantwortlich. Dieser Prozess wird von gwd isoliert gehalten, so dass bei einem Totalausfall des gwd-Prozesses der Orchestrator immer noch für Konfigurationsänderungen oder Software-Updates erreichbar ist, die zur Behebung des Fehlers erforderlich sind. gwd Dieser Prozess umfasst die gesamte /var/log/gwd.log Data Plane und Control Plane des Gateways (mit Ausnahme von dynamischen Routing-Protokollen wie BGP). Verwenden Sie debug.py und dispcnt für Abfragen über den Prozess. VMware, Inc. 5
VMware SD-WAN Gateway-Überwachungshandbuch Prozess Beschreibung Protokolldatei natd Dieser Prozess verwaltet die /var/log/natd.log Zuweisung von Port Address Translation (PAT)-Einträgen und speichert sie im gemeinsamen Speicher, wodurch sichergestellt wird, dass dieselben NAT- Übersetzungen auch nach einem Neustart oder Upgrade von gwd durchgeführt werden. Verwenden Sie debug.py für Abfragen über den Prozess. watchfrr Der watchfrr-Daemon ist Teil der Nicht verfügbar Open Source-Routing-Bibliothek FRR und ist verantwortlich für den Start von bgpd, den Neustart bei Ausfall und die Ausführung aller anderen damit verbundenen Dienstprogramme. Das Skript /usr/ sbin/frr.init, das auf dem Gateway verfügbar ist, kann verwendet werden, um einige Daemons neu zu starten. bgpd Der BGP-Daemon (bgpd) ist Teil der /var/log/bgpd.log Open Source-Routing-Bibliothek FRR und verwaltet die BGP-Nachbarn und -Routen. bfdd Der BFD-Daemon (bfdd) ist Teil /var/log/bfdd.log der Open Source-Routing-Bibliothek FRR, mit der Routenausfälle zwischen zwei verbundenen Entitäten schneller mit geringem Overhead bei der Erkennung von Fehlern erkannt werden können. gwd1 ist eine Schnittstelle, die gwd die Möglichkeit bietet, Pakete an den Kernel zu liefern. Ein Beispiel hierfür ist ein Paket, das für den lokalen Gateway-Host bestimmt ist, aber von gwd empfangen wird. Zwischengespeicherte Konfiguration Verwenden Sie die zwischengespeicherte Konfiguration auf Gateways, um die von Orchestrator empfangenen Daten zu überprüfen. Die Konfiguration wird in der folgenden Datei zwischengespeichert: /opt/vc/bin/.gateway.info. VMware, Inc. 6
VMware SD-WAN Gateway-Überwachungshandbuch Verwenden Sie das /opt/vc/bin/getpolicy.py-Skript, um die zwischengespeicherte Konfiguration zu lesen und die vom Orchestrator empfangenen Daten zu überprüfen. vcadmin@vcg1-example:~$ /opt/vc/bin/getpolicy.py managementPlane { "schemaVersion": "1.7.0", "version": "0", "data": { "heartBeatSeconds": 30, "managementPlaneProxy": { "primary": "vco1-example.velocloud.net", "secondary": null }, "timeSliceSeconds": 300, "vcoAddress": "1.2.3.4", "statsUploadSeconds": 300 }, "module": "managementPlane" } vcadmin@vcg1-example:~$ Eine Ausnahme von den obigen Ausführungen ist die Konfiguration der Control Plane. Da das Control Plane-Modul vertrauliche Informationen enthält, wie z. B. vorab freigegebene Schlüssel für die Nicht-SD-WAN-Ziel-Tunnel, wird es nicht lokal zwischengespeichert. Wenn also das Gateway neu gestartet wird, während es nicht mit dem Orchestrator verbunden ist, funktionieren die Komponenten und Prozesse, für die ein Control Plane-Blob erforderlich ist (wie z. B. Nicht- SD-WAN-Ziele, VLAN/VRF-Übergabe und BGP-Routing), erst, wenn die Orchestrator-Verbindung wiederhergestellt wird. Wenn das Gateway ausnahmsweise die Verbindung zum SD-WAN Orchestrator verliert und nicht neu gestartet wird, funktionieren alle Control Plane-Module normal. Überwachen von Gateways in VMware SD-WAN Orchestrator Operator und Partner können sich einen umfassenden Überblick über den Zustand des Gateways über den Orchestrator verschaffen. Anzeigen von Gateway-Informationen Klicken Sie im SD-WAN Orchestrator-Portal auf Gateways, um die Details der vorhandenen Gateways anzuzeigen. VMware, Inc. 7
VMware SD-WAN Gateway-Überwachungshandbuch Auf der Seite Gateways werden immer die folgenden vier Spalten angezeigt: Gateways, Status, CPU und Arbeitsspeicher. Klicken Sie auf Spalten (Cols), um die anderen optionalen Spalten ein- oder auszublenden. In der folgenden Tabelle sind alle Spalten aufgelistet, die in der Ausgabe verfügbar sind. Spalte Beschreibung Gateways Gateway-Name Status Spiegelt den Erfolg oder das Fehlschlagen von periodischen Taktsignalen wider, die von mgd an den Orchestrator gesendet werden, und gibt nicht den Status der Data Plane und Control Plane an. Im Folgenden finden Sie die möglichen Statusangaben: n Verbunden (Connected): Gateway sendet Taktsignale erfolgreich an den Orchestrator. n Herabgestuft (Degraded): Der Orchestrator hat seit mindestens einer Minute nichts mehr vom Gateway gehört. n Offline: Der Orchestrator hat seit mindestens zwei Minuten nichts mehr vom Gateway gehört. CPU Durchschnittliche CPU-Nutzung aller Kerne im System zum Zeitpunkt des letzten Taktsignals. Arbeitsspeicher (Memory) Prozentuale Nutzung des physischen Speichers durch alle Prozesse im System, wie von psutil.phymem_usage zum Zeitpunkt des letzten Taktsignals gemeldet. Dies ist ähnlich wie das Schätzen des prozentualen Anteils der Speichernutzung mit dem Befehl free. VMware, Inc. 8
VMware SD-WAN Gateway-Überwachungshandbuch Spalte Beschreibung Edges Die mit dem Gateway verbundenen Edges zum Zeitpunkt des letzten Taktsignals. Hinweis Klicken Sie neben der Anzahl der Edges auf Anzeigen (View), um alle Edges, die dem Gateway zugewiesen sind, sowie deren Online- und Offlinestatus auf dem Orchestrator anzuzeigen. Mit dieser Option werden die Edges, die tatsächlich mit dem Gateway verbunden sind, nicht angezeigt. Dienststatus (Service State) Der vom Benutzer konfigurierte Dienststatus des Gateways und ob es für die Zuweisung an neue Edges in Frage kommt. Super-Gateway (Super Gateway) Die Anzahl der Kunden, für die das Gateway als Super-Gateway gewählt wurde, das ein gemeinsamer Routenreflektor für alle Edges ist. Sicheres VPN-Gateway (Secure VPN Gateway) Zeigt an, ob das sichere VPN-Gateway auf dem Gateway aktiviert wurde, wodurch das Gateway als Endpunkt für die Initiierung von Nicht-SD-WAN-Ziel- Tunneln ausgewählt werden kann. Partner-Gateway (Partner Gateway) Zeigt an, ob das Partner-Gateway auf diesem Gateway aktiviert wurde, wodurch das Gateway als Partner- Gateway für Edges zugeordnet werden kann. Zertifikate (Certificates) Wenn PKI aktiviert ist, können Sie die generierten Zertifikate anzeigen. IP-Adresse (IP Address) Die öffentliche IP-Adresse, die öffentliche WAN-Links eines Edge für die Verbindung mit dem Gateway verwenden. Diese IP-Adresse wird verwendet, um das Gateway eindeutig zu identifizieren. Pools Zeigt die Liste der Gateway-Pools an, die das Gateway enthalten. Kunden (Customers) Zeigt die Liste der Kunden an, die mit dem Gateway zugewiesen wurden. Version Zeigt die Versionsnummer der Software an, die zum Zeitpunkt des letzten Taktsignals auf dem Gateway ausgeführt wird. Build Die vollständige Zeichenfolge der Software, die zum Zeitpunkt des letzten Taktsignals auf dem Gateway ausgeführt wird. Standort (Location) Standort des Gateways von GeoIP (standardmäßig) oder wie vom Benutzer manuell eingegeben. Dies wird für die geographische Zuweisung des Gateway zu Edges verwendet und sollte überprüft werden. Verwaltetes Gateway (Managed Gateway) Gibt an, ob das Gateway von einem Partner oder nur vom Operator verwaltet werden kann. VMware, Inc. 9
VMware SD-WAN Gateway-Überwachungshandbuch Überwachen von Gateways Sie können den Status und die Nutzungsdaten von Gateways überwachen, die im Operator und Partner-Portal verfügbar sind. So überwachen Sie die Gateways: Verfahren 1 Klicken Sie im Operator-Portal auf Gateways. 2 Auf der Seite Gateways wird die Liste der verfügbaren Gateways angezeigt. 3 Klicken Sie auf den Link zu einem Gateway. Die Details des ausgewählten Gateways werden angezeigt. 4 Klicken Sie auf die Registerkarte Überwachen (Monitor), um die Nutzungsdaten des ausgewählten Gateways anzuzeigen. Ergebnisse Auf der Registerkarte Überwachen (Monitor) des ausgewählten Gateways werden die folgenden Details angezeigt: VMware, Inc. 10
VMware SD-WAN Gateway-Überwachungshandbuch Oben auf der Seite können Sie einen bestimmten Zeitraum auswählen, um die Details des Gateways für die ausgewählte Dauer anzuzeigen. Die Seite enthält eine grafische Darstellung der Nutzungsdaten der folgenden Parameter für den ausgewählten Zeitraum zusammen mit den Mindest-, Höchst- und Durchschnittswerten. n CPU-Prozentsatz (CPU Percentage): Der Prozentsatz der CPU-Nutzung. n Arbeitsspeichernutzung (Memory Usage): Der Prozentsatz der Arbeitsspeichernutzung. n Flow-Anzahl (Flow Counts): Die Anzahl der Datenverkehrsströme. n Verworfene Pakete der Übergabewarteschlange (Handoff Queue Drops) – Anzahl der aufgrund einer Überbuchung der Gateway-Ressourcen verworfenen Pakete. n Tunnelanzahl (Tunnel Count): Anzahl der Tunnelsitzungen für die IPv4- und IPv6-Adressen. Bewegen Sie den Mauszeiger über die Diagramme, um weitere Details anzuzeigen. Hinweis Wenn Sie ein Partner-Benutzer sind, folgen Sie den Anweisungen oben im Partner- Portal, um die Details der Partner-Gateways anzuzeigen. VMware, Inc. 11
VMware SD-WAN Gateway-Überwachungshandbuch Sie können die Details auch auf der neuen Benutzeroberfläche von Orchestrator anzeigen. Weitere Informationen finden Sie unter Überwachen von Gateways über die neue Orchestrator- Benutzeroberfläche. Überwachen von Gateways über die neue Orchestrator- Benutzeroberfläche Sie können den Status und die Netzwerknutzungsdaten von SD-WAN Gateways überwachen, die im Operator- und Partner-Portal verfügbar sind. So überwachen Sie die SD-WAN Gateways: Verfahren 1 Klicken Sie im Operator-Portal oben im Fenster auf die Option Neue Orchestrator- Benutzeroberfläche öffnen (Open New Orchestrator UI). 2 Klicken Sie im Popup-Fenster auf Neue Orchestrator-Benutzeroberfläche starten (Launch New Orchestrator UI). Die Benutzeroberfläche wird auf einer neuen Registerkarte geöffnet. 3 Klicken Sie auf Gateway-Verwaltung (Gateway Management) > Gateways. Ergebnisse Auf der Seite Gateways wird die Liste der verfügbaren SD-WAN Gateways angezeigt. Klicken Sie auf Zuordnungsverteilung (Map Distribution), um die Speicherorte der SD-WAN Gateways in der Zuordnung zu erweitern und anzuzeigen. Diese Ansicht ist standardmäßig reduziert. Sie können auch auf die Pfeile vor dem Namen der jeweiligen SD-WAN Gateways klicken, um weitere Details anzusehen. Auf der Seite werden die folgenden Details angezeigt: n Name: Der Name des SD-WAN Gatewayss. n Status: Der aktuelle Status des SD-WAN Gatewayss. Folgende Status sind möglich: „Verbunden (Connected)“, „Herabgestuft (Degraded)“, „Nie aktiviert (Never Activated)“, „Nicht verwendet (Not in Use)“, „Offline“, „Nicht in Betrieb (Out of Service)“ oder „Stillgelegt (Quiesced)“. n CPU: Der Prozentsatz der CPU-Auslastung durch das SD-WAN Gateways. VMware, Inc. 12
VMware SD-WAN Gateway-Überwachungshandbuch n Arbeitsspeicher (Memory): Der Prozentsatz der Arbeitsspeicherauslastung durch das SD- WAN Gateways. n Edges: Die Anzahl der mit dem SD-WAN Gateways verbundenen SD-WAN Edges. n Dienststatus (Service State): Der Dienststatus des SD-WAN Gatewayss. Der Status kann einer der folgenden sein: „Historisch (Historical)“, „In Betrieb (In Service)“, „Nicht in Betrieb (Out of Service)“, „Dienst ausstehend (Pending Service)“ oder „Stillgelegt (Quiesced)“. n IP-Adresse (IP Address): Die IP-Adresse des SD-WAN Gatewayss. n Speicherort (Location): Der Speicherort des SD-WAN Gatewayss. Geben Sie im Feld „Suche (Search)“ einen Begriff ein, um nach bestimmten Details zu suchen. Klicken Sie auf das Filtersymbol, um die Ansicht anhand bestimmter Kriterien zu filtern. Klicken Sie auf die Option CSV, um einen Bericht über die SD-WAN Gateways im CSV-Format herunterzuladen. Klicken Sie auf den Link zu einem SD-WAN Gateway, um die Details des ausgewählten SD-WAN Gateway anzuzeigen. Auf der Registerkarte Übersicht (Overview) werden die Eigenschaften, der Status, der Speicherort, die Kundennutzung und der SD-WAN Gateway Pool des ausgewählten SD-WAN Gateways angezeigt. Klicken Sie auf die Registerkarte Überwachen (Monitor), um die Nutzungsdetails des ausgewählten SD-WAN Gatewayss anzuzeigen. VMware, Inc. 13
VMware SD-WAN Gateway-Überwachungshandbuch Weitere Informationen zu den angezeigten Daten finden Sie unter Überwachen von Gateways. Hinweis Wenn Sie ein Partner-Benutzer sind, folgen Sie den Anweisungen oben im Partner- Portal, um die Details der Partner-Gateways anzuzeigen. Überwachen von Gateways über die CLI Sie können die CLI-Befehle verwenden, um den Zustand von Gateways in einem Orchestrator zu überprüfen. Überwachen der Systemintegrität Sie können die CLI-Befehle verwenden, um den Status der Gateways, die Softwareversion, die CPU- und Speicherauslastung und andere Informationen zu überprüfen. Überwachen des Gateway-Aktivierungszustands Verwenden Sie den folgenden Befehl, um zu überprüfen, ob das Gateway auf einem Orchestrator aktiviert ist. Im folgenden Beispiel ist das Gateway aktiviert: vcadmin@vcg1-example1:~$ /opt/vc/bin/is_activated.py True vcadmin@vcg1-example1:~$ VMware, Inc. 14
VMware SD-WAN Gateway-Überwachungshandbuch Im folgenden Beispiel ist das Gateway deaktiviert: vcadmin@vcg1-example1:~$ /opt/vc/bin/is_activated.py False vcadmin@vcg1-example1:~$ Anzeigen des aktivieren Orchestrator-Namens Verwenden Sie den folgenden Befehl, um den Orchestrator zu ermitteln, zu dem das Gateway gehört, sofern das Gateway aktiviert ist. vcadmin@vcg1-example1:~$ /opt/vc/bin/getpolicy.py managementPlane.data.managementPlaneProxy.primary "vco1-example1.velocloud.net" vcadmin@vcg1-example1:~$ Anzeigen der Softwareversion Die verschiedenen VMware-Prozesse im System zeigen ihre eigenen Versionsnummern an, die alle gleich sein sollten. Überprüfen Sie die Versionsnummern mit den folgenden Befehlen: root@NY-GATEWAY-1:~# /opt/vc/sbin/gwd -v VCG Info ======== Version: 4.2.0 Build rev: R420-20201216-GA-0bcea3f6f0 Build Date: 2020-12-16_23-23-33 Build Hash: 0bcea3f6f0e6b8c21260187bb2d953e4cefd7f27 root@NY-GATEWAY-1:~# /opt/vc/sbin/natd -v NATd Info ======== Version: 4.2.0 Build rev: R420-20201216-GA-0bcea3f6f0 Build Date: 2020-12-16_23-23-33 Build Hash: 0bcea3f6f0e6b8c21260187bb2d953e4cefd7f27 root@NY-GATEWAY-1:~# /opt/vc/sbin/mgd -v VeloCloud gateway 4.2.0 build R420-20201216-GA-0bcea3f6f0 Anzeigen der NTP-Zeitzone Verwenden Sie den folgenden Befehl, um die NTP-Zeitzone anzuzeigen. Die Gateway-Zeitzone muss auf Etc/UTC festgelegt werden. vcadmin@vcg1-example:~$ cat /etc/timezone Etc/UTC vcadmin@vcg1-example:~$ VMware, Inc. 15
VMware SD-WAN Gateway-Überwachungshandbuch Wenn die Zeitzone nicht korrekt ist, verwenden Sie die folgenden Befehle, um die Zeitzone zu aktualisieren. echo "Etc/UTC" | sudo tee /etc/timezone sudo dpkg-reconfigure --frontend noninteractive tzdata Anzeigen des NTP-Zeitversatzes Verwenden Sie den folgenden Befehl, um den NTP-Zeitversatz anzuzeigen, der kleiner oder gleich 15 Millisekunden sein muss. sudo ntpqvcadmin@vcg1-example:~$ sudo ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== *ntp1-us1.prod.v 74.120.81.219 3 u 474 1024 377 10.171 -1.183 1.033 ntp1-eu1-old.pr .INIT. 16 u - 1024 0 0.000 0.000 0.000 vcadmin@vcg1-example:~$ Wenn der Zeitversatz nicht korrekt ist, verwenden Sie die folgenden Befehle, um den NTP- Zeitversatz zu aktualisieren. sudo systemctl stop ntp sudo ntpdate sudo systemctl start ntp Überwachen der Festplattennutzung Verwenden Sie den folgenden Befehl, um den Speicherplatz für die Festplattennutzung zu überprüfen. Stellen Sie sicher, dass die Festplatte über mindestens 16 GB freien Speicherplatz verfügt, um wichtige Dateien wie Protokolle und Kerne zu speichern. vcadmin@vcg1-example:~$ sudo df -kh --total | grep total | awk '{print $4}' 77G vcadmin@vcg1-example:~$ Die häufigsten Speicherorte für das Abbilden der Festplattennutzung sind /var/log, /velocloud/ core und /tmp. Hinweis Für DPDK-fähige Gateways erstellt jede Sitzung eine temporäre Datei mit dem Namen / velocloud/vctcpdump.XXXX mit einer festen Größe von 1 MB. Diese Datei wird beim Beenden der Sitzung gelöscht. Überwachen der CPU-Nutzung Die SD-WAN Gateway handelt es sich um eine Pipeline-Architektur, die Datenverkehrsbursts verarbeitet und Bursts mit hoher CPU erwartet. Das Gateway sollte auf CPU-Kernen überwacht werden, die sich bei 100 % drehen. VMware, Inc. 16
VMware SD-WAN Gateway-Überwachungshandbuch Im Folgenden finden Sie ein Python-Beispielskript zur Überwachung der CPU-Auslastung: #! /usr/bin/env python """ Check for CPUs spinning at 100% """ import re import collections import time import sys import json import os import subprocess re_cpu = re.compile(r"^cpu\d+\s") CPUStat = collections.namedtuple('CPUStat', ['user', 'nice', 'sys', 'idle']) def get_stats(): stats = open("/proc/stat").readlines() ret = {} for s in stats: if not re_cpu.search(s): continue s = s.split() ret[s[0]] = CPUStat(*[ int(v) for v in s[1:5]]) return ret def verify_dpdk_support(): if os.path.isfile('/opt/vc/etc/dpdk.json'): with open("/opt/vc/etc/dpdk.json") as data: d=json.loads((data.read())) if "status" in d.keys(): return True if d['status'] is "Supported" else False else: return False def another_verify_dpdk_support(): if os.path.isfile('/opt/vc/bin/debug.py'): f=subprocess.check_output(["/opt/vc/bin/debug.py","--dpdk_ports_dump"]) x=[r.split() for r in f.split('\n')] if len(x)
VMware SD-WAN Gateway-Überwachungshandbuch if "cpu1" in busy_cpu_set and len(busy_cpu_set) == 1: print "OK - no spinning CPUs" sys.exit(0) elif "cpu1" in busy_cpu_set: busy_cpu_set.remove('cpu1') print "CRITICAL - %s is at 100%%" % (",".join(busy_cpu_set)) sys.exit(2) else: print busy_cpu_set,1 print "CRITICAL - %s is at 100%%" % (",".join(busy_cpu_set)) sys.exit(2) else: print "CRITICAL - %s is at 100%%" % (",".join(busy_cpu_set)) sys.exit(2) Überwachen der Arbeitsspeichernutzung Der Hauptprozess (gwd) lässt seinen Speicher durch vc_process_monitor überwachen, wodurch sichergestellt wird, dass nie mehr als 75 % des verfügbaren Speichers verbraucht werden. Folglich erfolgt die Überwachung des gesamten Systemspeichers mit einem Warnungsschwellenwert von 80 % und einem kritischen Schwellenwert von 90 %. Im Folgenden finden Sie ein Python-Beispielskript zur Überwachung der Arbeitsspeicherauslastung: #!/usr/bin/env python from optparse import OptionParser import sys # Parse commandline options: parser = OptionParser(usage="%prog -w % -c % [ -h ]") parser.add_option("-w", "--warning", action="store", type="string", dest="warn_threshold", help="Warning threshold in absolute(MB) or percentage") parser.add_option("-c", "--critical", action="store", type="string", dest="crit_threshold", help="Critical threshold in ansolute(MB) or percentage") (options, args) = parser.parse_args() def read_meminfo(): meminfo = {} for line in open('/proc/meminfo'): if not line: continue (name, value) = line.split()[0:2] meminfo[name.strip().rstrip(':')] = int(value) return meminfo if __name__ == '__main__': if not options.crit_threshold: print "UNKNOWN: Missing critical threshold value." sys.exit(3) if not options.warn_threshold: VMware, Inc. 18
VMware SD-WAN Gateway-Überwachungshandbuch print "UNKNOWN: Missing warning threshold value." sys.exit(3) is_warn_pct = options.warn_threshold.endswith('%') if is_warn_pct: warn_threshold = int(options.warn_threshold[0:-1]) else: warn_threshold = int(options.warn_threshold) is_crit_pct = options.crit_threshold.endswith('%') if is_crit_pct: crit_threshold = int(options.crit_threshold[0:-1]) else: crit_threshold = int(options.crit_threshold) if crit_threshold >= warn_threshold: print "UNKNOWN: Critical percentage can't be equal to or bigger than warning percentage." sys.exit(3) meminfo = read_meminfo() memTotal = meminfo["MemTotal"] memFree = meminfo["MemFree"] + meminfo["Buffers"] + meminfo["Cached"] memFreePct = 100.0*memFree/memTotal if (is_crit_pct and memFreePct
VMware SD-WAN Gateway-Überwachungshandbuch vc_procmon Verwenden Sie den folgenden Befehl, um zu prüfen, ob vc_procmon auf dem System ausgeführt wird. vcadmin@vcg1-example:~$ pgrep -f vc_procmon 14711 vcadmin@vcg1-example:~$ Andere Prozesse Verwenden Sie die folgenden Befehle, um nach anderen Prozessen zu suchen. vcadmin@vcg1-example:~$ pgrep mgd 14725 vcadmin@vcg1-example:~$ pgrep gwd 15143 vcadmin@vcg1-example:~$ pgrep natd 15095 Um die Prozesse wiederherzustellen, starten Sie den VMware SD-WAN Process Monitor neu, um alle anderen Prozesse neu zu starten. Verwenden Sie den folgenden Befehl, um den VMware SD-WAN Process Monitor neu zu starten. sudo service vc_process_monitor restart Verwenden Sie den folgenden Befehl, um einige der Daemons neu zu starten. /usr/sbin/frr.init {start|stop|restart} [daemon ...] Überwachen der Zertifikatswiderrufsliste Auf Gateways mit aktiviertem PKI werden die widerrufenen Zertifikate in einer Zertifikatswiderrufsliste (Certificate Revocation List, CRL) gespeichert. Wenn diese Liste zu lang wird, was im Allgemeinen auf ein Problem mit der Zertifizierungsstelle des Orchestrators zurückzuführen ist, wird die Leistung des Gateways beeinträchtigt. Die CRL sollte weniger als 4000 Einträge umfassen. Führen Sie den folgenden Befehl aus, um die CRL-Einträge zu überprüfen. vcadmin@vcg1-example:~$ openssl crl -in /etc/vc-public/vco-ca-crl.pem -text | grep 'Serial Number' | wc -l 14 vcadmin@vcg1-example:~$ Überwachen des ICMP-Zustands VMware, Inc. 20
VMware SD-WAN Gateway-Überwachungshandbuch Wenn ein Gateway als Partner-Gateway mit statischem Routing konfiguriert ist und der ICMP- Responder so konfiguriert ist, dass die Erreichbarkeit dieser Routen nachverfolgt wird, wird ein debug.py-Befehl zur Verfügung gestellt, der die Zustände AKTIV (UP) und INAKTIV (DOWN) wie folgt angibt: vcadmin@vcg1-example:~$ sudo /opt/vc/bin/debug.py --icmp_monitor { "icmpProbe": { "cTag": 0, "destinationIp": "0.0.0.0", "enabled": false, "frequencySeconds": 0, "probeFail": 0, "probeType": "NONE", "probesSent": 0, "respRcvd": 0, "sTag": 0, "state": "DOWN", "stateDown": 0, "stateUp": 0, "threshold": 0 }, "icmpResponder": { "enabled": false, "ipAddress": "0.0.0.0", "mode": "CONDITIONAL", "reqRcvd": 0, "respSent": 0, "state": "DOWN" } } vcadmin@vcg1-example:~$ Wenn der ICMP-Responder aktiviert ist, bedeutet der Zustand INAKTIV (DOWN), dass keine Edges mit dem Gateway verbunden sind. Überwachen von BGP-Sitzungen Der debug.pv-Befehl bgp_view_summary liefert Informationen über Zustand des BGP-Nachbarn und erlernte Präfixe, um zu überprüfen, ob BGP aktiv ist und Präfixe austauscht. Verwenden Sie den folgenden Befehl, um zu überprüfen, ob die BGP-Nachbarschaften eingerichtet sind. vcadmin@vcg1-example:~$ /opt/vc/bin/debug.py --bgp_view_summary | grep Established | wc -l 6 vcadmin@vcg1-1:~$ Wenn die BGP-Sitzungen inaktiv sind, überprüfen Sie, ob das Gateway ordnungsgemäß mit dem Orchestrator verbunden ist. Überwachen von Hauptdateien VMware, Inc. 21
VMware SD-WAN Gateway-Überwachungshandbuch Immer wenn ein Dienst auf dem Gateway abstürzt, wird eine Hauptdatei erzeugt. Die vom Orchestrator generierten Diagnosepakete sollten so bald wie möglich nach der Generierung einer Hauptdatei abgerufen werden, um die Hauptdatei herunterzuladen und die zugehörigen Protokolle dem VMware-Support zur Verfügung zu stellen. Das folgende Beispiel veranschaulicht ein Python-Skript, das nach aktuellen Hauptdateien sucht. #! /usr/bin/env python import subprocess, traceback, os, os.path,glob,datetime,time,sys,re from pynag.Plugins import PluginHelper,ok,warning,critical,unknown from subprocess import Popen, PIPE import time import os import commands import json helper = PluginHelper() helper.parse_arguments() def diag_check(): regex_patern = "^.*\s+Uploading diag-201[0-9]-.*" re_nat = re.compile(regex_patern) cmd = 'grep "Uploading diag-201[0-9]" /var/log/mgd.log' p1 = subprocess.Popen([cmd], stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True) stdout_value, stderr_value = p1.communicate() m = re_nat.search(stdout_value) if m: return True else: return False def vco_vcg_version(): with open("/opt/vc/.gateway.info") as data: d=json.loads((data.read())) vcg=d["gatewayInfo"]["name"] #build_number=d["gatewayInfo"]["buildNumber"] status,output = commands.getstatusoutput("sudo /opt/vc/sbin/gwd -v 2>&1 | grep rev") if status == 0: build_number=output.split()[2].rstrip('\n') vco=d["configuration"]["managementPlane"]["data"]["managementPlaneProxy"]["primary"] return vcg,build_number,vco status_file = "/tmp/coredump_status_file" warning_file = "/tmp/warning_file" if not os.path.isfile(status_file) and not os.access(status_file, os.R_OK): os.system("touch /tmp/coredump_status_file") os.system("chown nagios:nagios /tmp/coredump_status_file") if not os.path.isfile(warning_file) and not os.access(status_file, os.R_OK): os.system("touch /tmp/warning_file") os.system("chown nagios:nagios /tmp/warning_file") if not os.path.isfile(warning_file) and not os.access(status_file, os.R_OK): os.system("touch /tmp/crashlist.txt") os.system("chown nagios:nagios /tmp/crashlist.txt") VMware, Inc. 22
VMware SD-WAN Gateway-Überwachungshandbuch command = "cat /tmp/coredump_status_file" command1 = "cat /tmp/warning_file" files = ["crashlist.txt","warning_file","coredump_status_file","coredump_message"] for item in files: if os.path.isfile("/tmp/"+item): st=os.stat("/tmp/"+item) if st.st_uid == 0: commands.getstatusoutput("sudo chown nagios:nagios /tmp/"+item) status,output = commands.getstatusoutput(command) if output == "1": status_message = "" os.system("chown nagios:nagios /tmp/coredump_message") with open("/tmp/coredump_message", "r") as data: for line in data.readlines(): status_message += line mtime = os.path.getmtime("/tmp/coredump_status_file") cur_time = time.time() if int(cur_time) - int(mtime) >= 300: os.system('echo -n "0" > /tmp/coredump_status_file') helper.status(critical) helper.add_summary(status_message) helper.exit() sys.exit(0) status_message = "" newcore = 0 try: crashlistpath = '/tmp/crashlist.txt' cmd = "stat -c '%Y %n' /velocloud/core/*core.tgz" if not os.path.isfile(crashlistpath) and not os.access(crashlistpath, os.R_OK): os.system("find /velocloud/core/ -name *core.tgz > /tmp/crashlist.txt") with open(crashlistpath, "a+") as f: oldcrashlist = f.read() corelist = glob.glob("/velocloud/core/*core.tgz") corecount = len(corelist) if corecount > 0 : for line in corelist: file_modified = datetime.datetime.fromtimestamp(os.path.getmtime(line)) if datetime.datetime.now() - file_modified > datetime.timedelta(hours=42*24): os.remove(line) if not line in oldcrashlist: newcore +=1 status_message += '\n' + "Core:" +str(newcore) +" " + line.rsplit('/',1) [1] + " " f.write(line+'\n') cmd1 = "tar -xvf " + line.rstrip('\n') + " -C /tmp --wildcards --no- anchored '*.txt' " crash = subprocess.Popen(cmd1, shell=True, stdout=subprocess.PIPE) crash.wait() for line1 in crash.stdout: btcmd = "awk '/^Thread 1 /,/^----/' /tmp/" + line1.rstrip('\n') + " | egrep '^#' | sed 's/ 0x0.* in //' | sed 's/ (.*/ /'" VMware, Inc. 23
VMware SD-WAN Gateway-Überwachungshandbuch bt = subprocess.Popen(btcmd, shell=True, stdout=subprocess.PIPE) status_message += '\n'+ bt.communicate()[0] else: helper.status(ok) status_message = "No Core file" f.close() except Exception as e: traceback.print_exc() helper.exit(summary="Nagios check could not complete", long_output=str(e), exit_code=unknown, perfdata='') if corecount and not newcore: helper.status(ok) status_message = str(corecount)+ " old core file found in /velocloud/core" os.system('echo -n "0" > /tmp/coredump_status_file') elif newcore > 0: output = vco_vcg_version() vcg_data = "%s; VCG_Build_Number:%s; VCO:%s\n" %(output) status_message = vcg_data + str(newcore)+ " New Core\n"+ status_message with open("/tmp/coredump_message", "w") as data: data.writelines(status_message) os.system('echo -n "1" > /tmp/warning_file') os.system('echo -n "1" > /tmp/coredump_status_file') helper.status(critical) helper.add_summary(status_message) helper.exit() sys.exit(0) status,output_warn = commands.getstatusoutput(command1) if output_warn == "1" : helper.status(warning) status_message = "Please generate gateway diag bundle from the VCO if required" result = diag_check() if result == False: if not os.path.isfile("/tmp/coredump_start_time"): os.system("touch /tmp/coredump_start_time") os.system("chown nagios:nagios /tmp/coredump_start_time") start_time = time.time() with open("/tmp/coredump_start_time", "w") as data: data.write(str(start_time)) end_time = time.time() cmd = "cat /tmp/coredump_start_time" status,start_time = commands.getstatusoutput(cmd) total_time = end_time - float(start_time) if total_time > 10800: result = True if result == True: os.system('echo -n "0" > /tmp/warning_file') os.remove ("/tmp/coredump_start_time") helper.status(warning) status_message = "Please generate the diagbundle for the last crash. if it is taken already, please ignore this message" VMware, Inc. 24
VMware SD-WAN Gateway-Überwachungshandbuch helper.add_summary(status_message) helper.exit() Kapazität von Gateway-Komponenten Verwenden Sie die CLI-Befehle, um die Kapazität der Gateway-Komponenten zu überprüfen und sicherzustellen, dass die konfigurierten Werte die unterstützten Werte nicht überschreiten, um eine nahtlose Leistung zu gewährleisten. Weitere Informationen zur Kapazität verschiedener Komponenten und zu den unterstützten Werten für jede Komponente finden Sie über den folgenden Link: n https://partners.velocloud.com/engage/vmware-sd-wan-performance-and-scale-datasheet/ Überwachen der Übergabewarteschlange Das Gateway ist eine Pipeline-Architektur, und zwischen den einzelnen Phasen der Pipeline gibt es jeweils eine Übergabewarteschlange. Da der Verkehr durch ein Gateway sehr rege ist, werden gelegentliche Paketstaus in den Übergabewarteschlangen erwartet. Eine konstant hohe Warteschlangenlänge in bestimmten Warteschlangen deutet jedoch auf ein Kapazitätsproblem hin. Das folgende Beispiel zeigt die Ausgabe des debug.py-Befehls zum Anzeigen der Ausgabe der Übergabewarteschlange. Die Ausgabe wurde gekürzt, um der Übersichtlichkeit halber nur den ersten und den letzten Eintrag anzuzeigen. Sie können die -v-Option im Befehl ausschließen, um die Ausgabe im tabellarischen Format anzuzeigen. vcadmin@vcg1-example:~$ /opt/vc/bin/debug.py -v --handoff { "handoffq": [ { "deq": 1087872263, "drops": 0, "dummy": 81805328, "enq": 1087872265, "head": 81805328, "lockfree": 0, "next": 0, "qlength": 2, "qlimit": 2048, "sleeping": 1, "state": "UNMONITORED", "tail": 81805328, "wmark": 948, "wokenup": 817162303 }, … { "deq": -1801919228, "drops": 0, "dummy": 176733280, VMware, Inc. 25
VMware SD-WAN Gateway-Überwachungshandbuch "enq": -1801919223, "head": 176733280, "lockfree": 0, "name": "glob_ls_0", "next": 0, "qlength": 5, "qlimit": 1024, "sleeping": 1, "state": "UNMONITORED", "tail": 176733280, "wmark": 1024, "wokenup": 1567885088 } ] } vcadmin@vcg1-example:~$ Sie müssen die Werte für qlength und wmark notieren. Die Spalte qlength gibt die Anzahl der Pakete an, die derzeit in der Warteschlange gepuffert sind. Die Spalte wmark gibt die maximale Tiefe an, die eine Warteschlange je erreicht hat. Dieser Wert zeigt an, wie nahe ein Gateway daran ist, Pakete zu verwerfen. Die Auswirkungen und Abhilfemaßnahmen hängen weitgehend von der überwachten Warteschlange ab. Sie sollten sowohl die kritischen als auch die nicht kritischen Warteschlangen überwachen. Anzeigen kritischer Warteschlangen Erhebliche und anhaltend hohe qlength-Werte in den kritischen Warteschlangen sind bei Überkapazitäten üblich und werden sich wahrscheinlich auf die Kunden auswirken. vc_queue_net_sch, vc_queue_link_select und vc_queue_link_sch: Diese Scheduler sind für die Linkauswahl, den Quality of Service und die Link-Planung für die für Edges vorgesehenen Schlüssel gedacht. Der Orchestrator nimmt Pakete vom globalen Paket- Scheduler (vc_queue_net_sch) an, wählt den entsprechenden Link aus, um sie weiterzuleiten (vc_queue_link_select), und reiht sie in die Warteschlange des Paket-Scheduler auf Linkebene ein (vc_queue_link_sch). Der Höchststandswert hier deutet darauf hin, dass das Gateway den VCMP-Datenverkehr (z. B. die Rückpakete aus dem Internet) nicht schnell genug an die Edges senden kann. vc_queue_link_encrypt_0 und vc_queue_link_encrypt_1 – Dies gilt für die Verschlüsselung, Kapselung und zugehörige Verarbeitung von Paketen vor der Paketübertragung. In einem DPDK-fähigen Gateway werden Kapazitätsprobleme zunächst als Höchststandswerte in dieser Warteschlange beobachtet. Die Höchststandswerte in der Warteschlange deuten darauf hin, dass das Gateway den Datenverkehr nicht schnell genug verschlüsseln kann. vc_queue_vcmp_data_0 und vc_queue_vcmp_data_1:Dies ist die erste Phase der Verarbeitung von VCMP-Datenpaketen, die über VCMP-Tunnel empfangen werden. Die Warteschlange verarbeitet die Neuanordnung von Paketen und fehlende Pakete. Dies ist der Beginn der Verarbeitung von Datenpaketen, die über einen VCMP-Tunnel eintreffen. VMware, Inc. 26
VMware SD-WAN Gateway-Überwachungshandbuch Eine anhaltend hohe Warteschlangenlänge deutet darauf hin, dass das Gateway den Datenverkehr von Edges nicht schnell genug empfangen kann. Dies kann ein indirekter Hinweis auf einen Paketverlust auf dem Gateway sein, der eine erhebliche Neuanordnung der Pakete erfordert. vc_queue_esp_0 und vc_queue_esp_1 – Hierbei handelt es sich um die Entschlüsselung von ESP-verschlüsseltem Datenverkehr. Der Datenverkehr, der über einen verschlüsselten Tunnel eintrifft, geht hierher, um den für die Entschlüsselung erforderlichen Zustand herzustellen, und wird dann an eine Entschlüsselungsverarbeitungs-Warteschlange übergeben. Die anhaltend hohe Warteschlangenlänge in der Warteschlange weist darauf hin, dass das Gateway den Nicht-SD-WAN-Zieldatenverkehr nicht schnell genug entschlüsseln kann. Die hohe Warteschlangenlänge deutet darauf hin, dass das Gateway den Nicht-SD-WAN-Ziel- Verkehr nicht schnell genug entschlüsseln kann. ip_common_bh – Dabei handelt es sich um die IPv4-Datenpaketverarbeitung, wie Routing, Quality of Service, Flow- und Peer-Verbindung, für aus dem Internet empfangene Rückpakete für NAT-Datenverkehr oder vom PE-Router für VLAN/VRF-Datenverkehr. In allen Gateways, mit Ausnahme der nicht DPDK-aktivierten Gateways, werden Kapazitätsprobleme zunächst als hohe Warteschlangenlänge in der Warteschlange beobachtet. Die erhöhte Warteschlangenlänge in der Warteschlange deutet darauf hin, dass das Gateway Pakete nicht schnell genug empfangen kann. Anzeigen nicht kritischer Warteschlangen Eine hohe Warteschlangenlänge ist in den nicht kritischen Warteschlangen weniger häufig oder mit geringerer Wahrscheinlichkeit mit Auswirkungen auf die Kunden verbunden. Im Folgenden sind die nicht kritischen Warteschlangen aufgeführt, die überwacht werden können. vc_queue_vcmp_init: Diese Warteschlange liefert Meldungen zur VCMP-Tunnelinitiierung bezüglich eines neuen Tunnels. Basierend auf den verfügbaren Kernen drosselt das Gateway eingehende Tunnelanfragen auf die maximale Rate, mit der sie bearbeitet werden können, ohne den bestehenden Datenverkehr zu unterbrechen. Dies führt dazu, dass eine hohe Warteschlangenlänge in der Warteschlange auf einem Gateway mit vielen Tunneln erwartet wird. Der Paketstau in diesen Warteschlangen sollte nach einem bestimmten Ereignis, wie dem Neustart des Gateways oder der Transitunterbrechung, in großen Bursts erfolgen, und es sollten während des normalen Betriebs keine Pakete verworfen werden. vc_queue_vcmp_ctrl_0 und vc_queue_vcmp_ctrl_1: Diese Warteschlange bietet Kontrollmeldungen zur VCMP-Tunnelverwaltung, die auf den vorhandenen Tunneln empfangen werden. Dazu gehören Meldungen wie Routenaktualisierungen, Aktualisierungen des Pfadstatus, Taktsignale, Statistiken, Quality of Service-Synchronisierung und Tunnelinformationen. Fast alle Kontrollmeldungen verfügen über integrierte Wiederholungsmechanismen, um diese verworfenen Pakete zu berücksichtigen, wie z. B. Routenaktualisierungen. VMware, Inc. 27
VMware SD-WAN Gateway-Überwachungshandbuch vc_queue_ike – Die Warteschlange verarbeitet IKE-Protokollmeldungen, um Schlüssel und andere Zustände von Verschlüsselungssitzungen zu verwalten. Es handelt sich im Allgemeinen um ein geringes Datenverkehrsaufkommen, und ein Paketstau ist hier unwahrscheinlich. Wenn es zu verworfenen Paketen kommt, wird erneut versucht, IKE- Meldungen zu verarbeiten. Zugangssteuerung (Admission Control) – Dies ist ein Mechanismus, mit dem eingehende Datenpakete verworfen werden, wenn die Kapazität des Systems überschritten wird. Diese Drosselung trägt dazu bei, sicherzustellen, dass das System über genügend Ressourcen zum Verarbeiten der bereits gepufferten Pakete verfügt. Die Zugangssteuerung wird nur auf Datenpakete angewendet. Verwenden Sie den folgenden Befehl, um zu überprüfen, ob Pakete durch die Zugangssteuerung verworfen wurden: root@spperf-gateway-1:~# dispcnt -s admission_control -s over_capacity_drop gwd.pkttrace.admission_control_drop_clear = 1091568 0 /s gwd.pkttrace.admission_control_drop_encrypted_vcmp = 365222 0 /s gwd.pkttrace.admission_control_drop_encrypted_ip = 20001 0 /s over_capacity_drop = 1461980 0 /s Überwachen der Durchsatzleistung Zwar sind Übergabewarteschlangen die ideale Möglichkeit zur Überwachung aus Kapazitätssicht, doch kann es nützlich und/oder interessant sein, auch den Durchsatz zu überwachen. Für viele Anbieter wird die Überwachung des Durchsatzes auf dem Hypervisor vorgenommen und befindet sich außerhalb des Geltungsbereichs des Gateways. Für Anbieter, die auf dem Gateway überwachen möchten, veranschaulicht das folgende Beispiel, wie man die RX- und TX-Byteanzahl erhält, um Delta-Berechnungen über einen Zeitraum zur Messung des Durchsatzes durchzuführen. Hinweis Standardmäßig ist DPDK aktiviert. vcadmin@vcg34-1:~$ sudo /opt/vc/bin/getcntr -c dpdk_eth0_pstat_ibytes -d vcgw.com 1895744358 vcadmin@vcg34-1:~$ sudo /opt/vc/bin/getcntr -c dpdk_eth0_pstat_obytes -d vcgw.com 1865866321 vcadmin@vcg34-1:~$ sudo /opt/vc/bin/getcntr -c dpdk_eth1_pstat_ibytes -d vcgw.com 33233362 vcadmin@vcg34-1:~$ sudo /opt/vc/bin/getcntr -c dpdk_eth1_pstat_obytes -d vcgw.com 29843320 Die tatsächliche Durchsatzkapazität kann je nach Anzahl der verbundenen Edges, des Verschlüsselungsmix und der durchschnittlichen Paketgröße variieren. Die Übergabewarteschlangen vermitteln ein klares Bild von der Leistung des Gateways im Verhältnis zu seiner Kapazität. VMware, Inc. 28
VMware SD-WAN Gateway-Überwachungshandbuch Anzeigen verbundener Edges Das folgende Beispiel zeigt die Anzahl der verbundenen Edges an. Es wird empfohlen, die Tunnelanzahl unter dem empfohlenen Wert zu halten, um die CPU-Auslastung und die Wiederherstellungszeit nach einem Neustart zu reduzieren. vcadmin@vcg1-example:~$ /opt/vc/bin/debug.py --list_edges 2 { "vceCount": 156 } vcadmin@vcg1-example:~$ Wenn die Anzahl der Edges den empfohlenen Wert überschreitet, sollten Kunden auf alternative Gateways umgestellt werden, um die Anzahl der Edges zu reduzieren. Wenn die Anzahl der Edges den Maximalwert überschreitet, sollte die Umstellung als kritisch behandelt werden. Anzeigen BGP-aktivierter VRFs Das folgende Beispiel zeigt die Anzahl der BGP-aktivierten VRFs an. vcadmin@vcg1-example:~$ /opt/vc/bin/debug.py --vrf | grep "my_asn" | wc -l 0 vcadmin@vcg1-example:~$ Wenn die Anzahl der BGP-aktivierten VRFs den maximal unterstützten Wert übersteigt, sollten Kunden auf alternative Gateways umgestellt werden, um die Anzahl zu reduzieren. Anzeigen von Gateway-Routen Das folgende Beispiel zeigt die Anzahl der Routen an. vcadmin@vcg1-example:~$ sudo /opt/vc/bin/getcntr -c memb.mod_gw_route_t.obj_cnt -d gwd-mem 8262 vcadmin@vcg1-example:~$ Wenn die Anzahl der Routeneinträge den maximal unterstützten Wert überschreitet, sollten Kunden auf alternative Gateways verschoben werden, um die Anzahl der Routen zu reduzieren. Anzeigen von Gateway-Flows Die von einem Gateway unterstützte Menge der Flows wird durch den Systemspeicher bestimmt. Es gibt ein Protokoll, das die Datenanzahl während des Startvorgangs widerspiegelt. Das folgende Beispiel zeigt das Protokoll mit den maximal unterstützten Flows: ERROR [MAIN] gwd_get_max_flow_supported:35 Flow Admission: GWD Max flow supported: 1929780 soft limit:1157820 hard limit:1736730 Wenn ein Rollover der Protokolle durchgeführt wurde, verwenden Sie die folgende Tabelle als Referenz: VMware, Inc. 29
VMware SD-WAN Gateway-Überwachungshandbuch Kritische Anzahl der Flows (90 % der Gateway-Arbeitsspeicher (GB) Maximale Anzahl an Flows maximalen Flows) 4 245760 221184 8 491520 442368 16 983040 884736 32 1966080 1769472 Wenn die Flow-Grenzwerte eine kritische Grenze erreichen, sollte das System auf einen möglichen Flow-Verlust untersucht werden. Die aktuellen Flow-Objekte im System lauten wie folgt: vcadmin@vcg1-example:~$ sudo /opt/vc/bin/getcntr -c memb.mod_mp_flow_t.obj_cnt -d gwd-mem Wenn die Flows als ungültig festgelegt sind, sollte ein Diagnosepaket generiert werden, bevor der Gateway-Dienst neu gestartet wird, um die veralteten Flows zu löschen. Wenn die Flows als gültig festgelegt sind, sollten die Kunden auf alternative Gateways verschoben werden, um die Flow-Anzahl zu reduzieren. Anzeigen von NAT-Einträgen Wenn die Anzahl der freien NAT-Einträge kritisch niedrig ist, sollte das System auf einen möglichen Verlust untersucht werden. vcadmin@vcg1-example:~$ sudo /opt/vc/bin/getcntr -c natd.nat_shmem_free_entries -d vcgwnat.com 993408 vcadmin@vcg1-example:~$ Starten Sie das Gateway neu, um alle zugewiesenen NAT-Einträge zu löschen. Der Neustart der Dienste hat keine Auswirkung auf NAT-Einträge. Überwachen von Gateways über Telegraf Telegraf ist ein Plug-In-gesteuerter Server-Agent, der zum Erfassen und Senden von Metriken und Ereignissen aus -Systemen verwendet wird. Sie können Telegraf so konfigurieren, dass die Leistungsindikatoren und Statistiken von einem Eingabe-Plug-In erfasst und an ein Ausgabe-Plug- In gesendet werden. Informationen zum Integrieren von Telegraf mit SD-WAN Gateways zum Erfassen und Exportieren der Leistungsindikatoren in ein Plug-In von Drittanbietern finden Sie unter Konfigurieren der Telegraf-Integration. VMware, Inc. 30
VMware SD-WAN Gateway-Überwachungshandbuch Konfigurieren der Telegraf-Integration Telegraf ist ein Plug-In-gesteuerter Server-Agent zum Erfassen und Senden von Metriken und Ereignissen aus Systemen. Das Eingabe-Plug-In ist /etc/telegraf/vcg_metrics.sh, eine Datei, die die zu verwendenden Leistungsindikatoren enthält. Das Ausgabe-Plug-In kann entweder Wavefront oder Prometheus sein. Telegraf erfasst die Metriken aus den deklarierten Eingaben und sendet die Details an die deklarierten Ausgaben. Verfahren 1 Verwenden Sie die folgenden Befehle, um das Ausgabe-Plug-In zu konfigurieren. Sie können die Ports in den entsprechenden Konfigurationsdateien nach Bedarf anpassen. n Für Wavefront (For Wavefront) [[outputs.wavefront]] host = "wavefront_proxy_IP" port = 2878 metric_separator = "." source_override = ["hostname", "agent_host", "node_host"] convert_paths = true Der Parameter wavefront_proxy_IP ist die IP-Adresse des Wavefront-Proxyservers. n Für Prometheus (For Prometheus) [[outputs.prometheus_client]] listen=":9273" metric_version=2 2 Telegraf muss den Befehl /opt/vc/bin/dispcnt in vcg_metrics.sh ausführen, um die Metriken von SD-WAN Gateway zu erfassen, und der Befehl erfordert sudo. Verwenden Sie den folgenden Befehl, um Telegraf zur sudo-Gruppe hinzuzufügen. sudo usermod -G sudo telegraf 3 Fügen Sie IP-Tabellenregeln hinzu, um den externen Überwachungssystemen den Zugriff auf den Telegraf-Port zu ermöglichen. Die Quell-IP-Adresse muss aus Sicherheitsgründen angegeben werden. Fügen Sie die folgenden Regeln hinzu, um Datenverkehr von Wavefront und Prometheus zu ermöglichen. Bei Bedarf können Sie die Ports in den entsprechenden Konfigurationsdateien anpassen. n Für Wavefront (For Wavefront) sudo iptables -I INPUT -p tcp -m tcp --source --sport 2878 -m comment --comment "wavefront" -j ACCEPT VMware, Inc. 31
VMware SD-WAN Gateway-Überwachungshandbuch n Für Prometheus (For Prometheus) sudo iptables -I INPUT -p tcp -m tcp --source --dport 9273 -m comment --comment "prometheus" -j ACCEPT Ergebnisse Die Integration von Telegraf sendet die Daten von den Gateways an die Ausgabe-Plug-Ins, und Sie können die Details in den Dashboards in einem visuellen Format anzeigen. Die folgende Abbildung zeigt eine Beispielausgabe, die im Wavefront-Dashboard angezeigt wird. Das Diagramm veranschaulicht Informationen auf Unternehmensebene zu Flow-Anzahl, NAT-Anzahl, Routenanzahl und Durchsatzdetails. Eine Liste der Leistungsindikatoren, die vom Eingabe-Plug-In-Skript /etc/telegraf/ vcg_metrics.sh exportiert wurden, finden Sie unter Unterstützte Leistungsindikatoren. Konfigurieren von Telegraf als Syslog-Empfänger Sie können Telegraf so konfigurieren, dass Syslog-Einstellungen von Gateways empfangen werden. So konfigurieren Sie Telegraf als Syslog-Empfänger: Verfahren 1 Klicken Sie im Operator-Portal auf Gateways. 2 Auf der Seite Gateways wird die Liste der verfügbaren Gateways angezeigt. Klicken Sie auf den Link zu einem Gateway. Die Details des ausgewählten Gateways werden auf der Seite Gateways konfigurieren (Configure Gateways) angezeigt. VMware, Inc. 32
VMware SD-WAN Gateway-Überwachungshandbuch 3 Scrollen Sie auf der Registerkarte Übersicht (Overview) zum Abschnitt Syslog-Einstellungen (Syslog Settings) und konfigurieren Sie die Loopback-IP-Adresse als Syslog-Empfänger. 4 Konfigurieren Sie das Eingabe-Plug-In in Telegraf mit dem in SD-WAN Orchestrator konfigurierten Protokoll und Port wie folgt: [[inputs.syslog]] server = "tcp://:6514" framing = "non-transparent" 5 Konfigurieren Sie ein Ausgabe-Plug-In. Ergebnisse Die Integration von Telegraf sendet die Syslog-Daten von den Gateways an die Ausgabe-Plug- Ins, und Sie können die Details in den Dashboards im visuellen Format anzeigen. Unterstützte Leistungsindikatoren Nach der Integration von Telegraf in ein SD-WAN Gateway können Sie die Leistungsindikatoren aus der konfigurierten Eingabe erfassen und in das Ausgabe-Plug-In exportieren. In der folgenden Tabelle sind die unterstützten Leistungsindikatoren aufgeführt, die von einem SD-WAN Gateway exportiert werden können. Unterstützte Mindestversion Leistungsindikatorname Beschreibung Verfügbarkeit von SD-WAN number_of_edges Anzahl der mit dem Gateway verbundenen Global 4.3.0 Edges number_of_tunnels Anzahl der dem Gateway zugeordneten Global 4.3.0 Tunnel IPv4, IPv6 4.5.0 number_of_routes Anzahl der im Gateway installierten Routen Global 4.3.0 number_of_flows Gesamtanzahl der aktiven Flows im Global 4.3.0 Gateway active_NAT_entries Anzahl der aktiven NAT-Einträge pro Peer. Global 4.3.0 free_NAT_entries Anzahl der freien freigegebenen Global 4.3.0 Arbeitsspeichereinträge, die für NAT zugewiesen sind VMware, Inc. 33
Sie können auch lesen