Infrastructure

The Kubernetes configuration for HA is as follow:

  • 3 machines for control plane and ETCD in LAN.

  • 3+ machines for worker in LAN.

  • 2+ machines for HAProxy with static public IP.

  • 2+ machines for GlusterFS server (which can be on control plane nodes).

Recommended configuration:

  • Kubeadm or Rancher (careful for default settings, requires 1 more machine) or K3s for installation.

  • Calico as Pods network management.

  • Traefik 2+ as Ingress controller (DaemonSet on worker nodes only).

  • HAProxy as public load balancer.

  • GlusterFS as replicated storage.

For secure installation:

  • Setup ufw.

    • 80 and 443 for public IPs for HAProxy.

    • Everything on LAN IPs.

  • Enable HAProxy failover with HTTP (TCP or HTTP health check).

Notes:

  • Control plane and ETCD nodes are not worker nodes. It protects masters of overload.

  • Do not forget HTTPS.

  • Disable SWAP for Kubernetes!

Last updated

Was this helpful?