Docker vs Virtual Machine – Razumevanje razlik

Eno od pogostih vprašanj o Dockerju je, kako se razlikuje od VM-a (virtualni stroj).


Kar zadeva infrastrukturo v oblaku, je bil virtualni stroj že v številnih svojih prednostih standard. Kaj pa, če bi imeli alternativo navideznemu stroju, ki je lažji, varčnejši in bolj razširljiv. Točno to je Docker.

Docker je tehnologija, ki temelji na zabojnikih, s katero lahko razvijate porazdeljene aplikacije. V tem prispevku bom razložil razlike med virtualnimi stroji in Docker posodami.

Kaj je virtualni stroj?

Navidezni stroj je sistem, ki deluje tako kot računalnik.

Preprosto povedano, lahko na strojni opremi zaženete tisto, kar se zdi, da je v mnogih ločenih računalnikih, to je en računalnik. Vsak virtualni stroj zahteva svoj operacijski sistem, nato pa se strojna oprema virtualizira.

Kaj je Docker?

Docker je orodje, ki uporablja posode za lažje ustvarjanje, uvajanje in zagon aplikacije. V vsebnik veže aplikacijo in njene odvisnosti.

Učenje Dockerja je lahko!

Docker proti VM

Zdaj vam bom povedal pomembne razlike med docker posodami in virtualnimi stroji. Pomembne razlike so njihova podpora operacijskemu sistemu, varnost, prenosljivost in zmogljivost.

Torej, razpravljajmo o vsakem od teh pogojev drug za drugim.

Podpora za operacijski sistem

Tradicionalni vs Novi gen

Podpora operacijskega sistema Virtual Machine in Docker vsebnika je zelo različna. Na zgornji sliki lahko vidite, da ima vsak virtualni stroj svoj gostujoči operacijski sistem nad gostiteljskim operacijskim sistemom, zaradi česar so virtualni stroji težki. Na drugi strani pa Docker zabojniki delijo gostiteljski operacijski sistem, zato so lahki.

Če gostiteljev operacijski sistem med posodami naredi zelo lahek in jim pomaga, da se zaženejo v samo nekaj sekundah. Zato so stroški upravljanja sistema zabojnikov v primerjavi z virtualnimi stroji zelo majhni.

Kontejnerji docker so primerni za primere, ko želite zagnati več aplikacij v enem jedru operacijskega sistema. Če pa imate aplikacije ali strežnike, ki morajo delovati z različnimi okusi operacijskega sistema, so potrebni virtualni stroji.

Varnost

Navidezni stroj nima skupnega operacijskega sistema in v jedru gostitelja je močna izolacija. Zato so v primerjavi z zabojniki bolj varni. V vsebniku je veliko varnostnih tveganj in ranljivosti, saj imajo vsebniki deljeno gostiteljsko jedro.

Ker so viri dockerja deljeni in niso razdeljeni po imenih, napadalec lahko izkoristi vse zabojnike v grozdu, če dobi dostop do enega samo vsebnika. V virtualnem stroju nimate neposrednega dostopa do virov, hipervizor pa je tam, da omeji uporabo virov v VM.

Prenosljivost

Docker posode so lahko prenosne, saj nimajo ločenih operacijskih sistemov. Kontejner lahko prenesete v drugo OS in se lahko takoj začne. Po drugi strani imajo navidezni stroji ločen OS, zato je prenašanje navideznega stroja v primerjavi s zabojniki težavno, poleg tega pa tudi veliko veliko časa traja, da virtualni stroj pristane zaradi svoje velikosti.

Za razvojne namene, kjer je treba aplikacije razviti in preizkusiti na različnih platformah, so Docker posode idealna izbira.

Izvedba

Primerjava virtualnih strojev in Docker posod ne bi bila poštena, ker se oba uporabljata v različne namene. Toda lahka arhitektura dockerja zaradi manj zmogljivih virov omogoča boljšo izbiro kot virtualni stroj. Zaradi tega se lahko kontejnerji zaženejo zelo hitro v primerjavi z virtualnimi stroji, poraba virov pa se razlikuje glede na obremenitev ali promet v njem.

Za razliko od navideznih strojev ni treba stalno dodeljevati virov zabojnikom. Povečevanje in kopiranje vsebnikov je tudi lažja naloga v primerjavi z virtualnimi stroji, saj v njih ni treba namestiti operacijskega sistema..

Zaključek

Tukaj je tabela, ki se zaključi na razlikah v navideznem stroju in Dockerjevem vsebniku.

Navidezni strojKontejner Docker
Strojna izolacija procesaIzolacija procesa na ravni OS
Vsak VM ima ločen OSVsak vsebnik lahko deli OS
Čevlji v nekaj minutahČevlji v nekaj sekundah
VM je nekaj GBPosode so lahke (KB / MB)
Pripravljenih VM-jev je težko najtiVnaprej izdelani docker posodi so enostavno na voljo
VM se zlahka premaknejo na novega gostiteljaZabojniki se uničijo in ponovno ustvarijo, ne pa da se premikajo
Ustvarjanje VM traja razmeroma dlje časaPosode je mogoče ustvariti v nekaj sekundah
Več porabe virovManj porabe virov

Oznake:

  • Docker

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map