Docker & DevOps Fundamentals · Lekcja

Skalowanie i aktualizacje kroczące w Swarm

Skaluj usługi w całym swarmie, wykonuj aktualizacje kroczące bez przestojów i automatycznie wycofuj zmiany, gdy aktualizacja się nie powiedzie.

Lekcja 4 z 413 kroki

Skalowanie i aktualizacje kroczące w Swarm to bezpłatna lekcja Docker & DevOps Fundamentals na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Docker & DevOps Fundamentals, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Docker & DevOps Fundamentals zawiera 4 lekcji w sumie.

Usługi można skalować

W Swarm usługa opisuje żądaną liczbę identycznych replik kontenera. Menedżer swarmu stale dba o to, aby taka liczba replik działała na różnych węzłach.

Skalowanie usługi

Liczbę replik można w dowolnym momencie zmienić za pomocą docker service scale. Harmonogramista rozkłada nowe zadania między dostępne węzły.

docker service scale web=5

Skalowanie podczas tworzenia

Repliki można również ustawić podczas tworzenia usługi za pomocą --replicas.

docker service create --name web --replicas 3 -p 80:80 nginx

Sprawdzanie stanu replik

Należy użyć docker service ls, aby uzyskać podsumowanie, oraz docker service ps, aby zobaczyć każde zadanie i węzeł, na którym działa.

docker service ps web

Czym jest aktualizacja krocząca?

Aktualizacja krocząca zastępuje repliki po kilka naraz, dzięki czemu usługa pozostaje dostępna przez cały czas. Swarm ma tę funkcję wbudowaną.

Uruchamianie aktualizacji

Nowy obraz można przypisać do usługi za pomocą docker service update --image. Swarm stopniowo zastępuje zadania zgodnie z zasadami aktualizacji.

docker service update --image nginx:1.27 web

Kontrolowanie wdrożenia

Wdrożenie można dostosować za pomocą równoległości i opóźnienia: określają one, ile zadań zmieniać jednocześnie oraz jak długo czekać między partiami.

docker service update \
 --update-parallelism 2 \
 --update-delay 10s \
 --image nginx:1.27 web

Działanie w razie niepowodzenia aktualizacji

Należy ustawić --update-failure-action na rollback, aby nieudana aktualizacja automatycznie się wycofała, zamiast pozostawić usługę w stanie awarii.

docker service update \
 --update-failure-action rollback \
 --image nginx:1.27 web

Ręczne wycofanie zmian

Jeśli aktualizacja nie działa prawidłowo, docker service rollback natychmiast przywraca usługę do jej poprzedniej specyfikacji.

docker service rollback web

Kontrole stanu kierują aktualizacjami

Instrukcja kontenera HEALTHCHECK informuje Swarm, czy nowa replika jest rzeczywiście gotowa. W połączeniu z zasadami aktualizacji zapobiega to kierowaniu ruchu do niesprawnych zadań.

HEALTHCHECK --interval=10s CMD curl -f http://localhost/ || exit 1

Globalne a replikowane

Usługi replikowane działają ze stałą liczbą replik, a usługi globalne uruchamiają dokładnie jedno zadanie na węzeł — idealnie nadają się dla agentów, takich jak kolektory dzienników. Skalowanie nie dotyczy trybu globalnego.

docker service create --mode global --name agent myagent

Szybkie sprawdzenie

W jaki sposób aktualizacja krocząca utrzymuje dostępność usługi?

Podsumowanie

Można już sprawnie obsługiwać usługi Swarm:

  • docker service scale zmienia liczbę replik
  • service update --image uruchamia aktualizacje kroczące
  • Równoległość, opóźnienie i --update-failure-action rollback zwiększają bezpieczeństwo
  • service rollback wycofuje zmiany, a kontrole stanu określają gotowość

Razem zapewniają one wdrożenia bez przestojów w swarmie.

Bezpłatny start

Ucz się Docker & DevOps Fundamentals dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
12
Lekcje
48

Często zadawane pytania

Czy lekcja „Skalowanie i aktualizacje kroczące w Swarm” jest bezpłatna?

Tak — pełny tekst „Skalowanie i aktualizacje kroczące w Swarm” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Docker & DevOps Fundamentals, przejdź na CoddyKit PRO. Kurs Docker & DevOps Fundamentals zawiera 4 lekcji w sumie.

Co nauczysz się w „Skalowanie i aktualizacje kroczące w Swarm”?

Skaluj usługi w całym swarmie, wykonuj aktualizacje kroczące bez przestojów i automatycznie wycofuj zmiany, gdy aktualizacja się nie powiedzie. Ćwiczysz Docker & DevOps Fundamentals z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Docker & DevOps Fundamentals?

Nie wymagamy żadnego doświadczenia. Docker & DevOps Fundamentals w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Skalowanie i aktualizacje kroczące w Swarm”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Docker & DevOps Fundamentals?

Tak. Każda lekcja Docker & DevOps Fundamentals zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Wprowadzenie do Docker Swarm
  2. Konfigurowanie klastra Swarm
  3. Wdrażanie usług w Swarm
  4. Skalowanie i aktualizacje kroczące w Swarm
← Powrót do Docker & DevOps Fundamentals