Control Plane节点问题排查

本节适用于具有 controlplane 角色的节点。

检查 Controlplane 容器是否正在运行

在具有controlplane角色的节点上启动了三个特定的容器

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

这三个容器的正常情况应该是 Up 状态。 并且 Up 状态应该是长时间运行,通过下面命令可以进行检查:

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

输出示例:

  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 容器日志

注意: 如果是 controlplane 角色的节点, kube-controller-managerkube-scheduler 会通过选举选举出 leader 节点。 只有 leader 节点会记录当前操作的日志信息。查看 Kubernetes leader 选举可以知道如何查看当前的 leader 节点。

通过下面命令查看容器日志信息可以查看到可能包含的错误信息:

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