Need more information on Chef


#1

Hi,
I started with Chef, and I am looking for further information

What are the differences between Chef and Juju ? Can I use the recipes created
with Chef on Juju, but what is the interest ?

Best regards,

Felane


#2

what exactly you are trying to do? if we know the problem domain, we may be
able to give more focused comparison, but in general:

  1. juju 's primary domain model is a service, not a server. Chef on the
    other hand is a configuration management tool, where a node or
    physical/virtual server is primary domain model. chef dont have service as
    a first class domain model.
  2. juju is also an orchestration engine. i.e you’ll be able to specify what
    cross server order of operations. this is not possible with chef. chef
    allows you to search for other servers but the order of chef-run (and the
    command invocations inside them) is not enforced or provided by chef. you
    do it externally
  3. juju is written in python (afaik) and people extend juju using charms,
    which is bunch of yaml (config etc) and scripts (mostly bash, but can be
    python or anything else as well), while chef uses recipes/cookbooks as
    extension mechanism. chef recipe/cookbooks are pure ruby. Its a matter of
    in house expertise and programming taste which one you would prefer (i’ll
    not prefer bash for anything that involves lot of coding).
  4. you can use juju to orchestrate chef-runs. that way you can get simplify
    charms (attaining idempotency at lower level, keeping the ability to reuse
    chef artifacts outside juju, where orchestration might not be necessary,
    e.g spinning up developer boxes) , while leveraging juju’s orchestration
    capabilities, fancy UI to do drag and drop way of building environment etc.

there are lot other differences (like juju is mostly used with ubuntu,
while chef is popular across distributions/platforms etc, difference in
communities, difference in available extensions [cookbooks.opscode.com vs
jujucharms.com] their quality and volume etc), but these were main ones i
can think of

cheers
ranjib

On Tue, Apr 29, 2014 at 4:57 AM, Ilisia Felane felane.ili@gmail.com wrote:

Hi,
I started with Chef, and I am looking for further information

What are the differences between Chef and Juju ? Can I use the recipes created
with Chef on Juju, but what is the interest ?

Best regards,

Felane


#3

I’ve been wondering about juju. Do you know of any other competitors in the space, especially any that are more consistent with chef’s domain model?

On Apr 29, 2014, at 10:02 AM, Ranjib Dey dey.ranjib@gmail.com wrote:

what exactly you are trying to do? if we know the problem domain, we may be able to give more focused comparison, but in general:

  1. juju 's primary domain model is a service, not a server. Chef on the other hand is a configuration management tool, where a node or physical/virtual server is primary domain model. chef dont have service as a first class domain model.
  2. juju is also an orchestration engine. i.e you’ll be able to specify what cross server order of operations. this is not possible with chef. chef allows you to search for other servers but the order of chef-run (and the command invocations inside them) is not enforced or provided by chef. you do it externally
  3. juju is written in python (afaik) and people extend juju using charms, which is bunch of yaml (config etc) and scripts (mostly bash, but can be python or anything else as well), while chef uses recipes/cookbooks as extension mechanism. chef recipe/cookbooks are pure ruby. Its a matter of in house expertise and programming taste which one you would prefer (i’ll not prefer bash for anything that involves lot of coding).
  4. you can use juju to orchestrate chef-runs. that way you can get simplify charms (attaining idempotency at lower level, keeping the ability to reuse chef artifacts outside juju, where orchestration might not be necessary, e.g spinning up developer boxes) , while leveraging juju’s orchestration capabilities, fancy UI to do drag and drop way of building environment etc.

there are lot other differences (like juju is mostly used with ubuntu, while chef is popular across distributions/platforms etc, difference in communities, difference in available extensions [cookbooks.opscode.com vs jujucharms.com] their quality and volume etc), but these were main ones i can think of

cheers
ranjib

On Tue, Apr 29, 2014 at 4:57 AM, Ilisia Felane felane.ili@gmail.com wrote:
Hi,
I started with Chef, and I am looking for further information

What are the differences between Chef and Juju ? Can I use the recipes created with Chef on Juju, but what is the interest ?

Best regards,

Felane


#4

On Tue, Apr 29, 2014 at 2:02 PM, Ranjib Dey dey.ranjib@gmail.com wrote:

  1. juju is written in python (afaik) and people extend juju using charms,
    which is bunch of yaml (config etc) and scripts (mostly bash, but can be
    python or anything else as well), while chef uses recipes/cookbooks as
    extension mechanism. chef recipe/cookbooks are pure ruby. Its a matter of in
    house expertise and programming taste which one you would prefer (i’ll not
    prefer bash for anything that involves lot of coding).

Originally was written in python, now they re build it (juju-core) in go

Jorge Espada


#5

Can we please move this off the chef-dev list?

–Noah

On Apr 29, 2014, at 10:31 AM, Jorge Espada espada.jorge@gmail.com wrote:

On Tue, Apr 29, 2014 at 2:02 PM, Ranjib Dey dey.ranjib@gmail.com wrote:

  1. juju is written in python (afaik) and people extend juju using charms,
    which is bunch of yaml (config etc) and scripts (mostly bash, but can be
    python or anything else as well), while chef uses recipes/cookbooks as
    extension mechanism. chef recipe/cookbooks are pure ruby. Its a matter of in
    house expertise and programming taste which one you would prefer (i’ll not
    prefer bash for anything that involves lot of coding).

Originally was written in python, now they re build it (juju-core) in go

Jorge Espada