0Pricing
Docker & DevOps Fundamentals · Lekcja

Konfigurowanie klastra Swarm

Zainicjalizuj Docker Swarm, dodaj węzły menedżera i workerów oraz sprawdź stan klastra.

Konfigurowanie klastra Swarm to bezpłatna lekcja Docker & DevOps Fundamentals na CoddyKit. To lekcja 2 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.

Witamy w konfiguracji Docker Swarm

Czy są Państwo gotowi do orkiestracji kontenerów? W tej lekcji nauczą się Państwo, jak przekształcić pojedynczy host Docker w wydajny klaster Swarm.

Dowiedzą się Państwo, jak zainicjować Swarm, dodać nowe maszyny jako węzły managera i workera oraz sprawdzić stan klastra.

Konfigurowanie klastra Swarm — ilustracja 1

Wymagania wstępne konfiguracji Swarm

Zanim zaczniemy, należy przygotować kilka rzeczy:

  • Docker Desktop/Engine: Musi być zainstalowany na wszystkich planowanych maszynach.
  • Dostęp do sieci: Wszystkie maszyny muszą mieć możliwość komunikowania się ze sobą przez sieć.
  • Otwarte porty: Docker Swarm używa określonych portów do komunikacji. Należy upewnić się, że są otwarte:
    • TCP port 2377 do komunikacji związanej z zarządzaniem klastrem.
    • TCP & UDP port 7946 dla nakładkowej sieci kontenerów.
    • UDP port 4789 dla ruchu w sieci nakładkowej.

Inicjowanie pierwszego Swarm

Aby uruchomić nowy Swarm, należy wybrać jedną maszynę, która będzie pierwszym węzłem managera. Ten węzeł będzie obsługiwać wszystkie zadania związane z orkiestracją.

Do rozpoczęcia konfiguracji służy polecenie docker swarm init. Przekształca ono bieżący Docker Engine w managera Swarm.

Domyślnie używany jest adres IP bieżącej maszyny. W razie potrzeby można określić inny adres IP za pomocą --advertise-addr.

Demonstracja: inicjowanie Swarm

Zainicjujmy nowy Swarm. Należy uruchomić to polecenie na wybranej maszynie managera. Po inicjalizacji sprawdzimy jego stan.

Uwaga: Jeśli Docker nie wykryje poprawnie adresu automatycznie, może być konieczne zastąpienie YOUR_MANAGER_IP rzeczywistym adresem IP maszyny.

docker swarm init --advertise-addr YOUR_MANAGER_IP
docker node ls

Zrozumienie ról węzłów Swarm

W Docker Swarm węzły pełnią różne role:

  • Węzły managera: To mózg Swarm. Zarządzają klastrem, orkiestrują usługi i utrzymują oczekiwany stan aplikacji. Aby zapewnić wysoką dostępność, zazwyczaj używa się wielu managerów.
  • Węzły workerów: Na tych węzłach uruchamiane są właściwe aplikacje skonteneryzowane. Otrzymują zadania od węzłów managera i je wykonują.

Pojedynczy węzeł może jednocześnie pełnić funkcję managera i workera.

Dodawanie węzłów workerów do Swarm

Po zainicjowaniu Swarm można dodać kolejne maszyny jako węzły workerów. Zwiększa to wydajność klastra i jego możliwości uruchamiania kontenerów.

Po uruchomieniu docker swarm init wyświetlane jest polecenie w rodzaju docker swarm join --token :2377. Tego polecenia należy użyć na innych maszynach, aby dołączyć je jako workery.

Token ma kluczowe znaczenie dla uwierzytelniania i bezpieczeństwa.

Demonstracja: polecenie dołączania workera

To przykład polecenia, które należy uruchomić na osobnej maszynie (docelowym workerze), aby dołączyć ją do Swarm. Należy pamiętać o zastąpieniu SWMTKN-... właściwym tokenem oraz MANAGER_IP adresem IP managera.

Uwaga: Tego polecenia nie można uruchomić bezpośrednio w tym środowisku, ponieważ wymaga ono konfiguracji obejmującej wiele maszyn. Służy ono wyłącznie do celów demonstracyjnych.

docker swarm join \
  --token SWMTKN-1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \
  192.168.1.100:2377

Sprawdzanie stanu klastra Swarm

Po dodaniu węzłów warto sprawdzić, czy prawidłowo dołączyły do Swarm.

Za pomocą polecenia docker node ls uruchomionego na dowolnym węźle managera można wyświetlić wszystkie węzły w Swarm, ich stan, dostępność i role.

Aby węzeł działał w pełni prawidłowo, jego STATUS powinien mieć wartość Ready, a AVAILABILITY — wartość Active.

Szybkie sprawdzenie: inicjalizacja Swarm

Postanowili Państwo skonfigurować nowy Docker Swarm. Jakiego polecenia należy użyć na pierwszym hoście, aby został początkowym węzłem managera?

Powtórzenie: konfigurowanie Swarm

Świetna praca! Poznali już Państwo podstawy konfigurowania klastra Docker Swarm:

  • docker swarm init: Służy do utworzenia nowego Swarm i wyznaczenia bieżącej maszyny jako pierwszego managera.
  • docker swarm join: Służy do dodawania innych maszyn jako węzłów workerów lub managerów do istniejącego Swarm.
  • docker node ls: Umożliwia sprawdzenie stanu i ról wszystkich węzłów w klastrze Swarm.

Za pomocą tych poleceń można zbudować solidną podstawę do orkiestracji aplikacji skonteneryzowanych!

Często zadawane pytania

Czy lekcja „Konfigurowanie klastra Swarm” jest bezpłatna?

Tak — pełny tekst „Konfigurowanie klastra 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 „Konfigurowanie klastra Swarm”?

Zainicjalizuj Docker Swarm, dodaj węzły menedżera i workerów oraz sprawdź stan klastra. Ć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 2 z 4.

Ile czasu zajmuje lekcja „Konfigurowanie klastra 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