Troubleshooting Controlplane Nodes

This section applies to nodes with the controlplane role.

Check if the Controlplane Containers are Running

There are three specific containers launched on nodes with the controlplane role:

  • kube-apiserver
  • kube-controller-manager
  • kube-scheduler

The containers should have status Up. The duration shown after Up is the time the container has been running.

  1. docker ps -a -f=name='kube-apiserver|kube-controller-manager|kube-scheduler'

Example output:

  1. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  2. 26c7159abbcc rancher/hyperkube:v1.11.5-rancher1 "/opt/rke-tools/en..." 3 hours ago Up 3 hours kube-apiserver
  3. f3d287ca4549 rancher/hyperkube:v1.11.5-rancher1 "/opt/rke-tools/en..." 3 hours ago Up 3 hours kube-scheduler
  4. bdf3898b8063 rancher/hyperkube:v1.11.5-rancher1 "/opt/rke-tools/en..." 3 hours ago Up 3 hours kube-controller-manager

Controlplane Container Logging

Troubleshooting Controlplane Nodes - 图1note

If you added multiple nodes with the controlplane role, both kube-controller-manager and kube-scheduler use a leader election process to determine the leader. Only the current leader will log the performed actions. See Kubernetes leader election how to retrieve the current leader.

The logging of the containers can contain information on what the problem could be.

  1. docker logs kube-apiserver
  2. docker logs kube-controller-manager
  3. docker logs kube-scheduler

RKE2 Server Logging

If Rancher provisions an RKE2 cluster that can’t communicate with Rancher, you can run this command on a server node in the downstream cluster to get the RKE2 server logs:

  1. journalctl -u rke2-server -f