LinuxQuestions.org
Latest LQ Deal: Linux Power User Bundle
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 06-07-2014, 08:27 AM   #1
sigint-ninja
Member
 
Registered: Feb 2011
Location: Republic Of Ireland
Distribution: Debian,Centos,Slackware
Posts: 472

Rep: Reputation: 29
Puppet, chef, cfengine questions


hi guys,

a friend of mine who works in the linux / unix sector says that Puppet, chef and cfengine are all the rage at the moment. Is this true? is it very useful and necessary to learn to handle these tools? which one is most used in the industry? which one is the best...is it something you can learn on your own? lastly, do you need to use a scripting language with these tools? i think he said i should start picking up a book on ruby.

any advice would be helpful

Last edited by sigint-ninja; 06-07-2014 at 08:28 AM.
 
Old 06-07-2014, 01:04 PM   #2
btmiller
Senior Member
 
Registered: May 2004
Location: In the DC 'burbs
Distribution: Arch, Scientific Linux, Debian, Ubuntu
Posts: 4,284

Rep: Reputation: 371Reputation: 371Reputation: 371Reputation: 371
If you're managing a large server infrastructure, having a configuration management tool like the ones mentioned is very helpful. It allows you to keep configurations of many machines in sync from a centralized location.

I use Puppet personally at work, but Chef and Cfengine are popular too. From what I recall reading, Cfengine used to be considered not as good from a performance/usability, but it's been rewritten completely within the last few years to fix those issues. Chef seems to be more targeted towards developers and DevOps types (the recipes are Ruby scripts, as opposed to being written in a custom language). Puppet, on the other hand, is more declaratory in nature; you tell it what you want a particular config to look like, and it scripts the necessary changes for you. I wouldn't say one is used any more than others. Puppet and CfEngine are well established, but Chef has been gaining a lot of mindshare, lately, from what I've seen.

You can learn these on your own, but for a small home set-up, you probably really don't need to. If you're looking to get a professional SysAdmin type job, though, they're extremely useful to know, especially as DevOps + the widespread use of cloud computing changes the traditional sysadmin job in many companies.
 
Old 06-27-2014, 11:38 AM   #3
sigint-ninja
Member
 
Registered: Feb 2011
Location: Republic Of Ireland
Distribution: Debian,Centos,Slackware
Posts: 472

Original Poster
Rep: Reputation: 29
Thansk for the info...
 
Old 06-27-2014, 11:49 AM   #4
szboardstretcher
Senior Member
 
Registered: Aug 2006
Location: Detroit, MI
Distribution: GNU/Linux systemd
Posts: 4,116

Rep: Reputation: 1530Reputation: 1530Reputation: 1530Reputation: 1530Reputation: 1530Reputation: 1530Reputation: 1530Reputation: 1530Reputation: 1530Reputation: 1530Reputation: 1530
I use chef and fabric quite a bit. I suggest chef over puppet, because the community version of puppet is made up of 8 different parts and isn't exactly easy to install, whereas chef 'just works.' For an idea of what it takes to install puppet, check out my install scripts at github. Chef takes 2 commands to install, and maybe 5 minutes of prep (setting the hostname mainly.)

Here are some of the cookbooks for chef I have made, most of them very simple. Ruby is easy to learn. https://github.com/boardstretcher/chef-cookbooks

And here are a couple of fabric files: https://github.com/boardstretcher/fab-files

If you create a lot of VM's and bring up a lot of servers, Chef is the way to go IMO. If you are just looking to run scripts on many servers then using fabric or rundeck will better fit your need.
 
Old 06-27-2014, 09:32 PM   #5
btmiller
Senior Member
 
Registered: May 2004
Location: In the DC 'burbs
Distribution: Arch, Scientific Linux, Debian, Ubuntu
Posts: 4,284

Rep: Reputation: 371Reputation: 371Reputation: 371Reputation: 371
I use the community version of Puppet pretty extensively, and it wasn't that hard to get up and running with it. Just install the server bits on the server, the agent on the clients, and optionally something like Foreman for monitoring. I've been meaning to experiment with Chef a bit more, though. My best advice would be to try several CM systems and see which one suits you the best.
 
Old 06-29-2014, 11:32 AM   #6
anomie
Senior Member
 
Registered: Nov 2004
Location: Texas
Distribution: RHEL, Scientific Linux, Debian, Fedora
Posts: 3,935
Blog Entries: 5

Rep: Reputation: Disabled
Quote:
Originally Posted by sigint-ninja
a friend of mine who works in the linux / unix sector says that Puppet, chef and cfengine are all the rage at the moment.
Automation (specifically: automating system configuration, in this context) is a big deal when you're managing 100+ servers. It's also important in environments where you need to be able to ensure and report on compliance with some standard (e.g. security checklists).

Quote:
Originally Posted by sigint-ninja
which one is most used in the industry? which one is the best...is it something you can learn on your own? lastly, do you need to use a scripting language with these tools? i think he said i should start picking up a book on ruby.
It's very difficult to know which of Puppet, Chef, or CFEngine are "most used", and "which one is the best" is entirely subjective. I use the Community (free beer) version of CFEngine, and I like it very much. The Enterprise version - from what I've read - comes with a web GUI front-end, so I believe you can get by without learning any programming. The Community version does require you to write/understand "promise files", which are composed in a pseudo-programming language. If you're already a programmer, it's simple. If not, it will require some study and experimentation.
 
Old 06-29-2014, 11:49 AM   #7
anomie
Senior Member
 
Registered: Nov 2004
Location: Texas
Distribution: RHEL, Scientific Linux, Debian, Fedora
Posts: 3,935
Blog Entries: 5

Rep: Reputation: Disabled
As an addendum, I'd say automation is even a big deal when you're managing 10+ servers.
 
Old 06-30-2014, 02:56 AM   #8
vikas027
Senior Member
 
Registered: May 2007
Location: Sydney
Distribution: RHEL, CentOS, Debian, OS X
Posts: 1,298

Rep: Reputation: 102Reputation: 102
Quote:
Originally Posted by sigint-ninja View Post
i think he said i should start picking up a book on ruby.
It is not necessary to learn ruby before deploying these. If you have some basic flow of any programming knowledge, it would be easy for you to pick it up.

I would suggest you to try both (chef and puppet), and choose the one you feel would be better for you.

Installation and basic configuration is breeze for either of these.
 
Old 07-01-2014, 01:36 PM   #9
canussie
Member
 
Registered: Jun 2014
Location: Calgary
Posts: 50

Rep: Reputation: 7
I have been using puppet for the last 4 years and before that cfengine. I don't know how I survived with them before, not only does it ensure configuration files remain consistent in a production environment but it also means when you build a system pushing out your standard config is much simpler.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Chef, Puppet, Cfengine? What is your current pick? szboardstretcher Linux - Software 4 11-16-2013 03:12 AM
migrating puppet patch configurations to chef sparc86 Linux - Server 1 11-01-2013 07:40 AM
Experiences with puppet/chef/ansible/... in small/medium businesses Meson Linux - Virtualization and Cloud 2 09-15-2013 02:22 PM
LXer: Beyond Chef and Puppet: Ubuntu Juju LXer Syndicated Linux News 0 08-28-2013 02:10 AM
Parameter to execute shell script on puppet client through Puppet server niraj.kumar Linux - Server 3 02-08-2011 10:01 PM


All times are GMT -5. The time now is 01:05 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration