Debuggen der cRPD-Anwendung
Fehlerbehebung ist ein systematischer Ansatz zur Lösung eines Problems. Das Ziel der Fehlerbehebung besteht darin, festzustellen, warum etwas nicht wie erwartet funktioniert und wie das Problem behoben werden kann.
Befehlszeilenschnittstelle
Die Befehlszeilenschnittstelle (CLI) von Junos OS ist das primäre Tool zur Steuerung und Fehlerbehebung von Routerhardware, Junos-Betriebssystem, Routing-Protokollen und Netzwerkkonnektivität. CLI-Befehle zeigen Informationen aus Routing-Tabellen, Informationen zu Routing-Protokollen und Informationen zur Netzwerkkonnektivität an, die von den traceroute
Dienstprogrammen abgeleitet wurden. RPD-Tracelog-Funktionen werden über die CLI unterstützt und aktiviert. Trace-Protokolldateien werden im Pfad gespeichert /var/log
.
Sie können die folgenden Junos CLI-Befehle verwenden, um cRPD-Fehler zu beheben:
-
show task
: Zeigen Sie die Routingprotokollaufgaben in der Routing-Engine an. -
show task memory detail
: Zeigt die Speicherauslastung für Routingprotokollaufgaben in der Routing-Engine an. -
show route
: Zeigt die aktiven Einträge in den Routing-Tabellen an. -
show bfd
: Zeigt Informationen zu aktiven BFD-Programmen (Bidirectional Forwarding Detection) an. -
show bgp
: Zeigt Informationen zu BGP-Zusammenfassungsinformationen für alle Routing-Instanzen an. -
show (ospf | ospf3)
: Zeigt Standardinformationen zu allen OSPF-Nachbarn für alle Routing-Instanzen an. -
show interfaces routing
: Führen Sie eine Routerdiagnose durch. -
show log
: Zeigt Systemaktivitätsprotokolle an und ermöglicht Ihnen die Überwachung und Anzeige von Informationen zur Leistungsüberwachung, Fehlerbehebung und Fehlerbehebung. -
show krt
: Überwachen Sie KRT-Warteschlangen und ihre Zustände. -
show programmable-rpd
: Listet Clients auf, die mit dem PRPD-Server (Programmable Routing Protocol Process) verbunden sind. Der prpd stellt öffentliche APIs zum Programmieren von Routing-Systemen bereit, sodass Benutzer direkt auf die APIs zugreifen können, um das Verhalten ihres Netzwerks anzupassen, zu erstellen und zu ändern. -
ip monitor
: Überwachen Sie die Installation von Routen zu Linux FIB und Schnittstellenereignissen und Netlink-Meldungen. -
tcpdump
: Erfassen Sie den Netzwerkverkehr zur/von der Steuerungsebene. -
netstat
: Überwachen Sie die Steckdosen. -
request support information
: Zeigen Sie die Supportinformationen an, die für die Fehlerbehebung verwendet werden.
Fehlerbehandlung
Wenn der rpd aufgrund eines Problems abstürzt, wird der rpd-Prozess automatisch neu gestartet. Für die manuelle Wiederherstellung nach einem Fehler können Sie die folgenden CLI-Befehlshierarchien implementieren, um die Fehler zu behandeln:
-
restart routing
: Starten Sie den rpd neu. -
clear bgp
: BGP-Sitzungen löschen. -
deactivate
: Deaktivieren Sie die CLI-Konfiguration. -
activate
: Aktivieren Sie die CLI-Konfiguration.
Fehlerbehebung im Container
Sie können verschiedene Docker-Befehle implementieren, um Probleme auf Containerebene zu überwachen und zu beheben, wenn cRPD als Docker-Container bereitgestellt wird.
-
docker ps
: Listet aktive Container und deren Status auf. -
docker stats
: Kontinuierliche Überwachung der Ressourcenauslastung. -
docker logs
: Extrahieren von Containerprotokollen für den Fall, dass der Container unerwartet beendet wird. -
docker stop
: Stoppen Sie das Docker im aktuellen Zustand. -
docker start
: Starten Sie den Docker-Container neu.
Docker verifizieren
Anzeigen von Core-Dateien
Zweck
Wenn eine Core-Datei generiert wird, finden Sie die Ausgabe unter / var/crash. Die generierten Core-Dateien werden auf dem System gespeichert, auf dem die Docker-Container gehostet werden.
Sie können auch ping und ping6 verwenden, um die Erreichbarkeit im Shell-Modus zu überprüfen.
Aktion
So listen Sie die Core-Dateien auf:
-
Beenden Sie die CLI-Umgebung, um zur Unix-Shell des Hosts zurückzukehren.
user@host> start shell
-
Ändern Sie das Verzeichnis in / var/crash:
root@ubuntu-vm18$ cd /var/crash
root@ubuntu-vm18$ ls -l
-
Führen Sie den Befehl aus, um den Speicherort der Core-Dateien zu identifizieren:
root@ubuntu-vm18$ sysctl kernel.core_pattern
-
Überprüfen Sie, ob zum Zeitpunkt des Absturzes Core-Dateien erstellt wurden.
Konfigurieren von Syslog
Syslog ist standardmäßig aktiviert, und die Meldungen werden in der Datei / var/log/messages gespeichert, die auf der lokalen Routing-Engine gespeichert ist.
So konfigurieren Sie das Remote-Syslog:
So zeigen Sie die Protokollmeldungen an:
-
Sie können die Protokollmeldungen mit dem folgenden Befehl anzeigen:
root@crpd1> show log messages
Siehe auch
Zeigen Sie die Klartextversion des verschleierten ($9$) oder verschlüsselten ($8$) Passworts an
root@crpd1> request system decrypt password
Weitere Informationen finden Sie unter Anfordern des Systementschlüsselungskennworts.