Puppet is a configuration management tool (Unix & Windows) with its own Domain Specific Language (Puppet or Ruby DSL)

learn more… | top users | synonyms

72
votes
6answers
13k views

How can the little guys effectively learn and use Puppet?

Six months ago, in our not-for-profit project we decided to start migrating our system management to a Puppet-controlled environment because we are expecting our number of servers to grow ...
61
votes
6answers
3k views

Choosing between meaningful and meaningless hostnames

Assume an environment with a puppet-managed cluster of different servers - various hardware, software, operating systems, virtual/dedicated, etc. Would you choose meaningful hostnames ...
51
votes
2answers
8k views

Why is it so difficult to upgrade between major versions of Red Hat and CentOS?

"Can we upgrade our existing production EL5 servers to EL6?" A simple-sounding request from two customers with completely different environments prompted my usual best-practices answer of "yes, but ...
50
votes
6answers
14k views

Puppet vs Chef, pro and contra from users and use cases [closed]

I already googled and read the "to-puppet-or-to-chef-that-is-the-question" article. I'm interested in use cases, real world implementations in which people had choosen one or the other on real ...
49
votes
6answers
12k views

Why use Chef/Puppet over shell scripts?

New to Puppet and Chef tools. Seems like the job that they are doing can be done with shell scripting. Maybe it was done in shell scripts until these came along. I would agree they are more readable. ...
48
votes
6answers
6k views

What should NOT be managed by puppet?

I'm learning my way through configuration management in general and using puppet to implement it in particular, and I'm wondering what aspects of a system, if any, should not be managed with puppet? ...
33
votes
0answers
5k views

What advantages/features does Puppet or Chef offer over Salt (or vice versa)? [closed]

