Apa perbedaan antara gelandangan dan juju?

10

Apakah mereka berdua memecahkan masalah yang sama? Atau apakah mereka untuk dua set masalah yang berbeda? Jika demikian untuk apa saya lebih baik menggunakan gelandangan, dan untuk apa lebih baik menggunakan juju?

txwikinger
sumber

Jawaban:

19

versi cepat:

gelandangan adalah alat untuk bekerja dengan instance virtualbox. Ini biasanya digunakan selama pengembangan (pada mac) untuk menguji-menyebarkan aplikasi Anda ke mesin virtual yang lebih mirip lingkungan produksi Anda (yaitu, linux). Ada setumpuk penangan yang disesuaikan (ruby) untuk membuat lingkungan virtual seperti yang Anda inginkan. Vagrant adalah alat yang ampuh untuk secara terprogram mengelola lingkungan virtual dan menyediakan segala macam variasi "lokal" dari teknik pengembangan gaya integrasi berkelanjutan. Ini paling sering digunakan untuk menjalankan Ubuntu VM di Mac, tetapi akan berjalan di berbagai platform dan menggunakan berbagai sistem operasi target. Afaik, itu hanya bekerja dengan virtualbox sebagai "penyedia" yang mendasarinya.

juju adalah alat untuk mengatur layanan menggunakan berbagai penyedia mendasar: cloud ec2, cloud openstack, lxc VMs, dan server MaaS. Ini berbagi cerita "pengembangan lokal" (menggunakan wadah lxc bukannya VM virtualbox) dengan gelandangan, tapi itu benar-benar satu-satunya tumpang tindih. Bahkan, saya ingin melihat penyedia gelandangan yang ditulis untuk juju sehingga juju dapat mengemudikan wadah virtualbox di lingkungan lokal dengan kemudahan yang sama yang mendorong gambar cloud dan lxc. Itu akan sangat cocok! Selain itu, juju benar-benar mendapatkan banyak nilainya dari rangkaian pesona / layanan yang dapat diputar langsung, sedangkan gelandangan pada dasarnya adalah penyedia kontainer lokal tingkat rendah.

Bahkan kami menyediakan kotak Vagrant dengan Juju sehingga pengguna dapat menguji penyedia lokal dari dalam VM:

Perhatikan bahwa telah ada upaya untuk "menyatukan" skrip penempatan di sekitar gelandangan sehingga skrip yang sama dapat digunakan untuk menyebarkan ke instance cloud serta kotak gelandangan. Ini tampaknya sebagian besar selain dari gelandangan yang tepat, dan terus terang hanya menyoroti kebutuhan alat seperti juju.

m_3
sumber
1

Kembali "menyatukan skrip penyebaran di sekitar gelandangan", Vagrant memiliki integrasi yang sangat baik dengan Puppet dan Chef, yang dapat digunakan untuk konfigurasi sistem otomasi di seluruh lingkungan, dari kotak Vagrant ke perangkat keras lokal ke cloud. Bahkan banyak orang menggunakan Vagrant untuk menguji naskah Wayang / Chef mereka sebelum menggunakannya dalam produksi.

Pasti menyenangkan untuk menambahkan Juju ke daftar alat otomatisasi yang bekerja dengan Vagrant.

Jeff
sumber