- Instalacija i optimizacija Dockera i Docker Composea na SBC pločama.
- Napredna konfiguracija mreže korištenjem hotspot-ova i upravljanja DNS/DHCP-om.
- Implementacija orkestracije kontejnera korištenjem Docker Swarma.
- Centralizirano upravljanje klasterima putem Portainer interfejsa.

Jeste li ikada razmišljali o tome da imate vlastiti minijaturni podatkovni centar, a da ne potrošite bogatstvo na profesionalni hardver? Pa, postavljanje klastera s Raspberry Pi-jem i Dockerom je najzabavniji i najjeftiniji način da uđete u svijet orkestracije kontejnera i distribuiranog računarstva, idealno za eksperimentiranje kod kuće s projektima koji bi inače zahtijevali vrlo skupe servere.
Ljepota ove postavke je u tome što možete koristiti male ploče poput Raspberry Pi-ja ili čak druge računare s jednom pločom (SBC) poput Orange Pi-ja ili Banana Pi-ja kako biste stvorili okruženje u kojem aplikacije dijele opterećenje. To je savršen projekt za učenje o visokoj dostupnosti i skalabilnosti bez straha od kvara bilo čega kritičnog, budući da se sve događa na vašoj vlastitoj lokalnoj mreži.
Priprema tla i opreme
Za dobar početak, idealno je koristiti lagane verzije operativnih sistema, kao što su Raspbian Lite ili Armbian (u slučaju Orange Pi), budući da nam ne treba grafički interfejs i želimo posvetiti svaki megabajt RAM-a obradi. Vrlo koristan trik je flešovanje slika pomoću Etchera kako bi se izbjegle greške pri pisanju na microSD kartice.
Ako ne želite da se mučite sa USB monitorima i tastaturama za svaku matičnu ploču, možete koristiti adapter. USB na serijski spojen na RX i TX pinove. Konfiguriranje datoteke config.txt u boot particiji dodavanjem enable_uart=1Sve možete upravljati putem serijske konzole koristeći programe poput PuTTY-a na Windowsu ili Minicoma na Linuxu, koji je mnogo ugodnije nego mijenjanje HDMI kablova.
Optimizacija sistema i mreže
Prije instaliranja Dockera, preporučljivo je pripremiti sistem. Bitno je ažurirati sve sa sudo apt update y sudo apt upgrade -yDa biste uštedjeli resurse, možete ograničiti memoriju namijenjenu videu u konfiguracijskoj datoteci postavljanjem gpu_mem=16pa pustimo većina RAM-a Koristi se za kontejnere.
Što se tiče mreže, ako želite da vaš Raspberry Pi djeluje kao glavni čvor i upravlja ostalima, možete zamijeniti upravitelja. dhcpcd por NetworkManageršto je mnogo robusnije. Da biste kreirali vlastitu mrežu za klaster, možete instalirati dnsmasq za upravljanje DHCP-om i DNS-om, i hostapd pretvoriti Pi u WiFi pristupna točka (vruća tačka) gdje se ostali čvorovi povezuju.
Instaliranje Dockera i Docker Composea
Instaliranje Dockera na Raspberry Pi 4 je mačji kašalj jer ima službenu podršku. Najbrža metoda je pokretanje skripte za automatsku instalaciju pomoću naredbe. curl koji preuzima i konfiguriše cijeli Docker engine. Da biste izbjegli pisanje sudo u svakoj komandi se preporučuje dodajte korisnika Docker grupi, iako morate biti oprezni sa sigurnošću jer to daje povećane privilegije.
Nakon što je motor instaliran, bitno je dodati Docker Composešto nam omogućava da definiramo aplikacije s više kontejnera pomoću YAML datoteke. Može se lako instalirati putem pip, Python upravitelj paketa. Da biste provjerili da li sve ispravno radi, jednostavno pokrenite sliku hello-world i provjerite da li kontejner ispravno funkcioniše.
Orkestracija sa Docker Swarm-om
Nakon što instalirate Docker na sve svoje ploče, vrijeme je da ih ujedinite u Docker Swarm klaster . Swarm je Dockerov izvorni alat za pretvaranje grupe čvorova u jedan virtualni resurs. Jednostavno trebate pokrenuti Swarm način rada na glavnom čvoru, a zatim se pridružiti radnim čvorovima koristeći dobiveni sigurnosni token.
Da biste vizualno upravljali cijelim ovim raspoređivanjem i bez zaglavljivanja u terminalu, toplo se preporučuje instaliranje Portainera za upravljanje vašim Docker kontejnerima . Ovaj alat nudi web sučelje gdje možete vidjeti status servisa, aktivnih čvorova i upravljati kontejnerima uz samo nekoliko klikova, što administraciju klastera čini mnogo intuitivnijom.
Napredni trikovi i povezivanje
Ako se nalazite u okruženju s mrežnim ograničenjima ili blokadama, možete postaviti OpenVPN tunel na glavnom čvoru. Ovo omogućava da sav promet klastera dođe do interneta putem VPN-a, zaobilazeći proxyje i zaštitne zidove. Za upravljanje prometom između Swarm mreža i vaše lokalne mreže, alati poput Firehola pomažu u kreiranju iptables pravila na jednostavniji i jednostavniji način za korištenje.
Još jedan kritičan detalj je sistemsko vrijeme. Budući da Raspberry Pi nema sat realnog vremena (RTC), gubi datum kada se isključi. Idealno bi bilo da instalirate fizički RTC modul (kao što je DS3231) ili konfigurišete NTP server na lokalnoj mreži tako da svi čvorovi budu sinhronizovani, što je ključno za ispravno funkcionisanje logova i sigurnosnih certifikata.
Postavljanje ekosistema ovog tipa omogućava vam da transformišete nekoliko jednostavnih ploča u moćan alat za učenje gdje možete implementirati sve, od web servera do distribuiranih računarskih sistema, integrišući upravljanje mrežom, sigurnost tunela i orkestraciju kontejnera u jednom kontrolisanom okruženju.




