Programiranje

Flocker svežnji Docker zabojniki in podatki za lažji transport

S širšo uporabo zabojnikov Docker postajajo tudi njihove pomanjkljivosti jasnejše. Kako na primer preselite tekoči vsebnik skupaj z njegovimi podatki na drug strežnik in v postopku ohranite njegove podatke? Običajno ne.

Predlagana rešitev je zagon ClusterHQ, zagon, ki so ga deloma ustanovili osrednji sodelavci omrežnega mehanizma Python Twisted. Flocker, odprtokodni (Apache) upravitelj količin podatkov za Dockerized aplikacije, ki je zdaj v svoji izdaji 1.0, omogoča povezovanje količin podatkov (ali naborov podatkov) s kontejnerji in premikanje z njimi.

Ohraniti vse skupaj

Flocker združuje vsebnike in nabore podatkov, s čimer zagotavlja, da se premikajo skupaj, kadar je Dockerized aplikacija premeščena med gostitelji v dani gruči. Ena omejitev je, da mora biti za shranjevanje podatkov zagotovljeno skupno ozadje pomnilnika, dostopno vsem vozliščem v gruči.

Trenutno je podprtih le nekaj vrst končnih prostorov za shranjevanje, večinoma usmerjenih v oblak: Amazon EBS, Rackspace Cloud Block Storage in EMC ScaleIO. Podprto je tudi shranjevanje na osnovi ZFS, čeprav le prek zaledja, ki je trenutno eksperimentalno.

"Vse, za kar bi uporabili VMware vMotion," je dejal Mark Davis, izvršni direktor ClusterHQ, "so isti razlogi, zaradi katerih bi morda želeli premikati vsebnik. In če ima vsebnik podatke, potrebujete nekaj takega, kot je Flocker."

Kljub temu ena pohvalna značilnost vMotion - migracija zagnanih aplikacij v živo - še ni v Flockerju. Njene selitve so "minimalni izpadi" in ne nič izpadov, kar pomeni, da je med postopkom selitve majhno okno nedostopnosti. Luke Marsden, tehnični direktor in soustanovitelj podjetja ClusterHQ, je v telefonskem klicu izjavil, da je čas nedelovanja "odvisen od hitrosti, s katero ima lahko zadnji del volumen ločen od enega VM in pritrjen na drugega VM. Toda zelo nas zanima zmanjšanje časa izpadov. "

ClusterHQ že ima eksperimentalne funkcije za pospešitev postopka s pomočjo obsežnih posnetkov, čeprav mora zadnji del podpirati posnetke, da bo sposoben preživeti.

Dockerjevi manjkajoči kosi

Docker je tradicionalno delal s podatki na podlagi obsega podatkov, vendar prihajajo s svojimi omejitvami. Ročno kopiranje podatkov med vsebniki še vedno ni preprosto (domnevno je popravljeno v Dockerju 1.7), največja stena pa ostaja slabo upravljanje s podatki, ki jih delijo Dockerjevi vsebniki, ki se izvajajo na različnih lokacijah.

Trenutni predlog za Docker vključuje dajanje na voljo nove vrste pomnilnika vsebnikom, kjer lahko tretje osebe zagotovijo gonilnike naprav za svoje tipe shranjevanja. Če bi bila takšna funkcija implementirana, za ClusterHQ ne bi bilo težko predelati podpore prek zaledne arhitekture vtičnikov nabora podatkov - in držati korak pred kakršno koli funkcionalnostjo, ki se sčasoma v Dockerjevo lastno jedro.

$config[zx-auto] not found$config[zx-overlay] not found