Wayang dan buruh pelabuhan dapat melakukan banyak hal yang sama, namun mereka mendekati mereka dengan cara yang berbeda.
Wayang mengelola file + paket + layanan. (Disebut trifecta).
Docker merangkum file-file biner dan konfigurasi di dalam sebuah wadah.
Pada saat penulisan ini, buruh pelabuhan masih tidak stabil dan tidak boleh digunakan dalam produksi. Banyak API kemungkinan akan berubah sampai versi 1.0 dirilis.
Bahkan ketika buruh pelabuhan menjadi stabil, itu akan menjadi upaya besar untuk mengkonversi setiap proses dan file konfigurasi ke wadah buruh pelabuhan.
Boneka di sisi lain adalah produk yang stabil dan dilengkapi dengan seluruh ekosistem alat (heira, mcollective, facter, razor). Alat-alat ini dapat diimplementasikan dengan cepat dan tanpa khawatir hal-hal yang melanggar.
Saya akan sangat menyarankan sumber daya berikut.
Video tentang cara mengelola tumpukan aplikasi dengan boneka
https://www.youtube.com/watch?v=KSo_mcJxFIA
Podcast tentang bagaimana buruh pelabuhan dan boneka bisa bekerja bersama
http://devopscafe.org/show/2014/1/23/devops-cafe-episode-46.html
Artikel boneka blog tentang cara mengintegrasikan dengan buruh pelabuhan
http://puppetlabs.com/blog/building-puppet-based-applications-inside-docker
Artikel blog lain tentang boneka dan buruh pelabuhan hidup berdampingan
http://puppetlabs.com/blog/can-containers-and-configuration-management-co-exist
Modul boneka untuk berinteraksi dengan buruh pelabuhan
http://docs.docker.io/use/puppet/
Sebuah koreksi kecil pada terminologi para devops. Devops lebih dari a metodologi pengembangan perangkat lunak tempat pengembang dan operasi bekerja sama, daripada alat khusus apa pun.
Memperbarui
Saat ini perusahaan saya menggunakan boneka dan buruh pelabuhan. Berikut ini adalah presentasi hebat yang diberikan di puppet conf 2014 tentang mengapa Anda akan menggunakan boneka vs buruh pelabuhan. Diberikan oleh James Turnbull, mantan majikan puppetlab dan penulis buku buruh pelabuhan.
https://puppetlabs.com/presentations/using-docker-puppet-james-turnbull-kickstarter
Juga tutorial video pendek yang bagus tentang buruh pelabuhan yang diberikan oleh sysadmincasts.com
https://sysadmincasts.com/episodes/31-introduction-to-docker
Pro Docker:
- Dapat memutar contoh dengan cepat
- Lebih mudah dipelajari daripada boneka
- Mudah untuk melakukan 0 downtime
Kontra Docker:
- Kontainer memiliki batas 10GB saat menggunakan backend devicemapper
- Perubahan konfigurasi kecil membutuhkan waktu lama untuk membangun kembali wadah
- Biaya uang untuk menggunakan register buruh pelabuhan seperti hub.docker.com, quay.io (Registri buruh pelabuhan yang di-hosting-sendiri sangat buggy, dan tidak memiliki gui)
- Tidak ada sistem init yang tepat. Beberapa aplikasi tidak bermain bagus.
- Tidak ada kontrol berbutir halus atas jaringan
- Aplikasi yang membutuhkan subshell (melihat Anda RVM + ruby) sangat sulit untuk berfungsi dengan benar
- Tidak dapat mengelola host windows, tidak ada SLES atau sistem operasi lain yang kurang populer
- Saat ini orkestrasi buruh pelabuhan masih sangat muda.
- Saat ini tidak dapat mengatur /etc/resolv.conf Anda saat membangun
- Berbagai bug yang harus kita mount / etc / localtime dan / dev / urandom untuk memetakan ke host localtime dan direktori urandom.
- Performanya tidak secepat (terlepas dari semua klaim bahwa buruh pelabuhan harus 99% kecepatan bare metal, terkadang 30% lebih lambat dari mesin lain).
- Kontainer kecil masih memiliki ratusan megabita overhead. Wadah kami semuanya berganda banyak.
Pros boneka:
- Mudah diukur
- Bekerja dengan server yang ada (windows, linux, sles)
- Cepat untuk melakukan perubahan kecil
- Komunitas yang kuat dari pengguna dan modul boneka lainnya
- API standar untuk menginstal paket di semua platform
Cons boneka:
- Infrastruktur besar menjadi sangat kompleks
- Ketergantungan modul bersyarat membuat kode spageti
- Berat lebih berat
Saat ini kami menggunakan boneka untuk menyediakan wadah buruh pelabuhan kami. Wadah buruh pelabuhan digunakan untuk membangun jenkins dan dihancurkan setelah masing-masing membangun. Ini bekerja dengan baik, dan memberi kita lingkungan yang konsisten. Itu berarti bahwa kita hanya perlu menulis kode sekali, dan kemudian membangun kembali mesin ubuntu, sles dan centos. Membangun kembali wadah membutuhkan waktu sekitar 15 hingga 30 menit dan masih merupakan proses manual. Docker bagus untuk memutar tes cepat vm,
Jadi singkatnya, boneka sangat bagus dalam mengelola infrastruktur yang ada. Docker bagus jika Anda memiliki greenfield yang 100% linux dengan tumpukan teknologi yang dapat dimasukkan dalam contoh singkat kecil. Sementara beberapa fungsi tumpang tindih, mereka tidak saling eksklusif.
Docker membantu Anda untuk menyediakan dan mengkonfigurasi wadah pada awalnya, tetapi menjalankan perintah satu kali pada inisialisasi wadah.
Wayang terkuat ketika Anda menjalankannya sebagai daemon, ia memastikan konfigurasi Anda tetap seperti yang Anda tentukan, jadi misalnya jika layanan Anda berhenti berjalan, itu akan mulai lagi.
Salah satu hal terbaik tentang manifes konfigurasi wayang (dirancang dengan benar) adalah adanya idempoten ; itu seharusnya menggambarkan keadaan yang Anda inginkan dan tidak terlalu banyak langkah untuk sampai ke sana.
Ini juga memungkinkan Anda untuk abstrak dan konfigurasi parametrise dan Anda bisa parameter ekspor dibuat pada satu server atau wadah dan menggunakannya di server lain (mis. mengumpulkan daftar nama host node untuk aplikasi pemantauan).
Saya akan mengatakan mereka pasti melayani tujuan yang berbeda tetapi terkait. Saat ini saya sedang melihat menggunakan manifes boneka yang ada untuk mulai mengkonfigurasi wadah sehingga lingkungan pengembangan lebih seperti lingkungan produksi.
sumber