Some Admission Webhook Basics

by Jason Smith

Admission Webhooks are a new feature in Kubernetes since 1.9 that allows you to intercept manifests prior to them being deployed.  This gives you a lot of control to do things like inject sidecars, attach volumes, or validate image repositories before the object gets deployed.  I took some time over the last two days to explore this feature and how to implement it. Let me share what I have [...]

read more...

 

Image Management & Mutability in Docker and Kubernetes

by Adrian Mouat

Kubernetes is a fantastic tool for building large containerised software systems in a manner that is both resilient and scalable. But the architecture and design of Kubernetes has evolved over time, and there are some areas that could do with tweaking or rethinking. This post digs into some issues related to how image tags are handled in Kubernetes and how they are treated differently in plain [...]

read more...

Using Google Container Registry with Kubernetes

Alternative Text by Lian Li

I recently got into orchestrating my Docker containers with Kubernetes. For one of our projects, I needed to pull docker images from the Google Container Registry (GCR). When using the Google Kubernetes Engine with the GCR everything works out of the box, but to run the containers locally with docker, I had to install and configure docker-credential-gcr. (Go to the GitHub repository for [...]

read more...

 

 

Automated rollback of Helm releases based on logs or metrics

by Etienne Tremel

Continuous delivery is becoming a standard, if you implement the right process you get a predictable deployment. When a change is made in the code, most of the time the build, test, deploy and monitor steps are followed. This is the base for anyone willing to apply automation to their release process. If a failure is detected during the monitoring phase, then an operator has to verify and [...]

read more...

Propagating configuration from Terraform to Kubernetes Apps

Alternative Text by Ádám Sándor

I recently encountered an interesting problem while terraforming Kubernetes clusters on Google Cloud. Our Terraform configurations have some important information which is needed by applications running on the cluster. These are either values for which our Terraform resources are the primary source, or values which are outputs from them. Here are some examples of the types of values we want to [...]

read more...