So installierst du Sysdig unter Debian 11

Sysdig ist ein quelloffenes, plattformübergreifendes Systemüberwachungs- und Fehlerbehebungsprogramm. Es ist sowohl für erfahrene Sysadmins als auch für diejenigen nützlich, die sich zum ersten Mal mit der Linux-Kommandozeile vertraut machen. Es kann uns eine Menge Einblicke in das geben, was auf unseren Servern, Containern oder Desktops während des normalen Betriebs tatsächlich passiert.

Sysdig wird mit einer Kommandozeilenschnittstelle geliefert, hat aber auch eine Web-UI für diejenigen, die eher GUI-affin sind.

Sysdig sammelt Systemdaten und ermöglicht es dem Nutzer, diese Daten auf vielfältige Weise zu filtern und zu überwachen. Du kannst den Datenverkehr zu/von einem Container oder einer VM aufzeichnen, Filter verwenden, damit das System dir nur relevante Ereignisse anzeigt, z. B. „wenn Prozess X auf Port Y lauscht“, und du kannst Ereignisse zu grafischen Darstellungen von langfristigen Trends zusammenfassen.

Die größte Stärke von Sysdig ist die Tiefe des Einblicks. Sysdig kann dir sagen, wo alle Lesevorgänge auf der Festplatte stattfinden, wie viele Pakete jeder Container sendet/empfängt oder ob einer deiner Webserver ausgefallen ist. Sysdig geht sogar noch einen Schritt weiter und untermauert diese Informationen mit relevanten Binärdaten (falls aufgezeichnet).

Die meiste Zeit verbringen wir als Sysadmins mit der Behebung von Problemen, die schwer zu reproduzieren oder zu identifizieren sind. Der Grund, warum diese Probleme so schwer zu beheben sind, ist, dass wir nicht genügend Informationen haben.

Sysdig kann uns genug Informationen liefern, um diese Probleme zu lösen. Sobald wir diese Informationen haben, wird die Fehlersuche so viel einfacher – es fühlt sich oft an, als hätte man eine Superkraft.

Sysdig funktioniert auf den meisten großen Distributionen, darunter CentOS, Ubuntu, Debian, Fedora Core, Arch Linux, Gentoo und sogar OSX. Die Installation ist denkbar einfach: Es ist nicht nötig, den Quellcode zu kompilieren (juhu!), und es gibt sogar eine offizielle GitHub-Seite mit Installationsanweisungen für jede Distribution, die Sysdig offiziell unterstützt.

In diesem Artikel werden wir Sysdig auf einem Debian 11 Server installieren. Der Prozess ist ganz einfach und erfordert keine tiefgreifenden Kenntnisse über Linux.

Voraussetzungen

Um Sysdig zu installieren, brauchen wir Folgendes

  • Eine ssh-Verbindung zu unserem entfernten Server.
  • Root- oder sudo-Zugang.

Das System aktualisieren

Es ist eine gute Idee, das System zu aktualisieren, bevor wir fortfahren. Das können wir tun, indem wir ausführen:

sudo apt-get update && sudo apt-get upgrade -y

Sobald die Aktualisierungen abgeschlossen sind, führst du die folgenden Befehle aus, um die erforderlichen Abhängigkeiten zu installieren. libc6 ist die C-Standardbibliothek, mit der Sysdig die meisten seiner Aufgaben erledigt. curl ist ein Tool, das Dateien über das HTTP- oder HTTPS-Protokoll abruft und das wir zum Herunterladen von Sysdig verwenden werden. libcurl3 ist eine Abhängigkeit für curl.

sudo apt install libc6 libcurl3 gnupg -y
sudo apt install software-properties-common curl -y

Installation von Syndig auf Debian 11

Jetzt, da das System aktualisiert ist, können wir Sysdig herunterladen und installieren. Führe den folgenden Befehl aus, um sysdig herunterzuladen und zu installieren.

sudo curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash

Je nach den Spezifikationen deines Servers kann dies eine Weile dauern. Hab also bitte etwas Geduld, bis der Download und die Installation abgeschlossen sind.

Beispielhafte Ausgabe:

Installation von Syndig unter Debian 11

Sobald die Installation abgeschlossen ist, können wir überprüfen, ob Sysdig korrekt installiert wurde, indem wir den folgenden Befehl ausführen.

sysdig --version

Wenn die Installation erfolgreich war, gibt dieser Befehl die Versionsdaten von Sysdig aus (siehe unten).

Installation von Syndig unter Debian 11

Du kannst auch die verschiedenen Funktionen von Sysdig überprüfen, indem du den folgenden Befehl ausführst.

sysdig -h

Installation von Syndig unter Debian 11

Sysdig benutzen

Nachdem wir nun Sysdig installiert haben, wollen wir uns einige grundlegende Befehle in Sysdig ansehen.

Als Erstes müssen wir den folgenden Befehl ausführen, um die Systemaktivitäten zu erfassen. Wir verwenden den Befehl sysdig, um das System zu überwachen. Wir führen den Befehlsysdig mit dem Präfix sudo aus, weil csysdig Root- oder sudo-Zugriff benötigt, um zu funktionieren.

sudo csysdig

Beispielhafte Ausgabe:

Sysdig verwenden

