81 votes

Quelle est la différence entre Juju et Puppet/Chef ?

J'ai essayé de demander à une tierce partie quelles étaient les principales différences entre Juju et Puppet/Chef. Les tiers ne connaissent pas très bien Juju et ne pouvaient pas se prononcer. Ils ont simplement déclaré que les autres ont beaucoup d'élan, et qu'il serait difficile de surmonter leur avance.

Les personnes les plus proches de Juju seraient-elles prêtes à mettre en avant les avantages de ce logiciel, et à expliquer pourquoi il dépassera Puppet/Chef dans le domaine de la gestion des configurations ?

48voto

Jeremy Ruten Points 59989

Mark, c'est une excellente question, et c'est la première que j'ai posée quand on m'a parlé de Juju. Voici quelques-unes des grandes différences.

  • Juju encapsule les services - un charme définit toutes les façons dont le service doit exposer ou consommer des données de configuration vers/depuis d'autres services. La façon dont un charme fait cela est l'affaire du charme. Il peut utiliser n'importe quel outil, de Shell Shell à Chef en mode solo, pour le faire.

  • Juju orchestre le provisionnement - juju garde la trace des ressources dont il dispose, et peut les ajouter ou les supprimer selon les besoins. Actuellement, ces ressources sont des machines AWS EC2, des clouds OpenStack (comme HP Cloud), Microsoft Azure, Joyent, des machines bare metal via MAAS, et un fournisseur local LXC/KVM.

  • Juju facilite le partage : n'importe qui peut contribuer à l'élaboration d'un charme dans la base de données. Magasin de charme Juju Ces breloques sont vérifiées et évaluées par les pairs de la communauté Juju.

Voici d'autres comparaisons faites par les internautes :

34voto

Jason Kester Points 2111

(Avertissement - je suis le fondateur de Puppet et le PDG de Puppet Labs)

Je ne sais pas. juju terriblement bien, mais d'après ce que je peux dire, ils se situent en quelque sorte à des niveaux différents. Puppet est excellent pour gérer les comportements et les capacités des machines elles-mêmes, tandis que juju semble principalement dédié à parler d'ensembles de machines et punit largement la façon de faire en sorte que les machines se comportent d'une manière spécifique à des outils externes comme Puppet ou Shell Shell.

Notre stratégie avec Puppet est de construire la meilleure pile depuis le début, alors que juju semble être une couche spécifique de la pile et laisser les autres couches à d'autres outils. Ainsi, alors que vous pouvez résoudre l'ensemble du problème avec Puppet (bien que parfois avec un peu plus de travail que vous ne le souhaiteriez), vous devrez intégrer juju avec d'autres outils pour obtenir beaucoup de résultats.

Vraiment, juju ressemble à une version sur site de CloudFormation d'Amazon, mais sans le graphique et autres. Donc, utilisable avec Puppet, etc., mais pas pour le remplacer.

10voto

Joshua McKinnon Points 12379

Voici un autre point de vue sur la façon dont Juju s'intègre aux autres outils d'automatisation :

Je suis responsable de la stratégie Cloud chez Canonical, la société à l'origine d'Ubuntu et de Juju. Juju n'est pas un concurrent de Puppet ou Chef. Juju peut installer Puppet ou Chef et, à partir d'un Charm, l'encapsulation d'un service par Juju, vous pouvez appeler vos modules Puppet ou vos recettes Chef existants.

Alors, qu'est-ce que le Juju ? Juju vous permet de déployer, d'intégrer et de faire évoluer instantanément votre pile informatique/services/applications. Des gains informatiques instantanés sans les inconvénients. Que ce soit via la ligne de commande ou l'interface graphique.

Juju est donc plus proche d'un PaaS que d'un outil Devops puisque vous pouvez construire votre nuage (Juju est l'installateur OpenStack par défaut de Canonical), l'infrastructure qui va au-dessus (serveurs web/app/db, Hadoop, MongoDB, etc.) mais surtout Juju permet aux applications d'être déployées et immédiatement intégrées (add-relation entre Wordpress et MySQL configurera automatiquement les tables et les données de Wordpress dans MySQL).

Les serveurs d'applications (java, php, node.js, scala, etc.) peuvent également fonctionner avec le contrôle de version, ce qui permet le déploiement et la mise à l'échelle automatiques de vos applications. Ainsi, contrairement au PaaS, vous n'êtes pas limité à une pile logicielle spécifique, mais vous bénéficiez toujours des avantages du déploiement, de l'intégration et de la mise à l'échelle instantanés. Considérez-le comme un PaaS flexible ou FlexiPaaS qui déploie, intègre et met à l'échelle instantanément vos services logiciels sans être limité ou enfermé.

Source : - Avertissement : connexion requise.

3voto

J0hnG4lt Points 131

Dans les termes les plus simples, juju encapsule la découverte de services, un magasin de valeurs clés et la gestion de la configuration. Puppet/chef etc. sont de la pure gestion de configuration.

Juju est basé sur les événements et utilise un "nœud d'amorçage" central pour garder la trace des événements et les orchestrer. Puppet et Chef peuvent être présentés comme étant basés sur des événements, mais il s'agit généralement de l'exécution de la tâche correspondante selon un calendrier.

A ce jour, vous ne pouvez pas exécuter juju dans un état distribué ou sans agent et ceci est possible avec la plupart des systèmes de gestion de configuration.

Pour la plupart, Puppet, etc. sont des langages spécifiques à un domaine, alors que juju est un système, pas un langage.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X