Learning Kubernetes-isms: OWNERS files, approvers, and reviewers

The Kubernetes community has a number of Kubernetes-isms. That is, things specific to the Kubernetes community that those in the tribe know but may not be obvious to those outside or new to it. One such area is the notion of approvers, reviewers, and the use of OWNERS files scattered around the codebase. So, let's break down what's going on here.

Continue Reading »

Kubernetes is Hard

Kubernetes is hard. This is especially true for those new to Kubernetes who want to run their applications on it. Or, even those who are seasoned and still don't know how everything works. There are more people like that than care to admit it. We have a problem.

The first step is usually to admit there is a problem. A problem needs to be admitted to prior to having people willing to work on it. That's what this post is. An admittance that we have a problem.

Continue Reading »

Helm Charts: Higher Level Programming and Apps

When charts, the packages for the Helm package manager, first started they were fairly simple. Properties in Kubernetes YAML files could be turned into variables, with defaults, that could be easily changed. This meant that Charts were focused on simple infrastructure customization. For example, two different people could share configuration while changing the container image location. This was useful for those who maintainered their own internal copy of an image.

Over time, Charts have started to see a shift in complexity and focus. Variables and template function, which have been slowly expanded over time, provide a method for higher level programming in Charts.

Continue Reading »

More Easily Defining Apps In Kubernetes

Kubernetes configuration files are long and verbose. When defining an application you may regularly define a deployment, service, ingress controller, DNS, and configuration. Within those configuration files there will be a fair amount of boilerplate and numerous repeated values.

It may come as no surprise that numerous projects are popping up to simplify the configuration for an application. Kedge, PsyKube, and Helm are just a few of the options being used.

At the crux of this is application developer and application operator user experience. To understand why these projects are popping up let's take a look at the people, expectations, and what they are doing.

Continue Reading »

Charts: Instant Feedback For Kubernetes Chart Developers via CI

Reviewing charts, the packages for Kuberentes Helm, is an often manual process. This has been especially true for the community managed charts that operate in a similar model to Debian and Ubuntu packages. When automation was used it was behind gates that required human interaction. This produced a slow feedback process for chart developers. Until now. In the past couple weeks continuous automation has been introduced utilizing CircleCI. Let's take a look at what's happening.

Continue Reading »

Other Recent Posts: