Learn Kubernetes weekly — issue #10

Learn Kubernetes weekly — issue #10

Hello and welcome to Learn Kubernetes weekly #10!

Let's get started with the articles from this week:

📚 Articles

1. 🔥 Kubernetes failure stories

A compiled list of links to public failure stories related to Kubernetes.

2. 🔥 Comparing resource consumption in k0s vs k3s vs MicroK8s

This article compares K0S, K3S, and MicroK8s, and the resources required for each.

3. 🔥 Backup-and-restore of containers with Kubernetes checkpointing API

Kubernetes v1.25 introduced Container Checkpointing API — a way to backup-and-restore containers running in Pods, without stopping them.

In this article, you'll take a look at it and learn how to leverage it for backup-and-restore or forensic analysis.

4. 🔥 Design patterns for extensible controllers

This article aims to showcase some examples of how to design extensible controllers and operators for Kubernetes.

5. 🔥 Pitfalls reloading files from Kubernetes secret & ConfigMap volumes

Files on Kubernetes Secret and ConfigMap volumes work in peculiar and undocumented ways when watching changes to these files with the inotify syscall.

Your typical file watch that works outside Kubernetes might not work as you expect.

6. Why you should avoid Sealed Secrets in your GitOps deployment

In this article, you will discuss the pitfalls and alternatives of Sealed Secrets as you move your deployments to production using GitOps.

More articles worth checking out:


📖 Tutorials

1. 🔥 About my PDF-Editor project

In this tutorial, you will follow Dipankar's journey in building a web-based PDF editor using modern web technology and infrastructure.

Dipankar linked all the online resources that he used to learn those technologies while building the project.

2. Creating a simple web app to list Kubernetes resources

In this tutorial, you'll learn how to build a simple app that lists resources on the Kubernetes cluster it runs on.

In the process, you will also learn how to utilize Service Accounts, RBAC, the Python client, Ingress and more.

3. Cilium CNI on EKS using secondary CIDR and prefix delegation

In this tutorial, you will learn how the Cilium CNI can be deployed on EKS using Terraform and how to use it for VPC secondary CIDR and prefix delegation.

4. GKE with NGINX service mesh

This tutorial has two parts:

  1. NSM (NGINX Service Mesh) for east-west traffic to secure traffic between services in the cluster.
  2. NGINX-Plus Ingress Controller for north-south traffic to secure incoming traffic outside Kubernetes into the service mesh.


💼 Kubernetes jobs

Site Reliability Engineer

  • Salary: $170K - 200K
  • Location: Remote (United States) 🌎
  • Tech stack: Kubernetes, Terraform, Ansible, Docker, Python, Database, CI/CD, Jenkins

Full Stack Developer

  • Salary: £25K - 45K
  • Location: Remote (Worldwide) 🌎
  • Tech stack: Kubernetes, AWS

Cloud Engineer

  • Salary: €45K - 70K
  • Location: München, Germany 🇩🇪
  • Tech stack: Kubernetes, AWS, Azure, Terraform, CI/CD, ArgoCD


🛠 Tools and libraries

1. aws-samples/eks-multi-cluster-gitops

This repo contains the implementation of a multi-cluster GitOps system on EKS.

2. jkosik/helm-decomposer

helm-decomposer decomposes Helm packages and visualizes the hierarchy of subcharts and images.

3. actions-runner-controller/actions-runner-controller

Actions Runner Controller (ARC) is a Kubernetes controller for GitHub Actions self-hosted runners.

With ARC, you can:

  • Deploy self-hosted runners on Kubernetes clusters with a simple set of commands.
  • Auto scale runners based on demand.

4. crumbhole/argocd-lovely-plugin

This plugin extends ArgoCD with:

  • Composing multiple things together to form a single app from multiple directories.
  • Helm + Kustomize just work.
  • You can chain several plugins together.
  • When used with application sets, you can apply Kustomizations.

5. erjadi/kubecraftadmin

KubeCraftAdmin: this project allows you to do basic Kubernetes administration through Minecraft.

6. mittwald/kubernetes-secret-generator

This repository contains a custom Kubernetes controller that can automatically create random secret values.

This may be used for auto-generating random credentials for applications running on Kubernetes.

7. kvaps/kubectl-node-shell

kubectl node-shell is a krew plugin that lets start a root shell in the node's host.

More interesting projects:


📅 Upcoming Kubernetes events

🔥 Kubernetes operator workflows & writing Kubernetes operators in Python

📅 18 Jan, 5:00 pm UTC — Online & in-person meetup.

🔥 Reuse and scale bare metal servers to 1000 nodes & Extending Containerd and CRI-O

📅 19 Jan, 4:00 pm UTC — In-person meetup.

🔥 Kubernetes is secure by default. Except it is not & ArgoCD + GitOps

📅 24 Jan, 5:00 pm UTC — In-person meetup.

So long Hadoop: moving data platforms to Kubernetes

📅 24 Jan, 6:00 pm UTC — Online meetup.

🔥 Understanding container internals

📅 25 Jan, 5:00 pm UTC — Online meetup.

🔥 Advanced Kubernetes course

📅 26 Jan, 1:00 pm UTC — Online workshop (this event requires an entrance fee).

🔥 Civo Navigate

📅 7 Feb, 0:00 pm UTC — In-person conference (this event requires an entrance fee).


It's only 3 weeks to Civo Navigate — the cloud-native tech conference in Tampa Bay!

You can sign up here.


Until next time!

— Dan

To view or add a comment, sign in

Insights from the community

Others also viewed

Explore topics