Czym jest Docker Swarm? Cała odpowiedź na to pytanie znajduje się na powyższym screenie. Jest to po prostu klaster, składający się z pojedynczych hostów, na których działają kontenery, które spinają się w jeden „organizm”, na którym można uruchomić jakieś zadania. Zarządzanie całą infrastrukturą spoczywa na hostach, którą sprawują funkcję managera.
Wstępna konfiguracja środowiska Docker Swarm
W celu skonfigurowania Docker Swarm musisz posiadać min. 2 hosty z zainstalowaną poprawnie usługą Docker.
Kolejną rzeczą jest wyłączenie lub przekonfigurowanie firewall’a, aby przyjmował ruch pomiędzy węzłami, oczywiście tę konfigurację należy wykonać na wszystkich hostach klastra (zakładam, że hosty działają na Centos 7).
Wyłączenie firewall’a nastąpi po wykonaniu poniższego polecenia.
1 2 |
sudo systemctl stop firewalld sudo systemctl disable firewalld |
Przepuszczenie wybranego ruchu przy pomocy poniższych poleceń.
1 2 3 4 5 6 7 |
firewall-cmd --permanent --add-port=2376/tcp firewall-cmd --permanent --add-port=2377/tcp firewall-cmd --permanent --add-port=7946/tcp firewall-cmd --permanent --add-port=80/tcp firewall-cmd --permanent --add-port=7946/udp firewall-cmd --permanent --add-port=4789/udp firewall-cmd --reload |
Na koniec należy ponownie uruchomić usługę docker.
1 |
sudo systemctl restart docker |
Uruchomienie Docker Swarm – Manager
Musisz uruchomić Docker Swarm jednocześnie z powołaniem hosta, który będzie pełnił rolę manager’a. W tym przykładzie będzie jeden manager (host, który będzie nadzorował pracę klastra, ale również może uruchomić zadania) oraz jeden worker (host, który będzie wykonywał konkretne zadania, bez opcji nadzorowania).
Poniższe polecenie zainicjuje klaster Docker Swarm, tworząc jednocześnie manager’a. Adres IP jest adresem hosta, który jest przypisany do manager’a.
1 |
docker swarm init --advertise-addr 192.168.100.100 |
W odpowiedzi otrzymasz polecenie, które pozwala na dołączenie hosta, który będzie pracował jako worker.
Jeżeli chcesz ponownie pokazać to polecenie, aby dodać nowe hosty w roli manager’a czy też worker’a, posłuż się poniższym poleceniem/przypomnieniem. Wybierając z dostępnych opcji manager lub worker.
1 |
docker swarm join-token manager | worker |
Uruchomienie Docker Swarm – Worker
Kolejnym krokiem, który musisz wykonać, aby powstał Docker Swarm to dodanie min. jednego worker’a. Jak wspomniałem powyżej polecenie, które to zapewnia zostało wygenerowane przy inicjalizacji manager’a. Oczywiście polecenia dla worker’a oraz manager’a, wygenerują inne hash’e, które pozwolą na dodanie kolejnych uczestników.
1 |
docker swarm join --token SWMTKN-1 49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c 192.168.100.100:2377 |
Sprawdź listę członków Docker Swarm
Na koniec należy sprawdzić czy wszystkie hosty zostały dodane poprawnie.
1 |
docker node ls |
W wyniku otrzymasz listę hostów, które zostały dodane do Docker Swarm, w zależności od ilości wykonanych dodań hostów do listy.
Zapraszam na kolejny wpis, w którym pokażę w jaki sposób zabezpieczyć Docker Swarm.
Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne. Możesz również pozostawić całkowicie anonimowy pomysł na wpis/nagranie.
Link do formularza tutaj: https://beitadmin.pl/pomysly
Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).