Difficulty: intermediate
Estimated Time: 10-15 minutes


In this scenario you'll learn how to bootstrap a Kubernetes cluster using Kubeadm.

Kubeadm solves the problem of handling TLS encryption configuration, deploying the core Kubernetes components and ensuring that additional nodes can easily join the cluster. The resulting cluster is secured out-of-the box through the use of RBAC and TLS.

More details on Kubeadm can be found at https://github.com/kubernetes/kubeadm

This scenario was shamelessly copied from Ben Hall's scenario located @ https://github.com/katacoda-scenarios/kubernetes-scenarios

Thank you Ben for everything!!

For more information about Katacoda email: [email protected]

Ben Hall @ Katacoda

Getting Started With Kubeadm

Step 1 of 7

Step 1 - Initialise Master

Kubeadm has been installed on the nodes. Packages are available for Ubuntu 16.04+, CentOS 7 or HypriotOS v1.0.1+.

The first stage of initialising the cluster is to launch the master node. The master is responsible for running the control plane components, etcd and the API server. Clients will communicate to the API to schedule workloads and manage the state of the cluster.


The command below will initialise the cluster with a known token to simplify the following steps.

kubeadm init --token=102952.1a7dd4cc8d1f4cc5

In production, it's recommend to exclude the token causing kubeadm to generate one on your behalf.

Terminal Host 2