Etcd Cluster recommended Install

what ist the recommended Way to install an etcd cluster for an HA K8S Cluster with 5 ControlPlane Nodes and about 100+ Worker Nodes? Is the recommended Way to install in an Docker container like this one what is describe here Set up a High Availability etcd Cluster with kubeadm | Kubernetes or install etcd in BareMetal like this one here ?

Just out of curiosity:

  • Which Kubernetes distribution are you planning to use?
  • Are you deploying onto a public cloud VM platform (ie. Amazon EC2 instances, Digital Ocean droplets, etc.), or on private cloud?
  • Do you have external storage available for Linux containers
  • Which Linux distribution are you planning to use for the etcd nodes?

I would probably run etcd in containers, using Docker on each VM, for ease of future version upgrades. The benefits you get from filesystem isolation in the containerized distribution of etcd are too good to pass up. Since these will likely be long-lived (measured in years) nodes, running a package manager for installation would invite issues down the road.

An alternative option would be to install etcd on “bare metal” using a package manager, but then have a plan in place to perform version upgrades by adding entirely new, replacement nodes to the cluster. You’ll also have to consider the operating system upgrade process you use for these nodes.

Doing version upgrades through adding in replacement nodes seems much more preferable to doing OS upgrades on a longer lifecycle VM.

I hope this makes sense, I’m kinda rambling. :laughing:

Trevor Sullivan

I wan’t to use Plain Kubernetes on Bare Metal Servers (Hetzner Dedicated Server) as Distribution I use Debian 11. As external Storage I can setup an external NFS or CEPH Storage, what do you prefer?

So you recommend that I should setup etcd with Kubeadm what is describe in the official Docs? Set up a High Availability etcd Cluster with kubeadm | Kubernetes