I am looking at rolling out a new configuration management tool to replace our home-grown solution. The defacto standards are Chef and Puppet, both of which are Ruby-centric (though can be used to ...
28
votes
5answers
2k views

How can a Linux Administrator improve their shell scripting and automation skills?

In my organization, I work with a group of NOC staff, budding junior engineers and a handful of senior engineers; all with a focus on Linux. One interesting step in the way the company grows talent is ...
26
votes
9answers
10k views

Are configuration management tools (Puppet, Chef) capable of keeping installed packages up to date?

This is probably a simple question for those of you already running configuration management tools. Are configuration management tools such as Puppet or Chef the right approach for keeping installed ...
25
votes
7answers
2k views

Puppet Security and Network Topologies

Background: I am finally setting aside some time to join the 21st Century and look at Puppet. As it stands today we version control all server configurations in a repository that is held internally ...
23
votes
4answers
15k views

automate dpkg-reconfigure tzdata

I'm using puppet to admin a cluster of debian servers. I need to change the timezone of each machine on the cluster. The proper debian way to do this is to use dpkg-reconfigure tzdata. But I can ...
22
votes
4answers
6k views

How can I pre-sign puppet certificates?

Puppet requires certificates between the client (puppet) being managed and the server (puppetmaster). You can run manually on the client and then go onto the server to sign the certificate, but how do ...
21
votes
2answers
14k views

Could not find class, and yet it is there

When doing a puppet agent call from a new image, I'm getting a err: Could not find class custommod error. The module itself is in /etc/puppet/modules/custommod same as all of the other modules we're ...
20
votes
6answers
19k views

Adding a yum repo to puppet before doing anything else

Is there a way to force puppet to do certain things first? For instance, I need it to install an RPM on all servers to add a yum repository (IUS Community) before I install any of the packages.
20
votes
1answer
14k views

How to update a package using puppet and a .deb file

I am trying to figure out the proper way to update/upgrade a deb package using puppet from a local source deb file. My current config looks like this... class adobe-air-2-0-4 { file { ...
17
votes
7answers
9k views

Do chef and puppet cost money?

I intend to use chef or puppet to do administration (I'm thinking more of chef as it's younger and I get a better feeling about it). In both home pages I saw there is an "enterprise edition" that ...
17
votes
3answers
23k views

puppet: force service restart after configuration file was modified

how can i ensure that if new version of configuration file is downloaded via puppet from master repository to one of managed servers relevant service is restarted. typical scenario - let's say there ...
17
votes
2answers
10k views

Puppet: Node name seems dependent on reverse dns?

I seem to be running into a little bit of a problem understanding how to get this to work. I have a new server I'm building sitting behind the office NAT at work, its reverse dns maps to ...
16
votes
7answers
2k views

What are the right questions to ask when deciding whether to use Chef or Puppet?

I am about to start a new project which will, in part, require deploying many identical nodes of approximately three different classes: Data nodes, which will run sharded instances of MongoDB. ...
14
votes
5answers
3k views

What's the strengths and weaknesses of existing configuration management systems? [closed]

I was looking up here for some comparisons between CFEngine, Puppet, Chef, bcfg2, AutomateIt and whatever other configuration management systems might be out there, and was very surprised I could find ...
14
votes
4answers
4k views

Managing an application across multiple servers, or PXE vs cfEngine/Chef/Puppet

We have an application that is running on a few (5 or so and will grow) boxes. The hardware is identical in all the machines, and ideally the software would be as well. I have been managing them by ...
13
votes
3answers
2k views

Pros and Cons of a Decentralized Puppet Architecture

We have around 300 RHEL servers that are currently connecting to a Puppetmaster server. However, we have noticed some performance bottlenecks and it is the point of failure in our system. I am ...
13
votes
4answers
4k views

In Puppet, how would I secure a password variable (in this case a MySQL password)?

I am using Puppet to provision MySQL with a parameterised class: class mysql::server( $password ) { package { 'mysql-server': ensure => installed } package { 'mysql': ensure => ...
12
votes
5answers
2k views

Fixing services that have been disabled in /etc/default/ with puppet?

I'm using puppet to (theoretically) get npcd to start upon installation, however on Ubuntu, that service comes installed with the default setting in /etc/default/npcd of RUN="no": $ cat ...
12
votes
3answers
502 views

Notified when a file controlled by puppet is going to be changed by yum

Is it possible to receive a notification on the console when a package containing a file that is controlled by puppet is about to change that file? Meaning, in yum when doing yum update, is it ...
12
votes
3answers
1k views

Server credential management for Linux and Windows

We are a relatively small shop (as far as number of sysadmins) with a mix of RHEL, Solaris, Windows 2003 and Windows 2008 servers; about 200 servers in all. For our administrator accounts (root in ...
12
votes
2answers
2k views

Configuration management: push versus pull based topology

The more established configuration management (CM) systems like Puppet and Chef use a pull-based approach: clients poll a centralized master periodically for updates. Some of them offer a masterless ...
11
votes
2answers
7k views

Why should I use a puppet parameterized class?

Generally when working with complex puppet modules, I will set variables at the node level or inside a class. e.g., node 'foo.com' { $file_owner = "larry" include bar } class bar { ...
11
votes
4answers
4k views

Using Puppet to remove SSH keys not explicitly allowed

I'm using puppet to distribute SSH keys, like so: ssh_authorized_key { "alice@foo.com": ensure => present, key => 'xxxx', type => 'ssh-rsa', user => 'deploy', } The ...
11
votes
1answer
906 views

Puppet and launchd services?

We have a production environment configured with Puppet, and want to be able to set up a similar environment on our development machines: a mix of Red Hats, Ubuntus and OSX. As might be expected, OSX ...
10
votes
11answers
2k views

System updates for many servers

We have many servers and still want to update them all. The actual way is that any of the sysadmins go from server to server and make a aptitude update && aptitude upgrade - it's still not ...
10
votes
1answer
1k views

Puppet: ensure a file is empty

I would like to be sure that the motd file is empty. I would love to do like this: file { "/etc/motd": ensure => empty } This obviously does not work. Is there a simple way to ensure a file ...
10
votes
4answers
2k views

Best practice for automated Linux updates

We are working on a way to perform automatic updates for our RHEL/RHEL-based servers. Initial idea: Using Puppet, we disable the default repositories and point to our own. Then, we use ensure => ...
10
votes
2answers
735 views

Configuration Management overkill for 3 node clusters?

I have 2-3 node clusters for our load balancers and various web applications. I'm having to make the change in QA first, then in staging (on 2-3 servers), then in production (on 2-3) servers. Is a ...
10
votes
6answers
8k views

puppet hostname problem

I searched online and I see a few other people have had this issue on other lists/boards. When I run sudo puppetd --waitforcert 60 --test for the 2nd time after signing the cert on the master server ...
10
votes
5answers
10k views

How do I access an environment variable in a puppet manifest?

How do I access an environment variable (from the puppet daemon's environment) in a puppet manifest?
10
votes
2answers
3k views

Options for Multisite High Availability with Puppet

I maintain two datacenters, and as more of our important infrastructure starts to get controlled via puppet, it is important the the puppet master work at the second site should our primary site fail. ...
10
votes
3answers
9k views

How to manage mounted partitions (fstab + mount points) from puppet

I want to manage the mounted partitions from puppet which includes both modifying /etc/fstab and creating the directories used as mount points. The mount resource type updates fstab just fine, but ...
10
votes
3answers
7k views

Set sysctl.conf parameters with Puppet

This was a breeze in CFEngine... But I'm in a Puppet environment now, and need to be able to assign/ensure/check certain sysctl.conf variables. In the CFEngine world, I could simply check for specific ...
10
votes
2answers
5k views

Puppet: how to create and manage unix users and groups

This last week I spent all effort into learning Puppet. Now I suffer from a mental buffer overflow and little confidence of ever being able to tame this beast. I came across many annotated examples ...
10
votes
1answer
3k views

How to use a custom status command for a service in puppet?

I am using debian squeeze with PostgreSQL 9.1 from backports. Puppet has version 2.7.14. Unfortunatly the init script returns the wrong exit code for status. Therefore I wrote a custom status command ...
10
votes
1answer
261 views

Utilizing an alternate CA (Like Microsoft Certificate Services) with Puppet

I'm investigating whether I can somehow make the puppet ecosystem utilize our existing Microsoft Enterprise CA rather than being its own CA. Since puppet touts that all of the system is "standard ...
9
votes
3answers
9k views

puppet - define wildcard host in nodes.pp

Is there a way to define wildcard hosts in puppetmaster´s nodes.pp say i want all the hosts in one domain to receive a set of classes can i do something like: # nodes.pp # node basenode { include ...
9
votes
2answers
10k views

How to change the polling interval of the Puppet master?

By default, Puppet clients ask for updates every 30 minutes. I would like to change this interval. What is the most convenient way to do it?
9
votes
6answers
1k views

Is Puppet or Chef suitable for managing very basic server config in a multi tenant environment?

This relates to multi-tenant environments such as a small hosting company. Is Puppet (or similar) a suitable technology for taking care of basic but critical mass changes? For example: Updating DNS ...
9
votes
2answers
9k views

filebucket configuration in Puppet

How do you configure and work with your Puppet filebucket? I'd like to: Store file bucket data on a single server Be able to audit/parse/prune the file bucket when necessary Ensure that ...
9
votes
2answers
4k views

Puppet: Get users home directory

I am creating a user as follow user { $username: comment => "$name", shell => "$shell", managehome => false, password => "$password", groups => $groups } Now ...
9
votes
2answers
2k views

Installing open-vm-tools in Ubuntu via Puppet; what's the lesser evil?

In an ideal world, configuring puppet to install the open-vm-tools should be as simple as this: class vm-tools { package { 'open-vm-tools': ensure => installed } package { ...
8
votes
4answers
2k views

Puppetize everything or not?

Notice: there is a lot of theoretical questions. Recently I'm reading about Puppet (and similar systems), which - as I believe - can make my work easier, a lot. But I try - and unfortunately can't - ...
8
votes
2answers
14k views

Adding lines to /etc/profile with puppet?

I use puppet to install a current JDK and tomcat. package { [ "openjdk-6-jdk", "openjdk-6-doc", "openjdk-6-jre", "tomcat6", "tomcat6-admin", "tomcat6-common", "tomcat6-docs", ...