So zeigen Sie den Status der Knoten in einem Docker Swarm - Cluster an

DockerBeginner
Jetzt üben

Einführung

Docker Swarm ist ein leistungsstarkes Tool zur Orchestrierung und Verwaltung von containerisierten Anwendungen im großen Stil. In diesem Tutorial erfahren Sie, wie Sie den Status der Knoten in einem Docker Swarm - Cluster überwachen können, um die Gesundheit und Leistung Ihrer verteilten Infrastruktur sicherzustellen.

Docker Swarm verstehen

Docker Swarm ist eine native Lösung zur Clusterbildung und Orchestrierung von Docker - Containern. Es ermöglicht Ihnen, eine Gruppe von Docker - Hosts zu verwalten und Anwendungen auf diesen zu deployen, wobei es Hochverfügbarkeit und Skalierbarkeit bietet.

Was ist Docker Swarm?

Docker Swarm ist ein integriertes Feature von Docker, das es Ihnen ermöglicht, mehrere Docker - Hosts zu einem einzigen, virtuellen Docker - Host zusammenzufassen. Dieser virtuelle Host wird als Swarm - Cluster bezeichnet und bietet eine einheitliche Schnittstelle zur Verwaltung und Orchestrierung von Containern über mehrere Hosts hinweg.

Wichtige Konzepte in Docker Swarm

  • Swarm: Ein Swarm ist eine Gruppe von Docker - Hosts, die zu einem einzigen, virtuellen Docker - Host zusammengefügt wurden.
  • Knoten (Node): Ein Knoten ist ein einzelner Docker - Host, der Teil des Swarms ist. Knoten können entweder Manager oder Worker sein.
  • Manager: Manager - Knoten sind für die Verwaltung des Swarms verantwortlich, einschließlich der Planung von Aufgaben, der Aufrechterhaltung des gewünschten Zustands des Swarms und der Bereitstellung eines Einstiegspunktes für die Interaktion mit dem Swarm.
  • Worker: Worker - Knoten sind dafür verantwortlich, die eigentlichen Container - Aufgaben auszuführen, wie von den Manager - Knoten vorgegeben.
  • Service: Ein Service ist eine deklarative Methode zur Definition, wie Sie möchten, dass Ihre Anwendung im Swarm läuft. Services können hoch- oder herunterskaliert werden und bieten Lastverteilung und Selbstheilungsfähigkeiten.

Vorteile von Docker Swarm

  • Hochverfügbarkeit: Docker Swarm bietet Hochverfügbarkeit für Ihre Anwendungen, indem es Container - Replikate automatisch über mehrere Knoten hinweg plant und verwaltet.
  • Skalierbarkeit: Sie können Ihre Anwendungen einfach hoch- oder herunterskalieren, indem Sie die Anzahl der Replikate für einen Service anpassen.
  • Einfachheit: Docker Swarm ist ein integriertes Feature von Docker, sodass es einfach einzurichten und zu nutzen ist, ohne dass zusätzliche Orchestrierungstools erforderlich sind.
  • Sicherheit: Docker Swarm bietet integrierte Sicherheitsfunktionen, wie z. B. verschlüsselte Kommunikation zwischen Knoten und rollenbasierte Zugangskontrolle.
graph TD
    A[Docker Host] --> B[Docker Host]
    B[Docker Host] --> C[Docker Host]
    C[Docker Host] --> A[Docker Host]
    A[Docker Host] -- Manager Node --> D[Worker Node]
    B[Docker Host] -- Worker Node --> D[Worker Node]
    C[Docker Host] -- Worker Node --> D[Worker Node]

Überwachen der Knoten eines Swarm - Clusters

Die Überwachung des Status der Knoten in einem Docker Swarm - Cluster ist entscheidend für die Aufrechterhaltung der Gesundheit und Leistung Ihrer Anwendungen. Docker Swarm bietet mehrere Befehle und Tools, um Ihnen die Überwachung des Status Ihrer Cluster - Knoten zu erleichtern.

Auflisten der Swarm - Knoten

Um alle Knoten in Ihrem Swarm - Cluster aufzulisten, können Sie den Befehl docker node ls verwenden:

docker node ls

Dies zeigt eine Tabelle mit Informationen zu jedem Knoten an, einschließlich der Knoten - ID, des Hostnamens, des Status, der Verfügbarkeit und des Manager - Status.

Prüfen der Knotendetails

Um detailliertere Informationen zu einem bestimmten Knoten zu erhalten, können Sie den Befehl docker node inspect verwenden:

docker node inspect <node_id>

