Apa perbedaan antara Juju dan Wayang / Koki?

80

Telah mencoba bertanya kepada pihak ke-3 tentang perbedaan utama antara Juju dan Wayang / Koki. Pihak ke-3 tidak terlalu mengenal Juju dan tidak bisa mengatakannya. Mereka hanya menyatakan yang lain memiliki banyak momentum, dan akan sulit untuk mengatasi keunggulan mereka.

Akankah mereka yang paling dekat dengan Juju bersedia untuk menyoroti kelebihan dari perangkat lunak ini, dan mengapa itu akan mengambil alih Wayang / Koki di arena manajemen konfigurasi?

menandai
sumber

Jawaban:

48

Mark, ini pertanyaan yang bagus, dan merupakan pertanyaan pertama yang saya tanyakan ketika seseorang memberi tahu saya tentang Juju. Inilah beberapa perbedaan besar.

  • Juju merangkum layanan - pesona mendefinisikan semua cara layanan perlu mengekspos atau menggunakan data konfigurasi ke / dari layanan lain. Bagaimana pesona melakukan itu adalah bisnis pesona itu. Itu dapat menggunakan alat apa saja dari skrip shell ke Chef dalam mode solo, untuk melakukannya.

  • Penyediaan orkestra Juju - juju melacak sumber daya yang tersedia untuknya, dan dapat menambah atau menghapusnya sesuai kebutuhan. Saat ini sumber daya ini adalah mesin AWS EC2, cloud OpenStack (seperti HP Cloud), Microsoft Azure, Joyent, mesin bare metal melalui MAAS, dan penyedia lokal LXC / KVM.

  • Juju memudahkan berbagi - siapa pun dapat menyumbangkan pesona ke Toko Pesona Juju ; pesona ini diperiksa dan ditinjau oleh komunitas Juju.

Berikut adalah beberapa perbandingan yang dibuat orang dari seluruh web:

SpamapS
sumber
1
Wayang berurusan dengan menggambarkan sumber daya, menyediakan VM , dan berbagi modul juga. Bisakah Anda menjelaskan bagaimana Juju melakukannya secara berbeda atau lebih baik, atau memecahkan masalah yang berbeda?
poolie
Tidak mengetahui penyedia cloud boneka pada saat jawaban itu. Modul boneka tidak diberi spasi nama saat terakhir kali saya memeriksa, dan dengan demikian menyajikan masalah berbagi yang mungkin mengharuskan pengguna untuk mengubah kode modul boneka untuk memanfaatkannya.
SpamapS
Ada ruang nama di boneka . Saya belum pernah menggunakan Wayang banyak, tetapi pemahaman saya adalah bahwa sebagian besar masalah terjadi ketika dua modul sebenarnya mencoba untuk mengelola hal yang sama logis. Apakah Juju punya cara sistematis untuk mencegah itu?
poolie
Ruang nama dalam wayang telah mengalami perubahan baru-baru ini untuk membuatnya lebih mudah untuk berbagi modul wayang yang berdiri sendiri. Di masa lalu diperlukan persamaan global variabel untuk berkomunikasi antara dua modul. Juju tidak berurusan dengan bentuk apa pun dengan konfigurasi instance, itu hanya fasilitator untuk orkestrasi, jadi tidak, itu tidak akan mencegah dua pesona memperebutkan satu file.
SpamapS
1
Hai @SpamapS, Ini tentang poin kedua Anda (alias penyediaan orkestra Juju). Dalam wayang kita dapat mendefinisikan hubungan menggunakan "memerlukan", "memberitahukan" dll. Tidak bisakah kita menggunakan konstruksi ini untuk penyediaan orkestrasi? Atau Juju menyediakan tingkat semantik orkestrasi yang berbeda?
Denis Weerasiri
33

(Penafian - Saya pendiri Puppet dan CEO Puppet Labs)

Saya tidak tahu juju dengan sangat baik, tetapi dari apa yang saya tahu, mereka agak duduk di lapisan yang berbeda. Wayang sangat bagus dalam mengelola perilaku dan kemampuan mesin itu sendiri, sedangkan juju tampaknya terutama didedikasikan untuk berbicara tentang set mesin dan sebagian besar menyodok bagaimana membuat mesin berperilaku cara tertentu untuk alat eksternal seperti wayang atau skrip shell.

