Kubernetes platforms

It has been a while.. Something you might have read before on a personal tech blog. My devops professional life at this moment can be summarized as follows: get rid of virtual machines and old platforms and replace them with kubernetes. Platform design Anno 2024 I prefer to build self contained small platforms with internal (hyperconverged) storage versus platforms that have inter dependencies and some traditional central storage solution. The benefit should be clear: when shit really hits the fan (f....

April 20, 2024 · 5 min · Maarten Steenhuyse

KubeVirt blocking OKD upgrade

Has been a while since I blogged something. It’s summer time: get your cocktail and stretch yourself on the beach and enjoy the scenery! Usually not my way of spending free time. This week I am enjoying some holiday, though, in Belgian nature (it does exist) with lots of action for the kids in proximity. I made a little trip to Germany to pick up some spare parts for my broken -propeller snapped when the rudder got loose- RC boat....

July 21, 2022 · 9 min · Maarten Steenhuyse

Debugging containerized application part 2

This post is a continuation of https://maarten.gent/posts/debugging/debug-complex-containerized-application/ A quick recap: we moved a complex 3-pod containerized application from OKD (Openshift) 3 to 4 and hit a network issue. Some lengthy debugging was required but we felt confident we could move our biggest customers to the new platform once resolved. Set the stage The weekend is family time (or blog time) but not this time: a switch died in the datacenter which brought the storage down of the old OKD cluster....

June 12, 2022 · 6 min · Maarten Steenhuyse

Debugging a complex containerized application

The story of how we resolved a hard to debug issue migrating a complex containerized application to a Kubernetes cluster. I learned some lessons that might be useful for you too. Problem statement Application Sorry for the vague description but the application involves three pods. One pod contains a container running an OpenVPN (client) process. Users access the application using a web interface and traffic flows back and forth through an VPN tunnel accessing a service running in a restricted network on the other end of the tunnel....

June 5, 2022 · 9 min · Maarten Steenhuyse

Running Virtual Machines in Kubernetes

I heard about the Virtualisation project a while ago but it was until recently, I gave it a spin. I was pleasantly surprised of what’s possible and how well it works. What? Why? It does sound a bit crazy, right? We use to host kubernetes using VMs, or you are still doing that in the public cloud, and now we turn this around? In my opinion kubernetes should be run on bare metal machines for optimal performance: contention with other VMs is non existing obviously and storage is directly connected to k8s....

June 4, 2022 · 7 min · Maarten Steenhuyse

Extending Kustomize: Basic Templating

Kustomize is my favorite tool to manage the bunch of YAML we need to manage operating our clusters and applications. Since it is integrated in kubectl and oc, it is possible to apply a config to your cluster using one command. Or if you like Gitops, ArgoCD can sync your kustomize layer(s) stored in git automatically. A project usually consists of a base layer and a few subsidiary layers that are customized versions of the base....

May 22, 2022 · 4 min · Maarten Steenhuyse

Some takes on OKD

OKD is the open source equivalent of RedHat’s Openshift product. Openshift is an opiniated patched Kubernetes flavour, marketing itself as more developer oriented and more secure. I always forget what the acronym OKD stands for, so Google it yourself it you like to know. Changing jobs about a year ago, I inherited some long running clusters and the internal work flow using and operating the platforms. I had about 4 years of experience operating and developing on ‘vanilla’ Kubernetes before....

May 22, 2022 · 9 min · Maarten Steenhuyse

CRIO cgroup leakage

Yesterday I managed to solve a long standing issue with the help of someone from the community. To me a nice example of what can be the hidden costs of running an open source platform with a lot of moving parts. My takes on Openshift and OKD after a year of experience is for some other time. The problem An image says more than a thousand words is the cliché so here we go:...

May 21, 2022 · 6 min · Maarten Steenhuyse

Ceph Object Storage

Warning: work in progress. In this blog post you will learn how easy it is to setup object storage (cfr. AWS S3) using the Rook Ceph operator in Kubernetes. The Rook object storage quickstart is a good resource (https://rook.io/docs/rook/v1.9/ceph-object.html ) but I experienced a few bumps on the road, and I learned how easy it is to expose the storage with an user friendly web interface. Requirements The other day we needed a storage solution with following requirements:...

May 18, 2022 · 2 min · Maarten Steenhuyse