Flocker membungkus bekas dan data Docker untuk pengangkutan yang mudah

Oleh kerana bekas Docker digunakan dengan lebih luas, kekurangannya juga menjadi lebih jelas. Sebagai contoh, bagaimana anda memindahkan wadah yang berjalan bersama dengan datanya ke pelayan lain, dan menyimpan datanya dalam prosesnya? Biasanya, anda tidak.

ClusterHQ, sebuah permulaan yang diasaskan sebahagiannya oleh penyumbang utama enjin rangkaian Python Twisted, mempunyai penyelesaian yang dicadangkan. Flocker, pengurus kelantangan data sumber terbuka (Apache) untuk aplikasi Dockerized yang kini berada dalam rilis 1.0, membolehkan jumlah data (set data alias) dikaitkan dengan bekas dan dipindahkan dengannya.

Menjaga semuanya bersama

Flocker menggabungkan bekas dan set data, memastikannya bergerak bersama setiap kali aplikasi Dockerized ditutup antara host pada kluster tertentu. Batasannya ialah penyimpanan data mesti disediakan oleh bahagian belakang storan bersama yang dapat diakses oleh semua node dalam kluster.

Hanya beberapa jenis bahagian belakang penyimpanan, yang kebanyakannya berorientasikan awan, yang disokong sekarang: Amazon EBS, Rackspace Cloud Block Storage, dan EMC ScaleIO. Storan berasaskan ZFS juga disokong, walaupun hanya melalui hujung belakang yang kini eksperimen.

"Apa sahaja yang anda gunakan untuk VMware vMotion," kata Mark Davis, Ketua Pegawai Eksekutif ClusterHQ, "adalah sebab yang sama anda mungkin mahu memindahkan kontena. Dan jika kontena mempunyai data di dalamnya, anda memerlukan sesuatu seperti Flocker."

Yang mengatakan, satu ciri vMotion yang tersembunyi - penghijrahan aplikasi yang sedang berjalan secara langsung - belum ada di Flocker. Migrasinya adalah "waktu henti yang minimum", dan bukannya waktu henti sifar, yang bermaksud terdapat sedikit jendela tidak tersedia semasa proses migrasi. Luke Marsden, CTO dan pengasas bersama ClusterHQ, menyatakan dalam panggilan telefon bahawa waktu henti "bergantung pada kelajuan di mana bahagian belakang dapat melepaskan kelantangan dari satu VM dan melekat pada VM yang lain. Tetapi kami sangat berminat mengurangkan masa henti itu. "

ClusterHQ sudah memiliki fitur eksperimen dalam usaha untuk mempercepat proses dengan snapshot kelantangan, walaupun bahagian belakang perlu menyokong snapshot agar ia dapat dilaksanakan.

Kepingan Docker hilang

Docker secara tradisional bekerja dengan data melalui jumlah data, tetapi mereka datang dengan batasan mereka sendiri. Menyalin data antara kontena secara manual masih tidak mudah (diduga diperbaiki di Docker 1.7), tetapi tembok terbesar tetap menjadi keadaan pengurusan yang buruk untuk data yang dikongsi oleh kontena Docker yang berjalan di lokasi yang berbeza.

Satu cadangan semasa untuk Docker melibatkan menyediakan jenis storan baru ke kontena, di mana pihak ketiga dapat menyediakan pemacu peranti untuk jenis storan mereka sendiri. Sekiranya ciri seperti itu dilaksanakan, tidak akan sukar bagi ClusterHQ untuk menyusun semula sokongannya melalui seni bina plug-in back-end datasetnya - dan terus selangkah lebih maju daripada fungsi apa pun yang masuk ke teras Docker sendiri dari masa ke masa.