Strategi kami dengan Wayang adalah membangun tumpukan terbaik dari bawah ke atas, sedangkan juju tampaknya merupakan lapisan khusus tumpukan dan meninggalkan lapisan lain ke alat lain. Dengan demikian, selagi Anda bisa menyelesaikan seluruh masalah dengan Wayang (walaupun terkadang dengan pekerjaan sedikit lebih banyak dari yang Anda sukai), Anda harus mengintegrasikan juju dengan alat lain untuk menyelesaikan banyak hal.

Sungguh, juju sepertinya versi CloudFormation dari Amazon di tempat, meski tanpa grafik dan semacamnya. Jadi, dapat digunakan dengan Wayang dll, tetapi bukan pengganti untuk itu.

Luke Kanies
sumber
6
Tidak yakin apakah punting adalah kata yang tepat di sini .. itu seperti mengatakan paket punt membangun perangkat lunak untuk autotools / scons / setup.py. Jika paket mencoba melakukan setiap langkah dari setiap bangunan, kami tidak akan memiliki paket!
SpamapS
9

Inilah pendapat lain tentang bagaimana Juju cocok dengan alat otomatisasi lainnya:

Saya bertanggung jawab atas Cloud Strategy di Canonical, perusahaan di belakang Ubuntu dan Juju. Juju bukan pesaing dari Wayang atau Koki. Juju dapat menginstal Wayang atau Koki dan dari dalam Mantra, enkapsulasi layanan dari Juju, Anda dapat menghubungi modul Wayang atau Chef yang ada.

Jadi apa itu Juju? Juju memungkinkan Anda untuk secara instan menggunakan, mengintegrasikan, dan menskalakan tumpukan IT / layanan / aplikasi Anda. Keuntungan TI instan tanpa rasa sakit. Baik melalui baris perintah atau GUI.

Jadi Juju lebih dekat dengan PaaS kemudian ke alat Devops karena Anda dapat membangun cloud Anda (Juju adalah installer OpenStack default Canonical), infrastruktur yang berjalan di atasnya (server web / app / db, server Hadoop, MongoDB, dll.) Tetapi sebagian besar luar biasa Juju memungkinkan aplikasi untuk digunakan dan segera diintegrasikan (hubungan tambahan antara Wordpress dan MySQL akan secara otomatis mengatur tabel dan data Wordpress di dalam MySQL).

Juga server aplikasi (java, php, node.js, scala, dll.) Dapat bekerja bersama dengan kontrol versi sehingga penyebaran dan penskalaan otomatis aplikasi Anda dimungkinkan. Jadi tidak seperti PaaS, Anda tidak terbatas pada tumpukan perangkat lunak tertentu tetapi masih mendapatkan keuntungan penerapan, integrasi, dan penskalaan instan. Anggap saja sebagai PaaS fleksibel atau FlexiPaaS yang secara instan menyebarkan, mengintegrasikan, dan menskala layanan perangkat lunak Anda tanpa dibatasi atau dikunci.

Sumber - Peringatan: harus masuk.

Jorge Castro
sumber
3

Dalam istilah yang paling sederhana, juju merangkum penemuan layanan, penyimpanan nilai kunci, dan manajemen konfigurasi. Koki / koki dll adalah manajemen konfigurasi murni.

Juju adalah event-based dan menggunakan "bootstrap node" pusat untuk melacak dan mengatur acara. Boneka dan koki dapat dibuat untuk tampil berdasarkan acara, namun biasanya hanya menjalankan pekerjaan yang relevan sesuai jadwal.

Afaik, Anda tidak dapat menjalankan juju dalam keadaan terdistribusi atau tanpa agen dan ini dimungkinkan dengan sebagian besar sistem manajemen konfigurasi.

Untuk sebagian besar wayang dll adalah bahasa domain spesifik, sedangkan juju adalah sistem, bukan bahasa.

J0hnG4lt
sumber