Kubernetes in production - blue-green deployment, auto scaling and deployment automation
by Paul Bakker Kubernetes is a great tool to run (Docker) containers in a clustered production environment. There are also a few things that Kubernetes doesn't solve though. When deploying often to a production environment we need fully automated blue-green deployments, which makes it possible to deploy without any downtime. We also need to handle external HTTP requests and SSL offloading. This requires integration with a load balancer like Ha-Proxy. Another concern is (semi) auto scaling of the Kubernetes cluster itself when running in a cloud environment. E.g. partially scale down the cluster at night. Although Kubernetes doesn't provide these things out of the box, it does provide an API that can be used to make all of this happen. Tools for automated blue-green deployments and scaling a Kubernetes cluster were developed as part of the Cloud RTI project which is developed in open source. In this technical deep dive you will learn how to setup Kubernetes together with other open source components to achieve a production ready environment that takes code from git commit to production without downtime.