Education: minikube, single cluster with kubeadm/gcp/aws
Development and Testing:
Production:
- High availability multi-node cluster with multiple master nodes
Turnkey Solution:
OpenShift Cloud Foundry COntainer Runtime VMware Cloud PKS Vagrant
Hosted: GKE OpenShiftOnline AKS EKS
Configure High Availability
- Multiple master node
- place load balancer to share the load between the multiple master nodes in an active-active configuration
- Active-standby configuration: // kube-controller-manager –leader-elect true
-
Stacked control-plane topology
- External ETCD Topology
Configuring ETCD in HA mode
- odd number of nodes is preferred to make the cluster up in case of a network segmentation
Important Update: Kubernetes the Hard Way
Installing Kubernetes the hard way can help you gain a better understanding of putting together the different components manually.
An optional series on this is available at our youtube channel here:
https://www.youtube.com/watch?v=uUupRagM7m0&list=PL2We04F3Y_41jYdadX55fdJplDvgNGENo
The GIT Repo for this tutorial can be found here: https://github.com/mmumshad/kubernetes-the-hard-way
Installing using Kubeadm
- 3 VM provisioned(1 master and 2 worker nodes)
- install container runtime on hosts, like containerd
- install kubeadm on all nodes
- Initialize master server
- set up POD network
- Join PODs to the master node
- deploy applications
The vagrant file used in the next video is available here:
https://github.com/kodekloudhub/certified-kubernetes-administrator-course
Here’s the link to the documentation:
https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/