Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Welche Docker-Version verfügt über einen integrierten Schwarm?

Welche Docker-Version verfügt über einen integrierten Schwarm?

WBOY
WBOYOriginal
2022-07-08 15:39:571558Durchsuche

Swarm ist ab der „Docker 1.12.0“-Version integriert; es handelt sich um eine Plattform zur Verwaltung von Docker-Clustern, die mit der Go-Sprache entwickelt wurde. Ab der „Docker Swarm“-Version ist „Docker Swarm“ enthalten Die Docker-Engine verfügt über integrierte Service-Discovery-Tools, sodass Etcd oder Consul nicht für die Service-Discovery-Konfiguration konfiguriert werden müssen.

Welche Docker-Version verfügt über einen integrierten Schwarm?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Docker-Version 19.03, Dell G3-Computer.

Welche Version von Docker verfügt über einen integrierten Swarm? Swarm ist eine von Docker gestartete Plattform zur Verwaltung von Docker-Clustern. Fast die gesamte Entwicklung erfolgt in der GO-Sprache. Docker Swarm ist wie Docker Compose ein offizielles Container-Orchestrierungsprojekt von Docker Der Unterschied besteht jedoch darin, dass Docker Compose ein Tool zum Erstellen mehrerer Container auf einem einzelnen Server oder Host ist, während Docker Swarm Container-Cluster-Dienste auf mehreren Servern oder Hosts erstellen kann. Für die Bereitstellung von Microservices ist Docker Swarm offensichtlich besser geeignet.

Ab Docker-Version 1.12.0 ist Docker Swarm in der Docker-Engine (Docker Swarm) enthalten und verfügt über integrierte Service-Discovery-Tools. Wir müssen Etcd oder Consul nicht wie zuvor für die Service-Discovery-Konfiguration konfigurieren. .

Wie Sie der obigen Abbildung entnehmen können, ist Swarm eine typische Master-Slave-Struktur, die Manager durch die Entdeckung von Diensten wählt. Der Manager ist der zentrale Verwaltungsknoten, der die einheitliche Verwaltung des Managers übernimmt. Über das Raft-Protokoll wird keine zusätzliche Unterstützung für den Erkennungsdienst benötigt. Es verfügt außerdem über einen integrierten DNS-Lastausgleich und eine integrierte Unterstützung für externe Lastausgleichsmechanismen.

Welche Docker-Version verfügt über einen integrierten Schwarm?

Wissen erweitern

So funktioniert Docker Swarm1) Docker Engine-Client

docker service create: Wir verwenden den Befehl „docker service create“, um einen Dienst zu erstellen.

2) Schwarmmanager

API: Diese Anfrage wird direkt von der API des Schwarmmanagers empfangen, empfängt Befehle und erstellt Serviceobjekte.

Orchestrator: Erstellen Sie eine Aufgabe für den Dienst.

Allocater: Weisen Sie dieser Aufgabe eine IP-Adresse zu.

Dispatcher: Aufgaben bestimmten Knoten zuweisen.

Scheduler: Geben Sie den angegebenen Befehl an den Knoten aus.

3) Worker-Knoten: Führen Sie nach Erhalt der Manager-Aufgabe die Aufgabe aus.

Container: Erstellen Sie den entsprechenden Container.

Worker: Stellen Sie eine Verbindung zum Scheduler her, um die zugewiesenen Aufgaben zu überprüfen.

Executor: Führen Sie die den Worker-Knoten zugewiesenen Aufgaben aus.

Dienst: Es handelt sich um eine Kopie, die als Aufgabe verstanden werden kann, und eine Aufgabe ist ein Container.

Schwarmmanager: Er verteilt diese Kopie an drei verfügbare Arbeitsknoten.

Container: Der eigentliche Docker-Container zum Ausführen der Anwendung.

Aufgabe: Der Name der Arbeitsaufgabe ist der Dienstname, gefolgt von .1 entsprechend der Nummer und so weiter.

Empfohlenes Lernen: „

Docker-Video-TutorialWelche Docker-Version verfügt über einen integrierten Schwarm?

Das obige ist der detaillierte Inhalt vonWelche Docker-Version verfügt über einen integrierten Schwarm?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn