如何在主人debuggingkuberenetes系统荚选举?

我正在努力使SSL与Kubernetes合作,但我坚持领导选举的问题。 所以我想我应该在某处看到调度器和控制器系统,而我所拥有的是这样的:

kubectl get po --namespace=kube-system NAME READY STATUS RESTARTS AGE kube-apiserver-10.255.12.200 1/1 Running 0 18h kube-apiserver-10.255.16.111 1/1 Running 0 20h kube-apiserver-10.255.17.12 1/1 Running 0 20h scheduler-master-10.255.12.200 2/2 Running 0 20h scheduler-master-10.255.16.111 2/2 Running 0 20h scheduler-master-10.255.17.12 2/2 Running 0 20h

至于比较,在我的其他集群上,我可以看到更多的豆荚:

kubectl get po --namespace=kube-system NAME READY STATUS RESTARTS AGE kube-apiserver-10.255.0.248 1/1 Running 1 30d kube-apiserver-10.255.1.112 1/1 Running 1 30d kube-apiserver-10.255.1.216 1/1 Running 1 30d kube-controller-manager-10.255.1.216 1/1 Running 3 30d kube-scheduler-10.255.1.216 1/1 Running 1 30d scheduler-master-10.255.0.248 2/2 Running 2 30d scheduler-master-10.255.1.112 2/2 Running 2 30d scheduler-master-10.255.1.216 2/2 Running 2 30d

有谁知道如何debugging呢? Pod日志不会显示太多,而我的Pod却处于未决状态。

有几件事情可能会发生:

  • 这两个集群是以同样的方式创造的吗? 请注意,根据群集的不同,某些服务(如调度程序或控制器)可能在裸机上运行。 如果是这样的话,那么你应该使用systemctl status <name-of-the-service>.service (在使用systemd的情况下) systemctl status <name-of-the-service>.service节点内部的日志。

  • 如果这些模块是作为豆荚运行的,那么我build议你去主节点并检查/etc/kubernetes/manifests 。 你应该find你正在寻找的服务的操作。 如果他们不是,那么你有理由不在系统中find豆荚。 如果豆荚在那里,然后检查参数是否设置正确(特别是--leader-elect一个)

正如Javier Salmeron所述,检查清单文件夹。 如果他们确实存在那么检查kubelet的日志输出。 如果缺less的豆荚尝试启动你也可以检查日志与“docker日志”