Checking if a file exists in Puppet

Welcome to my next blog post about Puppet. This one covers something I found on another blog, so it is nothing I “invented” or something like that. During the last weeks, I spent much time writing Puppet manifests for several tasks, e.g. preventing logrotate from stumbling across wrong file permissions and stuff like that. At […]... Read More

Using environment variables in Puppet

Welcome back to the next part of my little series “Cfengine 3 vs. Puppet”.  When sticking to the order of the Cfengine 3 blog post series, our next topic would be something like “using the reporting feature of Puppet”, but unfortunately I do not know how to make use of a reporting feature in Puppet […]... Read More

Performing simple Backups with Cfengine 3

Today I noticed that it might be useful to backup some folders on one of my VMs from time to time. At first I thought about creating a new cron job, but then I noticed that Cfengine 3 is running on that VM. So – why not letting Cfengine 3 do all the work? Writing […]... Read More

Configuring sshd with Puppet

During this blog post, I will show you how to edit the sshd_config file and restart sshd if necessary. For the sake of completeness and since this blog post is part of the comparison series “Cfengine 3 vs. Puppet”, I want to point you to the Cfengine 3 code snippet which does exactly the same. […]... Read More

Mounting NFS-Shares with Puppet

Welcome to the next part of my little blog entry series about comparing Cfengine 3 with Puppet. In this issue, we will write a Puppet manifest for mounting a NFS share. You can compare it directly to the Cfengine 3 code snippet if you click here. Writing the Puppet code snippet for mounting a NFS […]... Read More

Installing packages with Puppet

Part three of my little blog series “Cfengine 3 vs Puppet” shows several ways of how new packages can be installed with Puppet. Writing the Puppet manifest for installing new packages # There are multiple possibilities here, 3 of them are shown here # Possibility #1 # package { "slapd": ensure => "installed" } # […]... Read More

Puppet: Ensure pre-defined services are running

Welcome to part two of my series of blog entries about comparing Cfengine 3 to Puppet. The goal is to write little task-orientated snippets for both configuration management tools and compare the results each time. The goal is to find out which piece of software is easiest to learn and use. Today we are re-writing […]... Read More

Taking a quick look at the configuration management system Puppet

As you might already know I am a huge fan of Cfengine (2/3). But I do realize that there are also other configuration management systems, such as Puppet or Chef and they might have their advantages over Cfengine 3. I have published a few Cfengine 3 snippets and am planning to re-write those snippets in […]... Read More

Setting up Ntop automatically with Cfengine 3

Recently, I had to use Ntop to analyze the network traffic of one customer file server. Ntop shows the traffic per interface and there per protocol, source IP and offers many other ways of showing you what happens in your network. Ntop is great; however, I observed this tool taking many system resources since it […]... Read More

Setting file permissions and ownerships with Cfengine 3

One of the most common tasks of a Linux sysadmin (or DevOp) might be setting file permissions and ownerships. In this blog I’ll show you how you can do that in a very simple but effective way with Cfengine 3. Writing the Cfengine 3 code for setting file permissions and ownerships body common control { […]... Read More