Sobald sysdig mit der Erfassung von Ereignissen beginnt, füllt sysdig die Schnittstelle mit Informationen. Nachdem der obige Befehl ausgeführt wurde, werden die Systemdaten alle zwei Sekunden aktualisiert. Dies wird durch die Variable refresh_rate gesteuert, die standardmäßig auf 2 Sekunden eingestellt ist. Diese kann in der Konfigurationsdatei von sysdig angepasst werden.

In der obigen Ausgabe siehst du Spalten wie PID, Name, CPU und Comm. Das sind Spaltenbeschreibungen, die du sehen kannst, wenn du mit der Maus darüberfährst. Die Syntax der Spaltennamen lautet [Feldname]-[Feldbeschreibung].

Die Felder, die uns am meisten interessieren, sind:

  • PID – die PID des Prozesses, der das Ereignis erzeugt hat.
  • PPID – die PID des übergeordneten Prozesses für einen bestimmten Prozess.
  • %CPU – wie viel CPU-Zeit ein Prozess verbraucht.
  • USER – der Benutzername des Benutzers, der für den Prozess verantwortlich ist.
  • RES – die Menge des nicht ausgelagerten Speichers, die ein Prozess verwendet.
  • Command – die Befehlszeile, mit der der Prozess gestartet wurde.

Natürlich gibt es noch viele andere Spalten, die du verwenden kannst, um tiefere Einblicke in die Systemaktivitäten zu erhalten. Und Sysdig lässt sich an deine Bedürfnisse anpassen.

Da die Systemdaten ständig aktualisiert werden, kann es schwierig sein, zu verstehen, was vor sich geht. Wir können die Ausführung von Sysdig mit der Tastenkombination STRG + C stoppen. Sobald die Schnittstelle gelöscht ist, können wir einen Sysdig-Befehl mit Optionen und Filtern ausführen, um die gewünschten Daten zu erhalten.

Die Systax lautet sysdig [Optionen] [Filter].

Der Filtermechanismus von Sysdig ist sehr leistungsfähig und kann verwendet werden, um genau das zu finden, wonach du suchst. Filter bestehen, ähnlich wie bei tcpdump, aus einer Kette von einem oder mehreren primitiven Ausdrücken, die durch Konjunktionen („und“, „oder“) verbunden sind und optional durch eine Disjunktion („nicht“) abgeschlossen werden. Um alle Filter zu sehen, die wir mit sysdig verwenden können, führe den folgenden Befehl aus.

sysdig -l

Du erhältst eine Liste mit einer großen Anzahl von Filtern und einer kurzen Beschreibung der einzelnen Filter, wie unten gezeigt.

Sysdig verwenden

Da es unmöglich ist, auf alle einzugehen, werden wir einige häufig verwendete Filter vorstellen.

Wir beginnen mit dem Filter – proc.name=, mit dem wir nach bestimmten Prozessnamen filtern können.

Um zum Beispiel nach allen Ereignissen für den Prozessnamen „nano“ zu suchen, können wir den folgenden Befehl ausführen.

sudo sysdig proc.name=nano

Beispielhafte Ausgabe:

Sysdig verwenden

Du kannst auch Operatoren wie „oder“ und „und“ verwenden, um noch spezifischere Daten zu erhalten. So kannst du zum Beispiel alle Ereignisse für „nano“ oder „vi“ abrufen.

sudo sysdig proc.name=cat or proc.name=vi

Sysdig verwenden

Führe den folgenden Befehl aus, um die netzwerkbezogenen Ereignisse zu sehen. Du kannst sehen, welche Ports verbunden sind, MAC-Adressen und vieles mehr in Echtzeit.

sudo sysdig -c netstat

Beispielhafte Ausgabe:

Sysdig verwenden

Führe den unten stehenden Befehl aus, um die Prozesse zu ermitteln, die am meisten CPU-Leistung verbrauchen.

sudo sysdig -c topprocs_cpu

Beispielhafte Ausgabe:

Sysdig verwenden

Um die Systemaktivität zu erfassen und für eine spätere Analyse zu speichern, verwende die Option -w, gefolgt von einem Dateinamen. Im folgenden Beispiel wird die gesamte Ausgabe von sysdig in einer Datei namens „sysdig-output.scap“ gespeichert.

sudo sysdig -w sysdig-output.scap

Dieser Befehl weist sysdig an, die Daten kontinuierlich auszugeben, bis er durch Drücken von STRG+C gestoppt wird. Mit der Zeit wird die Datei sehr groß werden. Du kannst die Option-C verwenden, um die Systemaktivität in eine Datei mit einer maximalen Größe von einer bestimmten Anzahl von MB aufzuzeichnen.

Der folgende Befehl erstellt zum Beispiel alle 1 MB eine neue Datei und speichert die Systemaktivität darin.

sudo sysdig -C 1 -w sysdig-output.scap

Führe den Befehl ls -l aus, um die neu erstellte Datei mit dem Namen „sysdig-output.scap“ zu sehen (siehe unten).

ls -l

Die Ausgabe sieht wie folgt aus:

Sysdig verwenden

Schlussfolgerung

Sysdig verfügt über eine Vielzahl von Funktionen und ist ein hervorragendes Werkzeug für die Fehlersuche und Leistungsanalyse. Und da es Open-Source ist, kannst du seine Funktionen mit Hilfe von Meißeln erweitern, um sie deinen Bedürfnissen anzupassen.

In diesem Artikel haben wir einige der grundlegenden Befehle für den Einstieg in sysdig behandelt. Weitere Informationen zu sysdig und seinen Anwendungsfällen findest du auf der Dokumentationsseite.

Das könnte dich auch interessieren …