Qual è la differenza tra Juju e Puppet / Chef?

78

Hai provato a chiedere a terze parti le differenze chiave tra Juju e Puppet / Chef. Le terze parti non hanno molta familiarità con Juju e non potevano dire. Hanno semplicemente affermato che gli altri hanno molto slancio, e sarebbe difficile superare il loro vantaggio.

Le persone più vicine a Juju sarebbero disposte a mettere in risalto i vantaggi di questo software e perché supereranno Puppet / Chef nell'arena di gestione della configurazione?

    
posta mark 12.07.2011 - 22:27

4 risposte

45

Mark, questa è una grande domanda, ed è stata la prima che ho chiesto quando qualcuno mi ha parlato di Juju. Ecco alcune delle grandi differenze.

  • Juju incapsula i servizi: un incantesimo definisce tutti i modi in cui il servizio deve esporre o consumare i dati di configurazione da / verso altri servizi. Come fa un incantesimo è il business del fascino. Per farlo puoi utilizzare qualsiasi strumento, dagli script di shell a Chef in modalità Solo.

  • Juju orchestra il provisioning - juju tiene traccia delle risorse a sua disposizione e può aggiungerle o rimuoverle se necessario. Attualmente queste risorse sono macchine AWS EC2, cloud OpenStack (come HP Cloud), Microsoft Azure, Joyent, macchine bare metal tramite MAAS e un provider locale LXC / KVM.

  • Juju semplifica la condivisione - chiunque può contribuire con un fascino al Juju Charm Store ; questi incantesimi sono controllati e revisionati dalla comunità di Juju.

Ecco alcuni altri confronti effettuati da persone sul Web:

risposta data SpamapS 13.07.2011 - 01:15
31

(Disclaimer - Sono il fondatore di Puppet e CEO di Puppet Labs)

Non so juju terribilmente bene, ma da quello che posso dire, siedono in qualche modo a livelli diversi. Puppet è bravo a gestire i comportamenti e le capacità delle macchine stesse, mentre juju sembra principalmente dedicato a parlare di insiemi di macchine e in gran parte mette in atto come far sì che le macchine si comportino in modo specifico su strumenti esterni come Puppet o script di shell.

La nostra strategia con Puppet è quella di costruire il miglior stack da zero, mentre juju sembra essere uno strato specifico della pila e lasciare altri livelli ad altri strumenti. Quindi, mentre puoi risolvere l'intero problema con Puppet (anche se a volte con un po 'più di lavoro che vorresti), dovrai integrare juju con altri strumenti per ottenere molto da fare.

In realtà, juju sembra una versione locale di CloudFormation da Amazon, anche se senza il grafico e così via. Quindi, utilizzabile con Puppet ecc., Ma non è un sostituto per questo.

    
risposta data Luke Kanies 14.10.2011 - 19:00
7

Ecco un'altra interpretazione di come Juju si adatta ad altri strumenti di automazione:

  

Sono responsabile di Cloud Strategy presso Canonical, la società dietro Ubuntu e Juju. Juju non è un concorrente di Puppet o Chef. Juju può installare Puppet o Chef e all'interno di un Incantesimo, l'incapsulamento di Juju di un servizio, puoi chiamare i moduli Puppet esistenti o le ricevute Chef.

     

Quindi cos'è Juju? Juju ti consente di implementare, integrare e scalare istantaneamente il tuo stack / servizi / applicazioni IT. L'IT istantaneo guadagna senza problemi. O tramite la riga di comando o la GUI.

     

Quindi Juju è più vicino a PaaS e poi a Devops tool dal momento che puoi costruire il tuo cloud (Juju è il programma di installazione predefinito di Canonical OpenStack), l'infrastruttura su cui è installato (server Web / app / db, Hadoop, MongoDB, ecc. ma, cosa più straordinaria, Juju consente alle applicazioni di essere implementate e integrate immediatamente (la relazione aggiuntiva tra Wordpress e MySQL configurerà automaticamente tabelle e dati Wordpress all'interno di MySQL).

     

Anche i server delle app (java, php, node.js, scala, ecc.) possono funzionare insieme al controllo della versione, quindi è possibile la distribuzione e il ridimensionamento automatici delle app. Quindi, a differenza di PaaS, non si è limitati a uno specifico stack software, ma si ottengono i vantaggi immediati di implementazione, integrazione e scalabilità. Pensala come un PaaS o FlexiPaaS flessibile che distribuisce, integra e ridimensiona istantaneamente i tuoi servizi software senza essere limitato o bloccato.

Source - Avvertenza: login richiesto.

    
risposta data Jorge Castro 30.04.2014 - 23:14
2

Nei termini più semplici, juju incapsula la scoperta dei servizi, un archivio di valori chiave e la gestione della configurazione. Puppet / chef ecc sono la pura gestione della configurazione.

Juju è basato su eventi e utilizza un "nodo di bootstrap" centrale per tenere traccia e orchestrare gli eventi. Puppet e chef possono essere creati per apparire basati su eventi, ma di solito è solo eseguendo il lavoro in questione in un programma.

Afaik, non puoi eseguire juju in uno stato distribuito o senza agenti e questo è possibile con la maggior parte dei sistemi di gestione della configurazione.

Per la maggior parte, le marionette ecc sono lingue specifiche del dominio, mentre juju è un sistema, non una lingua.

    
risposta data J0hnG4lt 24.09.2014 - 14:42

Leggi altre domande sui tag