Rolling upgrade Elasticsearch, Couchbase and CouchDB


For a client I automated the patching process of Linux operating systems and middleware. I create a python action for that in StackStorm. The script retrieved all servers from the CMDB and patched per data center.


Non cluster hosts parallel

All non cluster hosts where patched in parallel with the Python ParallelSSHClient.

Cluster hosts rolling upgrade

For hosts in a cluster it’s a bit harder. The minimum amount of nodes in a cluster is most of the time 3 and only one node can be down without downtime of the cluster. So a rolling upgrade is More >


Install ViMbAdmin with Chef


Two years ago I wrote a tutorial to install a complete Postfix mail server with Dovecot, SpamAssassin and ViMbAdmin. At the moment I am automating this tutorial for CentOS 7 with Chef. For ViMbAdmin I created a recipe that clones the ViMbAdmin repository from Github, puts the configuration files from templates, creates the database, tables and inserts an admin user into the database. I thought it would be nice to share my vimbadmin recipe:



Chef – Speed up development with vagrant-proxyconf and squid


If you do a lot of Chef development, you are creating cookbooks with recipes. But also converging, testing and destroying virtual machines with Test Kitchen that uses Vagrant. In this process, virtual machines are often destroyed and build from the ground up. For every new build, all of the yum or debian packages must be downloaded and installed again. If your internet connection is not blazing fast, this will certainly slow down your work tempo a lot.

Install and configure Squid

But no worries, we can fix that with the use of the wonderful vagrant-proxyconf More >


Capistrano – Automatically start ssh-agent


Capistrano has the option to forward the local SSH agent to the remote server it wants to deploy on. But for this to work a SSH agent must be running and the key(s) you want to forward must be added to that SSH agent.

First I tried to start the SSH agent with the Capistrano deploy.rb recipe, but I could not get that to work and also the killing of the SSH agent afterwards could be a problem.

Eventually I solved it by adding the following line to the crontab of the deploy user. This line will be executed More >


Ubuntu 12.04 – Install Postfix, Dovecot and Vimbadmin


This tutorial shows you how to install Postfix (2.9.6) with Dovecot (2.0.19), the manage tool Vimbadmin (2.2.2) and SpamAssassin (3.3.2) on Ubuntu Server 12.04 (I got feedback that this tutorial still works for Ubuntu Server 14.04).

If you are using Chef, “Install ViMbAdmin with Chef” can speed things up a bit.

Perform all actions as root!



You should check that your server has a valid fqdn hostname (complete with the domain part):

hostname --fqd

If you get something like “localhost” or “mail” More >


Vagrant – Shell provision example


Vagrant is a very awesome tool that makes it very easy to develop your projects in virtual machines on your laptop or PC. It’s a wrapper around VirtualBox. It also makes them very easy to maintain and they can be used by a whole group of developers. This way all the developers that work on a project keep the same development environment. So that kicks the argument “But on my machine it works” out of the door.. finally!

Read all about it at

There are a few provisioners available like Cheff, Puppet, More >


Ubuntu 12.04 – Install Jenkins 1.4 with Jetty 9


This tutorial requires that Jetty is installed as described at

This tutorial describes how to install Jenkins 1.4 with a jenkins.war file with Jetty 9. I installed it on ubuntu 12.04 but it shouldn’t be very different on other linux distributions.

Perform all steps as root.

First of all get the latest jenkins war (web archive) file!

cd /opt/jetty/webapps

Jetty will probably immediately detect the war file and does a hot deploy, but to be sure restart Jetty.

service jetty restart

I configured Jetty at port 8085, so More >

Go to Top