k8s 06: controller-manager

In this entry, I’m going to install controller-manager, another key component of kubernetes. Its role is to maintain the cluster and pods as healthy and desired state.

Today’s goal is to make our cluster like this:

Install controller-manager on master node

1. Install controller-manager

the controller-manager binary is again in the same directory I extracted from the kubernetes latest package.

2. Configure controller-manager

I need to pass the API server IP address so that controller-manager can talk to its master.

3. Check

So let’s check if it works step by step.

  • all the components looks fine on controller node

  • and the node status is correctly updated if I shutdown worker-1

  • furthermore, deployment and scaling works now

Nice, but from the last output it’s obvious that the pod ip address is duplicated and not ideal. These IP address is actually node local and cannot be reachable from outside. In the next entry, I will deploy kube-proxy to make these service accessible from outside.