Quina diferència hi ha entre docker i màquina virtual?


Resposta 1:

Abans d’explicar les diferències, permeteu-me explicar els següents temes:

Què és una màquina virtual?

La virtualització és la tècnica d’importar un sistema operatiu de convidats a sobre d’un sistema operatiu d’amfitrió. Aquesta tècnica va ser una revelació al començament perquè va permetre als desenvolupadors executar diversos sistemes operatius en diferents màquines virtuals que funcionaven tots al mateix host. Això va eliminar la necessitat de recursos addicionals de maquinari.

Feu-ho un cop d'ull: Principals habilitats tècniques per dominar el 2018 | Edureka

Els avantatges de les màquines virtuals o virtualització són:

  • Es poden executar múltiples sistemes operatius a la mateixa màquina El manteniment i la recuperació van ser fàcils en cas de fallades de condicions. El cost total de propietat també va ser menor a causa de la menor necessitat d'infraestructura

En el diagrama, podeu veure que hi ha un sistema operatiu host en el qual hi ha tres sistemes operatius convidats en funcionament que no són res més que les màquines virtuals.

Desavantatges de la màquina virtual

  • L'execució de diverses màquines virtuals comporta un rendiment inestable a causa del sistema operatiu convidat a la part superior del sistema operatiu amfitrió, que tindrà el seu propi nucli i un conjunt de biblioteques i dependències. Això requereix una gran quantitat de recursos del sistema, és a dir, el disc dur, el processador i, especialment, els RAM. Els hipervisors no són tan eficients com el sistema operatiu amfitrió El procés d’inici del procés és llarg i requereix temps

Aquests inconvenients van provocar l’aparició d’una nova tècnica anomenada Containerization. Ara permeteu-me que us expliqui sobre la contencióització.

Què és la Contenerització?

  • La contenerització és la tècnica de portar la virtualització al nivell del sistema operatiu. L'abstracció al sistema operatiu és també un tipus de virtualització. La conservació és més eficient perquè aquí no hi ha cap sistema operatiu convidat i utilitza el sistema operatiu d'un amfitrió, comparteix les biblioteques i recursos rellevants. quan calgui, a diferència de les màquines virtuals. Els binaris específics d’aplicació i les biblioteques de contenidors s’executen al nucli amfitrió, cosa que fa que el processament i l’execució siguin molt ràpids. Són lleugers i més ràpids que les màquines virtuals.

Què és Docker?

Docker és una plataforma de containerització que empaqueta la vostra aplicació i totes les seves dependències en forma de contenidors per garantir que la vostra aplicació funciona perfectament en qualsevol entorn.

  • Cada aplicació funcionarà en un contenidor independent i tindrà un conjunt propi de biblioteques i dependències. També s’assegura que hi ha un aïllament a nivell de procés, és a dir, que cada aplicació és independent de les altres aplicacions, proporcionant als desenvolupadors seguretat que poden crear aplicacions que no interfereixen. amb un altre.

Tot i que de vegades es coneixen als contenidors Docker com a "VM de pes lleuger", no són VM (màquines virtuals). Totes dues serveixen finalitats diferents, per tant, una no pot substituir l’altra. La seva arquitectura subjacent és la que diferencia Docker de les màquines virtuals. Mentre que les VM es basen en la tecnologia de virtualització del servidor, Docker utilitza la virtualització del contenidor.

Vegem quines són les principals diferències entre Docker i màquines virtuals

Diferències importants entre les màquines Docker i Virtual

Suport del sistema operatiu

  • L’arquitectura bàsica dels contenidors Docker i les màquines virtuals difereixen en el seu sistema operatiu. Els contenidors estan allotjats en un únic servidor físic amb un sistema operatiu amfitrió, que es comparteix entre ells. Les màquines virtuals, d'altra banda, tenen un sistema operatiu hoste i un sistema operatiu convidat individual dins de cada màquina virtual. Independentment del sistema operatiu amfitrió, el sistema operatiu convidat pot ser qualsevol cosa: els contenidors Linux o Windows.Docker són adequats per a situacions en què voleu executar múltiples aplicacions en un mateix nucli de sistema operatiu. Però si teniu aplicacions o serveis que necessiten funcionar amb diferents sabors del sistema operatiu, les màquines virtuals són necessàries. El fet d’enviar el sistema operatiu amfitrió entre els contenidors els fa molt lleugers i us ajuda a arrencar en pocs segons. Per tant, la despesa general de gestionar el sistema de contenidors és molt baixa en comparació amb les VM.

Seguretat

  • A Docker, com que el nucli amfitrió es comparteix entre els contenidors, la tecnologia de contenidors té accés als subsistemes del nucli. Com a resultat, una sola aplicació vulnerable pot piratejar tot el servidor amfitrió. Proporcionar accés root a les aplicacions i executar-les amb privilegis de superusador, per tant, no es recomana als contenidors Docker per motius de seguretat. D'altra banda, les màquines virtuals són instàncies úniques amb el seu propi nucli i funcions de seguretat. Per tant, poden executar aplicacions que necessiten més privilegi i seguretat. A Bobcares, implementem mesures de seguretat addicionals, com SELinux i AppArmor, a Docker, per assegurar els contenidors i evitar que es trenquin entre ells o el nucli amfitrió.

Portabilitat

  • Els contenidors Docker són paquets autònoms que poden executar l’aplicació necessària. Com que no tenen un sistema operatiu convidat separat, es poden transportar fàcilment a diferents plataformes. Els contenidors es poden iniciar i aturar en pocs segons en comparació amb les VM, a causa de la seva arquitectura lleugera. Això fa que sigui més fàcil implementar els contenidors Docker ràpidament en servers.VMs, d'altra banda, són instàncies del servidor aïllades amb el seu propi sistema operatiu. No es poden transportar a diverses plataformes sense haver de tenir problemes de compatibilitat. Per a propòsits de desenvolupament on s'han de desenvolupar i provar les aplicacions en diferents plataformes, els contenidors Docker són, per tant, l'opció ideal.

Rendiment

  • Les màquines Docker i Virtual estan destinades a diferents propòsits, per la qual cosa no és just mesurar el seu rendiment per igual. Però la seva arquitectura lleugera fa que els contenidors Docker siguin menys intensius en recursos que les màquines virtuals. A conseqüència, els contenidors poden començar molt ràpidament en comparació amb la VM, ja que aquest últim ha de carregar un sistema operatiu sencer per començar. L’ús dels recursos també varia entre els contenidors two.In, l’ús de recursos com CPU, memòria, E / S, etc. varia amb la càrrega o el trànsit que hi ha. A diferència del cas de les VM, no cal assignar recursos de manera permanent als contenidors. La millora i la duplicació dels contenidors també és una tasca fàcil en comparació amb la de les VM, ja que no cal instal·lar-hi un sistema operatiu.

Per a més informació: DevOps Training | Certificació DevOps | Curs DevOps | Edureka

Principals preguntes d’entrevista a Docker per al 2018 | Edureka


Resposta 2:

Docker: què és i quins són els seus beneficis?

Docker consta d’una plataforma Open Source desenvolupada a Go, que és un llenguatge de programació desenvolupat per Google que simplifica la creació i l’administració d’entorns aïllats. A diferència de la virtualització del servidor, que correspon a l'aïllament total d'un sistema operatiu, Docker realitza un aïllament utilitzant biblioteques comunes del nucli entre l'amfitrió i el contenidor.

Així, Docker agrupa peces de programari d’un sistema de fitxers complet i que cobreix tots els recursos necessaris per a la seva execució. Per això és una plataforma de contenidors. Això significa que tot es pot instal·lar al servidor i emmagatzemar als contenidors. D’aquesta manera, el mateix programari i les seves versions es poden executar fàcilment en qualsevol entorn de desenvolupament.

Màquina virtual: què és i quins són els seus avantatges?

La virtualització de màquines consisteix a empaquetar una aplicació particular en un model estàndard amb un entorn operatiu propi. Així que, independentment de la màquina que utilitzeu aquesta aplicació, la vostra configuració serà la mateixa des del nivell del sistema operatiu fins a les biblioteques i dependències necessàries.

Tenir una màquina virtual significa que es va crear un disc dur virtual dins d’un entorn físic mitjançant un programari específic i funciona independentment d’aquest. Tenir un maquinari dins d’un altre permet fer funcionar sistemes operatius i tot tipus de programes.

Llegir més: Docker vs. màquina virtual: comprendre la diferència entre els dos


Resposta 3:

Docker: què és i quins són els seus beneficis?

Docker consta d’una plataforma Open Source desenvolupada a Go, que és un llenguatge de programació desenvolupat per Google que simplifica la creació i l’administració d’entorns aïllats. A diferència de la virtualització del servidor, que correspon a l'aïllament total d'un sistema operatiu, Docker realitza un aïllament utilitzant biblioteques comunes del nucli entre l'amfitrió i el contenidor.

Així, Docker agrupa peces de programari d’un sistema de fitxers complet i que cobreix tots els recursos necessaris per a la seva execució. Per això és una plataforma de contenidors. Això significa que tot es pot instal·lar al servidor i emmagatzemar als contenidors. D’aquesta manera, el mateix programari i les seves versions es poden executar fàcilment en qualsevol entorn de desenvolupament.

Màquina virtual: què és i quins són els seus avantatges?

La virtualització de màquines consisteix a empaquetar una aplicació particular en un model estàndard amb un entorn operatiu propi. Així que, independentment de la màquina que utilitzeu aquesta aplicació, la vostra configuració serà la mateixa des del nivell del sistema operatiu fins a les biblioteques i dependències necessàries.

Tenir una màquina virtual significa que es va crear un disc dur virtual dins d’un entorn físic mitjançant un programari específic i funciona independentment d’aquest. Tenir un maquinari dins d’un altre permet fer funcionar sistemes operatius i tot tipus de programes.

Llegir més: Docker vs. màquina virtual: comprendre la diferència entre els dos