Beginning with this post I will start a series of tutorials revolving around the problems and obstacles you typically encounter when deploying web applications to Amazon Web Services. Focus of the tutorials are best practices and hands on examples for topics like scaling, monitoring, continuous delivery/deployment, testing, security and operability with an emphasis all aspects concerning the infrastructure of web application deployments. Every step of the tutorial comes complete with executable sourcecode that you can check out and try locally. [Read More]


’m pretty sure that everyone has at some point experienced this mixed feeling of disbelieve and confusion when looking at code that was written weeks/months or years ago realizing that you have no idea what the code was meant to do. We develop and apply a lot of patterns and techniques to prevent this situations from happening but keep on forgetting that someone, somewhere sometime has to turn our sourcecode into a working application and deploy it somewhere, or even better: continue developing it. [Read More]

Kubernetes on (almost) bare metal

This is an older post that has been in the queue for several months. Kubernetes has released several new versions with new features in the meantime, so please keep this in mind when reading this post. The post will give a rough overview of what Kubernetes is and take a direct dive into setting up a working Kubernetes cluster (don’t worry I prepared a little something for you, it is barely more then typing vagrant up into a console) so lets start: [Read More]

Testing your infrastructure code

A while ago I wrote an Ansible role for deploying Spring Boot applications to an Ubuntu 14.x system. The role was put into action, time passed and when I needed the role again, Ubuntu 16.x was en vogue and (of course) the role failed on the 16.x system. To prevent this from happening again in the future, and because I want to make that role publicly available, I somehow had to ensure that the role works reliably across all major distributions. [Read More]

Jenkins piplines as code

When it comes to creation of jobs, Jenkins has in the past been a quite UI heavy continuous integration integration tool. Several plugins strive to retrofit the ability to store Jenkins jobs as code but (at least to me) none of them had a very convincing approach to this problem. A common approach to tackle the problem is the generation of job definitions config.xml using some sort of templating system but to be honest generating XML never lead to anything good =). [Read More]

Hello Hugo!

The old pelle.io blog is gone (well not gone, but no longer visible). The relevant part of the old content may or may not be converted at some point in time. [Read More]