Preskočiť na hlavný obsah

Čo je Docker Swarm a ako ho nastaviť?

 Tí, ktorí čítate moje články, viete, čo je Docker. A vedeli ste, že Docker môže byť aj v tzv. Swarm móde, ktorý umožní používať Docker podobne ako Kubernetes? Ak nie, tak sa poďme pozrieť, čo to je, a ako si ho nastaviť.

Trocha teórie

Docker je platforma, na ktorej bežia kontajnery. Tieto kontajnery sa skladajú z OS, ktorý je napr. Ubuntu, závislostí služby/aplikácie a samotnej služby alebo aplikácie. Tieto kontajnery (ak nie sú na Kubernetese/Swarm móde) bežia na jednom stroji, čo ich robí náchylným k rôznym katastrofám. Preto väčšina služieb (odteraz budem používať iba pojem služby) nebeží na jednom serveri, ale na viacerých serveroch, čím sa zaisťuje redundancia a to, že služba nevypadne napr. pri blackoute. A tieto servery v drtivej väčšine prípadov spája tzv. dirigent, čo je v produkčnom prostedí Kubernetes (nie len ten, čo má osem písmen medzi K a S). Docker sa v týchto prípadoch výužíva iba pri vývoji a testingu. 

Prečo Swarm a nie Kubernetes?

Je viacero dôvodov, prečo používať Swarm mód oproti tomu, prečo ho nepoužívať, ale ja ich tu vymenujem  zopár:
  • Jednoduchý dizajn
    • V Swarm móde existujú iba dve roly: manažér a worker (úradník pre tých, ktorí sa nevyznajú v DevOps-e)
  • Podpora Docker Compose
    • Keďže Swarm je nastavovaný cez YAML súbory, ktoré sa riadia JSON špecifikáciou Docker Compose (verzie 3.3 a vyššie), tak môžete nasadiť svoje aplikácie v podobnom prostredí, v akom ich testujete. Len rozdiel je v tom že Docker Compose Vám tie priečinky vytvorí, zatiaľ čo Docker Swarm nie.
  • (čiastočná) podpora redundantného úložiska
    • Swarm je v tomto ohľade podobný s normálnym Dockerom, čo je aj jeho najväčšia slabina. A to preto, lebo Docker nebol pôvodne navhrnutý ako dirigent. Toto sa dá riešiť, napríklad cez súborové systémy, ktoré fungujú ako RAID pre disky na sieti, ako napríklad GlusterFS, NFS alebo Ceph. Ale pointa tohoto bodu je, že na rozdiel od Kubernetesu má možnosť ukladať dáta z kontajnerov na disk.
Keď už toto máme vyjasnené, tak sa poďme pozrieť na to, ako si vytvoriť Swarmovský cluster.
 

Inicializácia

Takže, teraz si spravíme rýchly checklist. Budeme potrebovať 3 (virtuálne) počítače, ktoré sú pripojené na sieť a majú nainštalovaný Docker. Ak sme splnili túto požiadavku, tak sa na to môžeme vrhnúť.
  1. Vyberte si počítač, ktorý bude manažérom a na ňom zadajte tento príkaz:
    sudo docker swarm init. Potom si skopírujte príkaz na prípojenie workerov (to, čo sa začína na docker swarm join)
  2.   Prepíšte/prilepte príkaz do zvyšných počítačov. Ak vám príkaz vypísal, že sa úspešne pripojil k Swarmu, tak na počítači, kde ste inicializovali Swarm, napíšte sudo docker node ls. A keď tam vidíte v kolónke Status Active pri všetkých počítačoch, tak to znamená, že všetko je dobre
 Keď toto máme, tak sa poďme vrhnúť na inštaláciu nejakej služby. Ja som si zvolil Swarmpit, čo je vlastne ovládací panel pre Swarm.

Inštalácia Swarmpitu.

Úspešne nainštalovaný Swarmpit


Choďte na stránku Swarmpitu, tam scrollujte, až kým nenarazíte na Docker príkaz. Ten si skopírujte a prilepte ho do manažéra. Spustite ho, trikrát stlačte Enter a zadajte silné heslo. Počkajte chvíľu, kým sa to spustí, a potom choďte na IP hosťa s portom 888 (ak ste si pri inštalácií nezvolili iný), zadajte tam svoje užívateľské meno a heslo a et voilá, ste v Swarmpite. 

Čo teraz?

Teraz je ten správny čas nastaviť Ceph, preniesť Docker Compose súbor na Swarm, poprezerať si Swarmpit, atď atď. Jednoducho, so Swarmom a Dockerom všeobecne, nie je limit. Verím, že sa Vám môj obsiahly článok páčil, a ak áno, tak ho prosím zdieľajte na Mastodon, Reddit, alebo iné sociálne siete, prípadne Vaším kamarátom.

Komentáre

Obľúbené príspevky z tohto blogu

Koniec NixOS: Kontroverzie a čo ďalej?

 Kto nebol na internete asi skoro celý mesiac, tak nevie, čo sa deje, ale pre tých, čo to nevedia, tak to priblížim. Dvadsiatého šiestého apríla bol publikovaný  tento blogový článok  od Eelca Dostru, človeka, ktorý napísal svoju diplomovú prácu na Nix, a ktorý kritizuje komunitu, ktorá sa vytvorila okolo Nixu. NixCon + (vložte nejakú zbrojársku spoločnosť sem) = nezáujem Keď sa zistilo, že Anduril, čo je vlastne zbrojárska spoločnosť, bude sponzorovať NixCon, čo je akcia, kde sa stretávajú ľudia, aby mohli odprezentovať svoje projekty, zážitky a skúsenosti s Nixom/s NixOS. A Anduril je zbrojárska firma, ktorá vyrába drony s umelou inteligenciou, ktoré sú nasadené na americko-mexickej hranici na prevenciu migrantov. Prečo je to zlé? Linuxové komunity (a NixOS najviac) sú ľudia, ktorí sú v drvivej väčšine prípadov proti zbrojárskym spoločnostiam. Bohužiaľ, organizátori nestiahli tohoto sponzora z akcie. Nasilu pretlačené ,,vločky˝ Eelco je známy aj svojou netrpezlivosťou. Dokazuje to aj

