All dies ist in der Tat möglich, wenn Sie einen Swarm-Service erstellen oder aktualisieren.
Dies fällt unter die Optionen für die Platzierung von Containern in diesen Befehlen. Wenn es nur um Ressourcenreservierung geht, machen Sie sich Gedanken über --reserve-cpu
und --reserve-memory
. Dadurch wird sichergestellt, dass der Knoten über die freie CPU oder den freien Speicherplatz auf einem Knoten verfügt, bevor er die einzelnen Container ausführt.
Beispiel: Wenn Sie einen Swarm-Dienst benötigen, um zwei PHP-Replikate bereitzustellen, und jeder sicherstellen muss, dass er sich auf einem Knoten mit 1 GB Arbeitsspeicher und einer CPU befindet, service create --reserve-cpu 1 --reserve-memory 1GB php
planen Sie nur die Container auf Knoten, die dem Swarm-Scheduler über diese Menge an Hardware verfügen verfügbar. Wenn ein Knoten nur über zwei logische CPUs verfügt, werden niemals mehr als 2 Replikate dieses Dienstes auf diesem Knoten bereitgestellt.