Yet Another Kubernetes-the-Hard-way

A good way to understand softwares are to just build them up yourself (vs. using a shrink-wrapped release). Below are my ongoing attempt to understand Kuberenetes by trying to install it on a relatively low level.

Objectives

Installing Kubernetes Components and get a cluster working on my own.

Decisions

For the hosts:

  • kubeadm is the tools to create Kubernetes clusters
  • On ARM Macs, lima to spin up Linux VMs
  • On X86 machines, ProxMox to create KVM Linux VMs
  • Alpine Linux for a relatively lightweight and multipurpose Linux distro for the hosts.
  • containerd for container runtime

For the K8s clusters:

  • flannel as the pod network addon
  • longhorn to provide Storage i.e Physical Volume