Distro review: NixOS

Existujú rôzne linuxové distribúcie. Niektoré sa ľahko menia (čo je za mňa zlá vec), niektoré sa nemenia, niektoré sú určené pre servery atď atď. Ale existuje pre mňa jedna ideálna linuxová distribúcia, ktorá sa volá NixOS. Tak sa poďme na ňu pozrieť. Inštalácia NixOS sa inštaluje pomerne jednoducho. Stiahnete si ISO NixOS, dáte ho na kľúč, reštartujete počítač, vyberiete USB kľúč zo zoznamu diskov a et voilá, nabootovali ste do NixOS. Tento OS sa dá inštalovať dvoma spôsobmi: jednoducho zložito Ja osobne odporúčam tú jednoduchšiu cestu, lebo je prístupnejšia pre masy. Pokročilú inštaláciu si možno prejdeme v ďaľšom článku. Najskôr sa pripojíme k internetu a spustíme inštalátor, ktorý sa volá Calamares. Zvolíme si jazyk, časové pásmo atď. Potom musíme naformátovať disky (dá sa aj dualbootovať), zaškrtnúť políčko, aby sme súhlasili, že chceme používať neslobodný softvér, ako napríklad Steam. Nakoniec si zvolíme prostredie, pričom sú dostupné tieto prostredia: GNOME KDE Xfce Cinnamon MAT

MatuushOS: Status update

 Kto nevie, tak ja pracujem na vlastnej linuxovej distribúcií, ktorý sa volá MatuushOS. Táto linuxová distribúcia je zaujímavá tým, že väčšina nástrojov je napísaná v Ruste, ale teraz tu nebudem rozoberať technické detaliy mojej distribúcie. Dnes sa ideme pozrieť na to, v akom stave je táto distribúcia. História tejto distribúcie Táto distribúcia začala na začiatku koronavírusového lockdownu (kedy som sa naozaj začal zaujímať o Linux, predtým som ho mal vo VirtualBoxe) ako distribúcia založená na Ubuntu. Vytvoril som ju a nepravidelne som vydával aj ISO obrazy distribúcie. Bola veľmi základná (neskoršie verzie obsahovali aj ,,vyryžovaného" správcu okien i3) a primárne som s ňou experimentoval, napríklad tak, že som sa snažil vymeniť SystemD za OpenRC, čo sa ale nepodarilo. Keď som v deviatom ročníku na základnej škole vedel, že z Monitoru (slovenské zmanipulované celoštátne testovanie, ktoré skoro každý robí zbrklo, aby išiel čo najskôr preč zo školy, a ktoré bežný človek nevie sp

Programming Language Review: Rust

 Každý, kto programuje, asi v niečom programuje. A teraz nemyslím integrované vývojové prostredie/editor textu. Myslím tým programovací jazyk. Či už je to C, C++, Python, a iné. Ale dnes sa pozrieme na Rust, čím samozrejme nemyslím dediny v Burgenlande/Badensku-Wüttenbergu (mimochodom, v obidvoch dedinách je lunapark), alebo tú hru, ktorá je dosť ťažká. Myslím tým programovací jazyk, ktorý je veľmi bezpečný, spoľahlivý a jeho prekladač/zostavovač je veľmi nápomocný (niekedy). Výhody oproti ostatným jazykom Vidíte ten rozdiel? (zobraté z rewritu MtBuildu do Rustu ) Rust je programovací jazyk, ktorý má asi najlepšie DX (developer experience) zo všetkých jazykov, ktoré existujú a v ktorých som programoval. Buďme si úprimní, koľko z nás už dvakrát uvoľnilo pamäť, alebo napísali ste niečo, čo ste si mysleli, že ste napísali niečo správne, ale prekladač namiesto toho, aby vám povedal, čo ste zle napísali, tak vám vôbec nepomôže. Rust vás ale na takéto chybičky upozorní pri zostavovaní a buď

Recenzia ASUS Zen AiO ZN240IC

 Každý niekde začínal. Či už pri nejakom športe, zbieraní nejakých predmetov alebo pri inej záľube. Ja som začínal s počítačmi, keď som mal osem rokov a začínal som zrovna na all-in-one počítačoch, lebo som pod stromček chcel iMac. Ale dostal som tento AiO počítač, na ktorom práve píšem tento článok. A teraz ho idem zrecenzovať. Hárdvér V tomto počítači sa síce nachádzajú staré komponenty, ale sú veľmi výkonné. Ako procesor máme v tomto all-in-one počítači Intel Core i5 šiestej generácie s dvoma jadrami bez Hyperthreadingu. Sú tam dve grafické karty. Jedna je od Intelu a je to HD Graphics 520. A tá druhá je od Nvidie a je to GeForce 940MX, čiže nič aktuálne. Má 8 GB operačnej pamäti a jedno 500GB SATA SSD a jeden platňový disk, ktorý má kapacitu 1 TB. Má na môj vkus celkom hlučné chladenie, ktoré ale nie je rušivé. Obrazovka je dotyková, s rozlíšením Full HD pri 60 hz, pričom je aj dotyková. Softvér Na tomto AiO počítači beží NixOS, rovnako ako na mojom stolnom počítači, ktorý mám doma