Uvod u Docker Swarm / definicija

Roj doker je jedan od alata koji su dostupni u Docker spremnicima, a koji su platforma / alat za orkestraciju otvorenih izvora. Naziva se još i izvornim Dockerovim alatom za grupiranje i planiranje. Kada veličina spremnika raste, postaje vrlo teško upravljati svime tamo, tu dolazi i uloga Swarma. To pomaže programerima i administratorima da upravljaju i uspostavljaju skup Docker čvorova u obliku jedinstvene virtualne mašina.

Pojmovi / ključni pojmovi koji se koriste za Docker Swarm

  • Roj - Roj se sastoji od mnogih Docker sustava / domaćina koji se izvode u načinu roja.
  • Swarmkit - Swarmkit se koristi za provedbu sloja Dockerove orkestracije.
  • Zadatak - Zadatak se sastoji od naredbi i spremnika koji bi se trebao izvoditi unutar spremnika. Zadaće upravitelj rojeva raspoređuje na čvorove.
  • Čvorovi - čvor se može definirati kao pojedinačni Docker Engine i koji sudjeluju u roju. Dobra implementacija rojeva je ona koja ima distribuirane docker čvorove raširene na mnogim strojevima.
  • Servis - Kad god se usluga kreira, određuje spremnik koji bi se trebao koristiti i naredbe koje se trebaju izvoditi unutar spremnika. Dakle, usluga je popis zadataka koji bi se trebali izvršiti na radniku ili upravljačkim čvorovima.
  • Čvorovi menadžera - zadatak upravljačkih čvorova je otpremati zadatke radničkim čvorovima. Čvorovi upravitelja odgovorni su i za obavljanje drugih funkcija poput upravljanja klasterom i orkestracijom.
  • Radnički čvorovi - zadatak radničkog čvora je unositi zadatke koji dolaze iz čvora upravitelja i izvršavati ih. Radni čvor instaliran je s agentima koji izvještavaju jedinice rada dodijeljene njemu čvorovima upravitelja.
  • Vođe čvorova - služi kao vođa za izvršavanje zadataka povezanih s orkestracijom.

Što se može učiniti pomoću Docker Swarma

Swarm je vrlo koristan za administratore i programere u Docker ekosustavu. Slijedi nekoliko zadataka koje docker može postići:

  • Može se koristiti za skaliranje broja spremnika.
  • Za uspostavljanje koordinacije između spremnika.
  • Za raspodjelu zadataka grupi spremnika.
  • Za upravljanje životnim ciklusom kontejnera, kao i za obavljanje redovnih zdravstvenih pregleda.
  • Za potrebe svrstavanja ažuriranja softvera među spremnike.

Razumijevanje Dokerskog roja / rad

Ispod je rad na brodu doktora koji je sljedeći:

Obrada čvorova

Kao što smo vidjeli, postoje dvije vrste čvorova, odnosno upravitelj i radnik. Pogledajmo kako funkcioniraju oba.

Zadaci kojima upravljaju čvorovi upravitelja su - raspoređivanje usluga, održavanje stanja klastera, kao i ispunjavanje krajnjih točaka HTTP API-ja. Preporučljivo je pokrenuti više čvorova upravitelja, jer to će vam pomoći da iskoristite prednosti mogućnosti toleriranja grešaka u roju.

Radnički čvorovi pokreću spremnike i za funkcioniranje mu je potreban najmanje 1 čvor upravitelja.

Rad usluga

Jedina svrha usluga je rasporediti sliku aplikacije u roj Dockera. Na primjer, DB Server, web poslužitelj, HTTP poslužitelji su primjeri usluga.

Procesi i uvjeti u usluzi:

  • Neuspjeh zadatka - Kad god neki zadatak ne uspije u rovu doktora, on se obično ne pokreće. Dakle, posao orkestra je ukloniti taj neuspjeli zadatak i zamijeniti ga novim koji je u skladu sa stanjem usluge.
  • Opcija usluge - Kad god se usluga stvori, uvijek možemo definirati port na koji se usluga može koristiti (za vanjske korisnike), ograničenja memorije i CPU-a, definiranje pravila ažuriranja itd.
  • Usluga na čekanju - usluga prelazi u stanje čekanja kad u rolu doktora trenutno nema dostupnih čvorova za izvršavanje zadatka.

Docker Swarm filteri

Roj doktora ima 5 filtera:

  • Afinitet - Svrha filtra afiniteta je osigurati da se spremnici pokreću na istom mrežnom čvoru i također definira redoslijed u kojem bi se spremnici trebali izvršiti.
  • Luka - Luka definira namjenski resurs. Kad se spremnik pokreće na priključku koji nije slobodan, spremnik će se prebaciti na ostale dostupne čvorove.
  • Ograničenje - Kad se stvori čvor, možemo dodijeliti parove ključ i vrijednost uz pomoć filtera ograničenja.
  • Ovisnost - Kad god postoji ovisnost između spremnika, filtri ovisnosti planiraju one na istom čvoru.
  • Zdravlje - Ako je bilo koji od čvorova dolje i ne radi, ovaj filtar neće dodijeliti nijedan spremnik na njemu.

Neke naredbe Docker Swarm:

Svrhanaredba
Stvaranje rojaDocker roj init
Pridruživanje rojudocker roj pridružiti se \

–Odgovoreni token_broj \

IP: Luka

Stvaranje usluge i imenovanje istestvoriti docker uslugu - ime Edu
Uklanjanje uslugedocker servis ukloniti Edu
Usluga ažuriranjaažuriranje docker servisa
Praćenje zdravlja čvorovadocker čvor ls

Prednosti i nedostatci

Pogledajmo sada prednosti i nedostatke rojeva

prednosti:

  • Uvođenje je jednostavno, a način rojeva je zadano u Docker Engineu.
  • Instalacija je jednostavna i brza.
  • Integriranje rojeva može se lako postići s Docker CLI i Docker compose
  • Nije potrebno mnogo iskustva, a učenje je jednostavno.

Nedostaci:

  • Da bi se skalirale usluge, potrebna je ručna intervencija.
  • Ima ograničenu toleranciju grešaka.
  • Od sad nisu dostupne šire funkcije.
  • Ima manju zajednicu u odnosu na druge alate za orkestraciju koji su dostupni poput Kubernetesa.

Zaključak

U ovom smo članku započeli s osnovnim pregledom i definicijom roja Docker, a vidjeli smo i važne izraze koji se koriste u tehnologiji roja koja je dio ekosustava. Zatim smo pokušali razumjeti rad iza Dockerovog roja, a naučili smo i nekoliko Dockerovih naredbi koje se koriste u načinu roja.

Preporučeni članci

Ovo je vodič kroz Što je Docker Swarm ?. Ovdje smo razgovarali o konceptu, naredbi, filtrima, korištenju i razumijevanju Docker Swarma. Možete i proći kroz naše druge Prijedloge članaka da biste saznali više -

  1. Pitanja o intervjuu s Dockerom
  2. Što je Cassandra?
  3. Intervjui o mikroservisima
  4. Što je Jenkins?

Kategorija: