Ohjelmointi

Flocker-niput Docker-kontit ja tiedot helpottavat kuljetusta

Kun Docker-astioita tullaan käyttämään laajemmin, myös niiden puutteet tulevat selvemmiksi. Kuinka esimerkiksi siirrät käynnissä olevan säilön ja sen tiedot toiseen palvelimeen ja säilytät sen tiedot prosessissa? Tyypillisesti et.

ClusterHQ, käynnistys, jonka osittain perustavat Python Twisted -verkkomoottorin ydintekijät, on ehdottanut ratkaisua. Flocker, Dockerized-sovellusten avoimen lähdekoodin (Apache) tietomäärien hallinta, joka on nyt 1.0-versiossaan, sallii tietomäärien (alias tietojoukot) liittämisen säilöihin ja siirtämisen niiden kanssa.

Pidä kaikki yhdessä

Flocker niputtaa säilöt ja tietojoukot varmistaen, että ne liikkuvat yhdessä aina, kun Dockerized-sovellus siirretään tietyn klusterin isäntien välillä. Ainoa rajoitus on, että datan tallennustilan on tarjottava jaetun tallennuksen takapää, joka on kaikkien klusterin solmujen käytettävissä.

Tällä hetkellä tuetaan vain muutamia tallennustilan päätypelejä, lähinnä pilvipohjaisia: Amazon EBS, Rackspace Cloud Block Storage ja EMC ScaleIO. Myös ZFS-pohjaista tallennustilaa tuetaan, vaikkakin vain tällä hetkellä kokeellisen takapään kautta.

"Kaikki, mihin käytät VMware vMotionia", sanoi ClusterHQ: n toimitusjohtaja Mark Davis, "ovat samoja syitä, miksi haluat ehkä siirtää säiliön ympäri. Ja jos säilössä on tietoja, tarvitset jotain Flockeria."

Siitä huolimatta, vMotionin yksi haavoittuvuus - käynnissä olevien sovellusten live-siirto - ei ole vielä olemassa Flockerissa. Sen siirtymät ovat "minimaalisia seisokkeja" eikä nolla seisokkeja, mikä tarkoittaa, että siirtymisprosessin aikana on pieni ikkuna, joka ei ole käytettävissä. Luke Marsden, teknologiajohtaja ja ClusterHQ: n perustaja, totesi puhelussa, että seisokit "riippuvat nopeudesta, jolla takapään äänenvoimakkuus voidaan irrottaa yhdestä virtuaalikoneesta ja kiinnittää toiseen virtuaalikoneeseen. Mutta olemme erittäin kiinnostuneita minimoimaan seisonta-ajat. "

ClusterHQ: lla on jo kokeellisia ominaisuuksia prosessin nopeuttamiseksi äänenvoimakkuuskuvien avulla, vaikka takapään on tuettava tilannekuvia, jotta se olisi elinkelpoinen.

Dockerin puuttuvat palat

Docker on perinteisesti työskennellyt datan kanssa tietomäärien avulla, mutta niillä on omat rajoituksensa. Tietojen manuaalinen kopioiminen konttien välillä ei ole silti yksinkertaista (väitetysti korjattu Docker 1.7: ssä), mutta suurin seinä on edelleen eri paikoissa toimivien Docker-konttien jakamien tietojen huono hallinta.

Yksi nykyinen ehdotus Dockerille sisältää uuden tyyppisen tallennustilan saataville asettamisen säiliöille, joissa kolmannet osapuolet voivat tarjota laiteajureita omille tallennustyypeilleen. Jos tällainen ominaisuus otettaisiin käyttöön, ClusterHQ: n ei olisi vaikeaa muokata tukeaan tietojoukon back-end plug-in -arkkitehtuurilla - ja pitää askeleen edellä mitä tahansa toiminnallisuutta, joka siirtyy Dockerin omaan ytimeen ajan myötä.