Kubernetes

Do you have experience with deploying a Kubernetes cluster? If so, can you describe the process in high-level?

Difficulty: unrated

Source: bregman-arie/devops-exercises by Arie Bregman

Answer

  1. Create multiple instances you will use as Kubernetes nodes/workers. Create also an instance to act as the Master. The instances can be provisioned in a cloud or they can be virtual machines on bare metal hosts.
  2. Provision a certificate authority that will be used to generate TLS certificates for the different components of a Kubernetes cluster (kubelet, etcd, ...)
  3. Generate a certificate and private key for the different components
  4. Generate kubeconfigs so the different clients of Kubernetes can locate the API servers and authenticate.
  5. Generate encryption key that will be used for encrypting the cluster data
  6. Create an etcd cluster