Author: admin

  • 4 Years Since Working From Home Started

    Although the COVID-19 pandemic made countless things worse, it still had a silver-lining: working from home(or remote jobs) as a norm. 2020 It still feels like a fresh memory when I recall how the working from home transition started. Before 2020, it was a blessing if one could work from home 1 day a week.…

  • How to Upgrade a Kubernetes Cluster with `kubeadm` in 2024

    TL; DR: I upgraded my Garage Kubernetes Lab cluster from 1.28 to 1.29 recently. Here’s how I did it. Upgrading the Control Plane First, the Linux package repository needs to be updated to include kubeadm 1.29. This can be done like this(My cluster is built with Ubuntu 22.04, for other Linux distributions please refer to…

  • How to Upgrade Istio the Git-Ops Way

    Istio 1.17 has been running really well in my Garage Kubernetes lab, but I thought it’s time to give it an upgrade. It was installed and configured using istioctl utility last time when I bootstrapped the cluster. Since I’ve automated a lot of Kubernetes resources using ArgoCD I would like to upgrade Istio the git-ops…

  • How to Calculate Proportions Using 2 Metrics in Prometheus

    Recently I needed to improve an alert defined using Prometheus Alert Manager to trigger when less than half of the minimum replicas are up, eg. I had a look at existing metrics collected by kube-state-metrics in my Kubernetes cluster, the number of replicas running well could be queried with the kube_pod_status_ready metric and the number…

  • An Easy Way to Build GitHub Actions Workflows

    TL; DR: I found it not so convenient to look up GitHub’s official docs when traversing objects in GHA(GitHub Actions), ie. what’s in github.event object? So using a few steps now all the data structures are available to me. 🙂

  • A Simple and Interactive Decoder for Kubernetes Secrets

    TL; DR: Here’s a simple shell function which can decode Kubernetes secrets interactively and should work in any Bash and compatible environments. Requirements: Here’s the code. This can be chained together with other commands too, eg. on a Mac, I can do Then the decoded content of selected secret key will be put into clipboard.…

  • How Much Did I Pay for Electricity, Petrol and Gas in 2023?

    Am I one of those minimalists? No. The secret is, I paid 0 for petrol and gas – I have no need of them since I fully electrified my home. Here are the milestones of my journey to full electrification: I suspended my gas account in May 2023 and the process costed me $88. With…

  • A GKE Issue: Metadata Service Is Unreachable In Nodes

    Recently I encountered some errors in a GKE cluster where a lot of pods were stuck at crash loop backoff state, which means the pods couldn’t recover on their own. When taking a closer look, I saw errors like: It’s a DNS issue then. However when I created a pod and ran some DNS tests…