Cloud Platform Engineering, DevOps, SRE, Kubernetes, KOPS


Out of disk space in KVM guest – easy to increase

If you are running your VMs on KVM and badly need to increase available disk space on one of the VMs there is a good news, it’s super easy. If your guest instances are using LVM then whole process becomes pretty much seamless. Read More ›


Fast and stateless API authentication with Spring Security

Spring Security is very mature and widely used security framework for Java based web applications. It works perfectly with minimal configuration and following successful login returns JSESSIONID cookie which allows to re-authenticate client’s consecutive calls as long as session doesn’t expire. Read More ›


Unit testing and Date equality

Date equality is one of those things which could be painful to deal with when writing unit tests. If you are reading this post, I guess you came across this problem at some point in time 🙂 There are different approaches that could be taken to make tests pass consistently when java.util.Date is used as part of a model object. To make examples more clear, assume you are working with a system that records some sort of Events and Event has a variable createdOn of type java.util.Date. Read More ›


Transactions (mis)management: how to kill your app

In this article I’m going to write about transactions propagation. I will demonstrate how poorly designed application and misunderstanding of transactions propagation may cause your application to crash. Well, in fact I should say how to saturate connection pool and deadlock your database layer, but there is no much difference. The effect would be same – application would become unresponsive when trying to access and DB resource until locked connections are timed out. Read More ›


Vagrant and Puppet: testing and prototyping infrastructure

In this post I’m going to show you how to provision multiple VMs with Vagrant and Puppet. This post is useful for your if you either want to learn Puppet in safe environment or already running Puppet in production and would like to learn how to test it before applying changes or new modules to production. Read More ›