Úvod do Docker Swarm / Definition
Ukotvenie roja je jedným z nástrojov dostupných v kontajneroch Docker, ktoré sú platformou / nástrojom na organizovanie kontajnerov s otvoreným zdrojom. Nazýva sa tiež natívny nástroj na vytváranie klastrov a plánovanie v Docker. Keď rastie veľkosť kontajnerov, je veľmi ťažké zvládnuť všetko, čo je príčinou úlohy roja. Pomáha vývojárom a správcom riadiť a vytvárať klaster uzlov doku v podobe jediného virtuálneho zariadenia. stroj.
Koncepty / kľúčové pojmy používané pre Docker Swarm
- Roj - Roj sa skladá z mnohých systémov / hostiteľov Docker, ktoré sú spustené v rojovom režime.
- Swarmkit - Swarmkit sa používa na implementáciu vrstvy Dockerovej orchestrácie.
- Úloha - Úloha pozostáva z príkazov a kontajnera, ktoré by sa mali spustiť vo vnútri kontajnera. Úlohy sú distribuované manažérom rojov do uzlov.
- Uzly - uzol je možné definovať ako jedinečný dokovací motor a ktoré sa zúčastňujú roja. Dobré nasadenie výrobného roja je také, ktoré má distribuované uzlové mostíky rozmiestnené na mnohých strojoch.
- Služba - Vždy, keď je služba vytvorená, určuje kontajner, ktorý by sa mal použiť, a príkazy, ktoré by sa mali spúšťať vo vnútri kontajnera. Služba je teda zoznam úloh, ktoré by sa mali vykonať v uzloch pracovníka alebo manažéra.
- Uzly manažéra - Úlohou uzlov manažéra je odoslať úlohy pracovným uzlom. Uzly manažéra sú zodpovedné aj za vykonávanie ďalších funkcií, ako je riadenie klastra a orchestrácia.
- Pracovné uzly - Úlohou pracovného uzla je zadávať úlohy, ktoré prichádzajú z uzla manažéra, a spúšťať ich. Pracovný uzol je nainštalovaný s agentmi, ktorí hlásia jednotky práce, ktoré sú mu priradené, do uzlov manažéra.
- Uzly Leader - slúži ako vodca na vykonávanie úloh súvisiacich s orchestráciou.
Čo môžete urobiť pomocou Docker Swarm
Swarm je veľmi užitočný pre správcov a vývojárov ekosystému Docker. Nasleduje niekoľko úloh, ktoré môže ukotviteľný program dosiahnuť:
- Môže sa použiť na zmenu mierky počtu kontajnerov.
- Na vytvorenie koordinácie medzi kontajnermi.
- Na priradenie úloh klastru kontajnerov.
- Na riadenie životného cyklu kontajnerov a tiež na vykonávanie pravidelných zdravotných kontrol.
- Slúži na rozmiestnenie aktualizácií softvéru medzi kontajnermi.
Pochopenie Docker Swarm / Working
Nižšie je uvedené fungovanie doku roj, ktoré sú nasledujúce:
Práca s uzlami
Ako sme videli, existujú dva typy uzlov, tj manažér a pracovník. Pozrime sa na fungovanie oboch.
Úlohy, ktoré spravujú uzly manažéra, sú: - Plánovanie služieb, údržba stavu klastra a tiež plnenie koncových bodov HTTP API. Je vhodné spustiť viacero uzlov manažéra, pretože vám to pomôže využívať výhody odolnosti voči roju.
Pracovné uzly spúšťajú kontajnery a na to, aby mohli fungovať, vyžadujú najmenej 1 uzol správcu.
Činnosť služieb
Jediným účelom služieb je nasadiť obrázok aplikácie do roja Docker. Príkladom služieb sú napríklad server DB, webový server a servery HTTP.
Procesy a podmienky služby:
- Úpadok úlohy - Kedykoľvek úloha zlyhá v roji v roji, zvyčajne sa nereštartuje. Úlohou orchestrátora je preto odstrániť túto neúspešnú úlohu a nahradiť ju novou, ktorá je v stave stavu služby.
- Service Option - Vždy, keď je služba vytvorená, môžeme vždy definovať port, na ktorom môže byť služba použitá (pre externých používateľov), je možné aplikovať limity pamäte a CPU, definovať politiky aktualizácie atď.
- Čakajúca služba - Služba prejde do čakajúceho stavu, keď v ukotviteľnom roji nie sú momentálne k dispozícii žiadne uzly na vykonanie úlohy.
Docker Swarm Filters
Dojazd roja má 5 filtrov:
- Afinita - Účelom afinitného filtra je zabezpečiť, aby kontajnery bežali v rovnakom sieťovom uzle a tiež definuje postupnosť, v ktorej by sa kontajnery mali spúšťať.
- Port - Port definuje vyhradený prostriedok. Ak na porte, ktorý nie je voľný, beží kontajner, presunie sa na ďalšie dostupné uzly.
- Obmedzenie - Keď je vytvorený uzol, môžeme priradiť páry kľúč - hodnota pomocou filtra obmedzenia.
- Závislosť - Kedykoľvek existuje závislosť medzi kontajnermi, filtre závislostí naplánujú tie, ktoré sa nachádzajú na rovnakom uzle.
- Zdravie - Ak je niektorý z uzlov vypnutý a nefunguje, tento filter nepriradí k nemu žiadne kontajnery.
Niektoré príkazy Docker Swarm:
účel | príkaz |
Vytvorenie roja | Počiatočný roj doku |
Pripojiť sa k roju | spojiť roj doku \
–Token Token_number \ IP: Port |
Vytvorenie služby a pomenovanie | služba dokovacieho dokladu - meno Edu |
Odstránenie služby | dokovacia služba odstrániť Edu |
Aktualizácia služby | aktualizácia dokovacej služby |
Monitorovanie uzla zdravie | dokovací uzol ls |
Výhody a nevýhody
Pozrime sa teraz na výhody a nevýhody ukotvenia rojom
výhody:
- Nasadenie je jednoduché a režim rojenia je štandardne dodávaný s motorom Docker Engine.
- Inštalácia je jednoduchá a rýchla.
- Integrácia roja sa dá ľahko dosiahnuť pomocou Docker CLI a Docker compose
- Nevyžaduje sa veľa skúseností a učenie sa je ľahké.
nevýhody:
- Aby sa škálovali služby, je potrebný manuálny zásah.
- Má obmedzenú odolnosť proti poruchám.
- Zatiaľ nie sú k dispozícii širšie funkcie.
- Má menšiu komunitu v porovnaní s inými dostupnými orchestračnými nástrojmi, ako sú Kubernetes.
záver
V tomto článku sme začali so základným prehľadom a definíciou roja Docker a tiež sme videli dôležité pojmy používané v rojovej technológii, ktorá je súčasťou ekosystému. Potom sme sa pokúsili pochopiť prácu za Dockerovým rojom a naučili sme sa tiež niekoľko Dockerových príkazov, ktoré sa používajú v rojovom režime.
Odporúčané články
Toto bol sprievodca pre Čo je Docker Swarm ?. Tu sme diskutovali o koncepte, velení, filtroch, použití a porozumení Docker Swarm. Ak sa chcete dozvedieť viac, môžete si tiež prečítať naše ďalšie navrhované články -
- Docker Interview Otázky
- Čo je liek Cassandra?
- Otázky týkajúce sa rozhovorov o mikroslužbách
- Čo je Jenkins?