Mini-Swarm

An dieser Stelle nur zum reinschnuppern

Hinweis

Ich habe mich entschieden dieses Kurzkapitel zu Docker Swarm hier zu belassen, obwohl man diese Orchestrierung aktuell (2023) so gut wie nicht mehr einsetzt. Nicht ohne Grund unterstützen auch die Docker Entwicklungen die Kubernetes Orchestrierungen.

Mit docker stack deploy einen Cluster mit nur einem Docker-Mitglied nutzen.

Gefahr

Bei vorherigen Übungen mit docker-compose (s.o.) inkl. Volumes bitte vorher aufräumen/löschen!

Docker-Schwarm initieren: docker swarm init

docker swarm init                                      # Docker Swarm initieren
cd test                                                # hier ist das docker-compose.yml
mkdir /var/dc-test-www                                 # Volume Wordpress HTML
mkdir /var/dc-test-db                                  # Volume MariaDB Databases
docker stack deploy -c docker-compose.yml stacktest    # und los geht es...

docker stack rm stacktest                              # alles (bis auf Volumes) löschen!

Das Beispiel zeigt ganz schön die zusätzliche Abstraktionsebene beim Testen der Docker-Technik.

Testen der WordPress-Installation im Browser (URL): 172.20.0.2:8082

Also: die Portumsetzung quasi eine Netzwerk-Ebene weiter (siehe GW-Netzwerk)! Die richtige IP (hier im Beispiel: 172.20.0.2) analysieren Sie über docker network Analyse (oder einfach mit ip a s auf Docker Host: siehe GW-Bridge).

Der Docker läuft weiterhin im Swarm-Modus!

Beenden mit: docker swarm leave --force

Für Docker Swarm dann auch weitere Deploy-Einstellungen (später mehr bei Swarm):

  • deploy.mode

  • deploy.placement.constraint ; Regeln: node.id, node.hostname, node.role

Wenn später mehrere Node (Docker Host Swarm Mitglieder) gejoint werden (docker swarm join ...) müssen weitere Vorbereitungen und Konfigurationen beachtet werden: insbesondere die Nutzung von Zeitservice NTP, damit die Nodes genau gleich „ticken“.