Dies gibt ein JSON - Objekt aus, das detaillierte Informationen über den Knoten enthält, wie z. B. seine IP - Adresse, Rolle und Labels.

Überprüfen des Knotenstatus

Sie können auch den Status eines bestimmten Knoten mit dem Befehl docker node ps überprüfen:

docker node ps <node_id>

Dies zeigt eine Liste aller auf dem angegebenen Knoten laufenden Aufgaben (Container) zusammen mit ihrem Status und anderen relevanten Informationen an.

Überwachen der Knotengesundheit

Um die allgemeine Gesundheit Ihres Swarm - Clusters zu überwachen, können Sie den Befehl docker node update verwenden, um den gewünschten Verfügbarkeitszustand für jeden Knoten festzulegen:

docker node update --availability <active|pause|drain> <node_id>
  • active: Der Knoten ist verfügbar, um neue Aufgaben zu empfangen.
  • pause: Der Knoten wird keine neuen Aufgaben empfangen, aber bestehende Aufgaben werden weiterhin ausgeführt.
  • drain: Der Knoten wird keine neuen Aufgaben empfangen, und bestehende Aufgaben werden auf andere Knoten migriert.

Sie können auch den Befehl docker service ps verwenden, um den Status Ihrer Services zu überwachen und sicherzustellen, dass Aufgaben wie erwartet geplant und ausgeführt werden.

docker service ps <service_name>

Durch die Kombination dieser Befehle können Sie den Status und die Gesundheit Ihres Docker Swarm - Clusters effektiv überwachen.

Praktische Prüfungen des Knotenstatus

In diesem Abschnitt werden wir einige praktische Beispiele für die Prüfung des Status von Knoten in einem LabEx Docker Swarm - Cluster untersuchen.

Prüfen der Knotenverfügbarkeit

Um die Verfügbarkeit eines Knotens zu prüfen, können Sie den Befehl docker node inspect verwenden und nach dem Feld Availability suchen:

docker node inspect '{{.Availability}}' < node_id > --format

Dies gibt den aktuellen Verfügbarkeitsstatus des Knotens aus, der einer der folgenden sein kann:

  • active: Der Knoten ist verfügbar, um neue Aufgaben zu empfangen.
  • pause: Der Knoten wird keine neuen Aufgaben empfangen, aber bestehende Aufgaben werden weiterhin ausgeführt.
  • drain: Der Knoten wird keine neuen Aufgaben empfangen, und bestehende Aufgaben werden auf andere Knoten migriert.

Prüfen der Knotenrolle

Um die Rolle eines Knotens (Manager oder Worker) zu prüfen, können Sie den Befehl docker node inspect verwenden und nach dem Feld ManagerStatus suchen:

docker node inspect '{{.ManagerStatus.Leader}}' < node_id > --format

Dies gibt true aus, wenn der Knoten ein Manager ist, und false, wenn der Knoten ein Worker ist.

Überwachen der Knotengesundheit mit LabEx

LabEx bietet eine umfassende Überwachungslösung für Docker Swarm - Cluster. Sie können das LabEx - Dashboard verwenden, um den Status und die Gesundheit Ihrer Swarm - Knoten anzuzeigen, einschließlich Metriken wie CPU - Auslastung, Arbeitsspeicher und Netzwerknutzung.

Um LabEx zur Überwachung Ihres Swarm - Clusters zu verwenden, können Sie die folgenden Schritte ausführen:

  1. Installieren Sie den LabEx - Agenten auf jedem Knoten in Ihrem Swarm - Cluster.
  2. Konfigurieren Sie das LabEx - Dashboard so, dass es sich mit Ihrem Swarm - Cluster verbindet.
  3. Navigieren Sie zum LabEx - Dashboard und erkunden Sie die verschiedenen Überwachungs - und Visualisierungstools.

Durch die Verwendung von LabEx können Sie tiefere Einblicke in die Gesundheit und Leistung Ihres Docker Swarm - Clusters gewinnen, was es einfacher macht, auftretende Probleme zu identifizieren und zu beheben.

Zusammenfassung

Am Ende dieses Tutorials werden Sie ein umfassendes Verständnis davon haben, wie Sie den Status der Knoten in einem Docker Swarm - Cluster anzeigen können. Sie werden in der Lage sein, die wesentlichen Tools und Befehle zur Überwachung der Gesundheit und Leistung Ihrer Docker Swarm - Bereitstellung zu nutzen, was Ihnen hilft, eine zuverlässige und effiziente containerisierte Umgebung aufrechtzuerhalten.