Skip to main content
Vegard S. Hagen

Vegard S. Hagen

Post-physicist practicing programmatic principles

Welcome to my self-hosted homepage 👋 Feel free to reach out to me on any platform you feel comfortable on, or check out my recent obsessions below ⤵

Recent

Postgres databases in Kubernetes
·3575 words·17 mins
Traditionally, an ideal Kubernetes workload should be stateless, meaning it should be able to run anywhere and scale freely, though this also severely limits which kinds of applications we can run, i.e. stateful applications. In this article we’ll take a look at how we can solve the run anywhere and scalability challenges with stateful workloads in Kubernetes.
TalosCon & SREDay London 2024
·1766 words·9 mins
SREDay London 2024 together with the day-0 TalosCon1 just finished, and I’m happy I got to attend! I first heard about TalosCon during KubeCon + CloudNativeCon in Paris earlier this year, which also gave me the final push to actually try Talos.
Talos Kubernetes on Proxmox using OpenTofu
··9008 words·43 mins
Talos is an immutable operating system designed to only run Kubernetes. The advantage of Talos is an out-of-the-box Kubernetes install, as well as a smaller attack surface, and easier maintenance. In this article we’ll take a look at how to bootstrap and upgrade a multi-node Talos cluster running in VMs on a Proxmox Virtual Environment 8.
Kubernetes Proxmox Container Storage Interface
··3259 words·16 mins
If you plan to run stateful applications in your Kubernetes cluster, you quickly run into the question of where to store this state. A database is often the best solution, though writing to disk is sometimes the only — or at least easier, option.
Intel Quick Sync Video with Kubernetes
··3266 words·16 mins
Taking advantage of hardware acceleration can drastically reduce both CPU and power usage when playing video, enabling seemingly innocuous chips — like the Intel N100, to render multiple 4K video streams. In this article we’ll go through how to enable Intel® Quick Sync Video for hardware accelerated transcoding in containers orchestrated by Kubernetes.
External services with Gateway API
··2056 words·10 mins
In this article we’ll take a look at how to proxy external services through the Kubernetes Gateway API. There are of course more lightweight methods to proxy services, but once you already have the proverbial hammer, why not treat everything like a nail?
Kubernetes on Proxmox
··5987 words·29 mins
In my previous article we took a look at how to bootstrap K3s with Cilium starting from a fresh Debian 12 network installation. Having recently started to play around with Proxmox Virtual Environment, I feel the natural progression is to get to know OpenTofu/Terraform and Cloud-init to automatically provision virtual machines for a Kubernetes cluster.
Bootstrapping K3s with Cilium
··4014 words·19 mins
Getting started with Kubernetes might seem like a daunting task at first, but getting a basic ephemeral cluster up and running with tools like minikube, kind, or k3d is quite straightforward if you follow their documentation. In this article we’ll explore how to bootstrap a more permanent, or production grade, Kubernetes cluster using k3s.
CUDA on Kubernetes
·1316 words·7 mins
With the LLM era upon us, I’ve been wanting to play around with some of the open source, self-hosted toys available. I’m using an old workstation as a homelab, which conveniently has an old NVIDIA GPU installed. Seeing as I’m running a Kubernetes cluster I want to expose the GPU to the workloads to utilise the existing infrastructure for easy hosting, scheduling, and deployment of GPU assisted applications.
Gateway API with Cilium and Cert-manager
··2726 words·13 mins
In the Gateway API SIG’s own words, If you’re familiar with the older Ingress API, you can think of the Gateway API as analogous to a more-expressive next-generation version of that API. In this article we’ll quickly review the role-oriented architecture of the Gateway API before we implement it using Cilium and Cert-manager.