Have you ever heard the term containerization? Mahdollisesti ei. Konttien käyttö virtuaaliympäristöissä ei ole uutta, koska sitä on käytetty jo useita vuosia.

teknologiset parannukset ovat kuitenkin tehneet konesäiliöstä jälleen suositun johtuen sen toteutuksen keveydestä virtuaalikoneeseen verrattuna. Tässä oppaassa kerromme, mitä containerization on kyse ja mitä etuja se tarjoaa.

Fysikaaliset kontit vs. ohjelmistoastiat

konttikuljetuksen ymmärtämiseksi mietitään hetken aikaa fysikaalisia kontteja. Nykyaikainen laivateollisuus pystyy kuljettamaan rahtia tehokkaasti konttien ansiosta.

kuvittele, kuinka vaikeaa olisi kuljettaa älypuhelimilla avolavaa yhdessä ruokalavojen kanssa. Sen sijaan, että meillä olisi aluksia, jotka ovat erikoistuneet tietynlaisen rahdin kuljettamiseen, me vain panemme kaikki tavarat eri kontteihin ja lähetämme ne kaikki samaan laivaan.

It-maailmassa selitetty Konttaus toimii periaatteessa samalla tavalla. Sen sijaan, että lähetät täysiä käyttöjärjestelmiä ja ohjelmistoja, pakkaat koodin konttiin, joka voi toimia missä tahansa. Koska nämä säiliöt ovat yleensä melko pieniä, voit pakata paljon kontteja yhdelle tietokoneelle.

mikä on kontti virtuaalikoneeseen verrattuna?

joskus kontti sekoitetaan virtuaalikoneeseen, koska ne toimivat samalla tavalla: eristävät sovelluksia ilman fyysistä laitteistoa. Sen suurin ero on kuitenkin sen arkkitehtuurissa. Kontit eristetään käyttöjärjestelmästä ja manipulointi niiden avulla on helpompaa. Voimme ymmärtää ne virtuaalikoneen kevyenä muotona.

kontti virtuaalikoneena on eristäminen, eli tietojenkäsittelylle varattu tila, valtuutus pääkäyttäjänä, voi asentaa tiedostojärjestelmiä ja paljon muuta. Toisin kuin virtuaalikoneet, joita hallitaan erillisillä käyttöjärjestelmillä, kontit kuitenkin jakavat isäntäjärjestelmän ytimen muiden konttien kanssa, kuten seuraavissa kaavioissa on esitetty.

VM: n ja Konttiarkkitehtuurin Vertailu
Kuva 1. VM: n ja Konttiarkkitehtuurin vertailu

mikä on hypervisori

hypervisori on erityinen ohjelmisto, joka pystyy jäljittelemään asiakastietokonetta ja sen kaikkia laitteistoresursseja. Hypervisorit toimivat fyysisillä tietokoneilla, joita kutsutaan myös isäntäkoneiksi. Hypervisoreita on kahta tyyppiä: hostattu hypervisori ja paljas metallinen hypervisori. Vaikka Isännöity hypervisor ei hallitse laitteistoajureita, hypervisor ei tarvitse käyttöjärjestelmää toimiakseen.

miten konttirakennus toimii

konttiarkkitehtuurin tärkein teos on niin sanottu Docker. Docker on avoin lähdekoodi, joka perustuu Linux-ytimeen, joka on vastuussa konttien luomisesta käyttöjärjestelmässä, kuten olemme nähneet kuvassa 1. Masterissa tarjoamme virtuaalihallittuja palvelimia KVM-virtualisoinnilla, joka tukee docker containerizationia.

yhdellä käyttöjärjestelmän ytimellä Docker voi hallita useita hajautettuja sovelluksia, jotka toimivat omassa säiliössään. Toisin sanoen containerization perustuu ohjelmistopakettiin, joka toteutetaan yhdessä virtuaalilähetyksessä.

kontit on luotu Telakkakuvista. Vaikka kuvat ovat vain luku-tiedostoja, docker lisää luku-kirjoittaa tiedostojärjestelmän image-only tiedostojärjestelmä luoda säiliö.

kun kontti luodaan, Docker käynnistää verkkoliittymän, joka kommunikoi kontin paikallisen isännän kanssa. Lisää sitten IP-osoitteen luotuun säiliöön ja suorittaa ilmoitetun prosessin suorittamaan sille määrätyn sovelluksen.

containerizationia toteutettaessa jokaisessa säiliössä on kaikki ohjelman suorittamiseen tarvittavat osat: tiedostot, kirjastot ja kaikki muuttujat, joiden avulla ympäristö voidaan suorittaa.

kuten aiemmin mainittiin, toisin kuin virtuaalikoneissa, konteissa ei tarvitse olla eri käyttöjärjestelmää. Tämä ominaisuus tekee niistä nopeampia ja kevyempiä, koska ne kuluttavat vähemmän resursseja palvelimelta tai pilvestä.

Docker engine: konttirakennuksen sielu

Dockerimoottori on ohjelmistokerros, jossa Dockerimoottori suoritetaan. Tiivistettynä se on kevyt suoritusmoottori, joka hallinnoi kontteja. Se toimii Linux-järjestelmissä ja koostuu Daemon Docker käynnissä isäntätietokone, Docker asiakas, joka vuorovaikutuksessa Dameon Docker suorittaa komentoja ja REST API kommunikoida etänä Daemon Docker.

konttitoiminnan hyödyt

Konttitoiminta on optimoinut virtualisoinnin verrattuna virtuaalikoneisiin vähentämällä resurssien määrää ja suoritusaikaa. Myös yritykset säästävät rahaa, koska ne eivät tarvitse useita versioita käyttöjärjestelmiä niiden lisenssit. Aivan kuten VMs: n kanssa.

toisaalta kontit mahdollistavat useiden sovellusten ajamisen yhdellä koneella. Miksi? Koska käyttöjärjestelmän ydin on jaettu. Tämä lähestymistapa on paljon houkuttelevampi liiketoiminnan näkökulmasta, koska helppo luoda sovelluksia, koota ja siirtää niitä. Joitakin muita etuja containerization ovat seuraavat:

siirrettävyys

Konttikuljetus voidaan suorittaa millä tahansa työpöydällä tai kannettavalla tietokoneella, joka kykenee suorittamaan konttiympäristön. Koska sovellukset eivät tarvitse isäntäkäyttöjärjestelmää, ne suoritetaan nopeammin.

käytännössä kuka tahansa voi paketoida sovelluksen kannettavalle tietokoneelle ja testata sen välittömästi ilman muutoksia julkisessa tai yksityisessä pilvessä. Sekä sovellusympäristö että toimintaympäristö pysyvät puhtaina ja minimaalisina.

skaalautuvuus ja modulaatio

säiliöt ovat kevyitä, eivätkä ne ylikuormita. Tämän kyvyn ansiosta kontit skaalaavat sovelluksia järjestelmäryhmien kautta, jotka lisäävät tai vähentävät palveluja kysyntäpiikkien mukaan. Yksi parhaista työkaluista skaalautuvuuden suorittamiseen säiliöissä on Googlen Kubernets. Kubernetes mahdollistaa konttien työmäärän, niiden vuorovaikutuksen ja toteuttamisen automaattisesti.

nopeus

se, mikä tekee säiliöstä VM: ää nopeamman, on se, että kun se on yksittäiseen ytimeen toteutettu eristetty Avaruusympäristö, se vie vähemmän resursseja. Kontit voivat toimia sekunneissa, kun taas VMs tarvitsee enemmän aikaa käynnistääkseen kunkin käyttöjärjestelmän.

Docker Hub images

Docker Hubissa on tuhansia julkisia kuvia, joita kuka tahansa voi helposti käyttää. Kuvakirjaston avulla voit löytää lähes minkä tahansa kuvan, jota tarvitset säiliöihisi sovellustesi erityistarpeiden mukaan.

eristäminen ja säätely

konttisisustuksessa sovellukset eivät ole vain eristettyjä toisistaan, vaan ne myös eristetään taustalla olevasta systeemistä. On helpompi hallita sovelluksen sisällä säiliössä ja järjestelmän resursseja. Varmistaa myös, että sekä tiedot että koodi pysyvät erillään.

Do you know that…?

Master Internetissä ehdotamme edistyksellistä klusterirakentamista asiakkaille, jotka vaativat äärimmäistä käytettävyyttä ja suorituskykyä projektissaan. Meillä on kokemuksia molemmista klustereista, jotka toimivat yhdessä tietokeskuksessa ja maantieteellisesti erillisissä paikoissa.

Lisää Klusteriratkaisuista