Monitoring etcd backups

As part of a previous post, I described how I am running etcd in memory. This setup requires that regular backups are taken of etcd and this must be monitore.
Continue reading

Posted in Uncategorized | Leave a comment

Chat GPT sure knows a lot about kubernetes

Chat GPT sure knows a thing or two about kubernetes. Here is the output when I asked it to produce a rhyme about kubernetes (with one minor edit):

In the world of tech, there’s a tool so great
It’s called Kubernetes, it’s never too late
To learn how it works, it’s a valuable skill
For managing containers, it fits the bill

With Kubernetes, you can deploy with ease
Your apps and services, they’ll run with such breeze
Scaling and load balancing, it does it all
Ensuring your systems never stumble or fall

The clusters it creates are strong and secure
With backups and failovers, it’s hard to workloads endure
A smoother experience, you’ll hardly find
Kubernetes is the key, to a peace of mind

So if you’re a techie, and want to succeed
Learn Kubernetes, it’s what you need
With its powerful features, you’ll never lose
It’s the tool to have, and it’ll never refuse.

Posted in Fun | Leave a comment

Using argocd with k3d to manage another k3d cluster

I am experimenting currently with argocd with the aim to have an (almost) fully automated bootstrapping of my kubernetes cluster at home. One of the first things to do when experimenting is to have a test environment. There are different deployment options for argocd to consider:

  • deploy argocd in the cluster that it is managing
  • deploy argocd in another cluster

Continue reading

Posted in Devops/Linux | Leave a comment

Running kubernetes etcd in-memory

After setting up my kubernetes cluster at home back in June 2021, one of the first things I noticed was a lot more noise from the server. Apparently, it was just a lot of disk IO coming from kubernetes and in particular etcd. Therefore, I decided to fix this problem.
Continue reading

Posted in Devops/Linux | Leave a comment

Fixing sound on the ASUS N7601ZM

I got a new laptop last week for work and needed to get it ready. Now new laptops usually mean new hardware and that can spell problems if you are installing linux. This is because the latest hardware may be used and linux usually needs some time to catch up with the latest hardware. This started out with the graphical installation not working. Luckily though, rocky linux 9 also supports a VNC install. So this issue was solved by connecting the laptop to wired ethernet and using VNC from another laptop to do the installation. This all went without problems. Next up was the NVIDIA driver for which I am using the RPM packages from the NVIDIA CUDA repository. These usually work fine, however, this time there was a mismatch where the driver was installed in the wrong directory; easily fixed though by fooling the NVIDIA RPMs by creating a symbolic link in /lib/modules: 5.14.0-162.12.1.el9_1.x86_64 -> 5.14.0-162.12.1.el9_1.0.2.x86_64/.

Finally, there was the sanity check to verify all devices such as webcam, microphone, speakers etc.. This is where all the problems started.
Continue reading

Posted in Devops/Linux | Leave a comment

A fresh start

I am starting a new job on March 1st 2023 and on this happy occasion, the traditional countdown timer is up again!

The timer appears each time something important is about to happen in my life, see also:

Posted in Fun | Leave a comment

Monitoring logs on k8s with loki and grafana

This post describes how to monitor logs in kubernetes with grafana and loki. This covers the use case of logging for troubleshooting purposes. That is, it allows analysing human readable logs coming from multiple systems in one aggregated log. Human readable logs are required for troubleshooting and optimization. It is the bare minimum of logging that is required.
Continue reading

Posted in Devops/Linux | Leave a comment

A note on migrating an old Jira install to Jira cloud

One part of the migration of my old setup to kubernetes is the migration of an old Jira 6.1 instance. Unfortunately, running that same jira instance in a container did not work because of licensing issues, and apparently it is impossible to get new licenses for such an old jira instance. Also it seems no longer possible to run Jira at home for open source projects and only cloud hosting may be used. A prerequisite for what follows is that you have a cloud instance of Jira running at atlassian cloud with a valid license (open source or commercial). The description is not exhaustive and you will need atlassian documentation and support to get the full picture, but this post tries to describe some of the essential steps in the migration.

Untortunately migrating directory from such an old Jira instance to Jira cloud is impossible and must be done in steps.
Continue reading

Posted in Devops/Linux | Leave a comment

DLNA server on kubernetes, embarassingly simple…

As the last step of migration to kubernetes I am migrating my DLNA server to kubernetes. This will allow me to play content from my server on my TV. As part of my previous migration of the NAS I already migrated over all my data (including media) to kubernetes so this should be easy: just run a DLNA server on kubernetes and give it a mount of the media content. This new setup is going to replace my old mediatomb setup.

Continue reading

Posted in Devops/Linux | Leave a comment

A do-it-yourself NAS on kubernetes

As one of the last steps in moving my VM based setup at home to kubernetes, it is now the turn to migrate my ‘NAS’. The term ‘NAS’ is a too much honor for it since it is basically just a single shared file system exposed over SSHFS, Samba, and rsync. The setup discussed below however still supports multiple shares. Basically what I need from my NAS setup is the following:

  • it must be accessible on Windows and linux
  • efficient backups of important files must be possible using rsync (such as my complete home directory on linux)

Continue reading

Posted in Devops/Linux | Leave a comment