如何调试大师的kuberenetes系统pod选举?

时间:2017-06-30 09:58:08

标签: docker kubernetes

我正在努力让SSL与kubernetes合作,但我遇到了领导选举问题。所以我认为我应该在某个地方看到调度程序和控制器系统pod,而我只有这个:

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

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

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

有人知道如何调试吗? Pod日志显示不多,我的pod已陷入暂挂状态。

2 个答案:

答案 0 :(得分:0)

可能会发生一些事情:

  • 这两个集群的创建方式是否相同?请注意,根据群集,调度程序或控制器等某些服务可以在裸机上运行。如果是这种情况,那么您应该使用例如systemctl status <name-of-the-service>.service检查节点内的日志(如果它使用的是systemd)。

  • 如果要将这些模块作为pod运行,那么我建议您转到主节点并检查/etc/kubernetes/manifests。你应该找到你正在寻找的服务的操作。如果不是,则说明您没有在系统中找到pod的原因。如果pod在那里,那么检查参数是否设置正确(尤其是--leader-elect一个)

答案 1 :(得分:0)

如Javier Salmeron所述,检查清单文件夹。如果它们确实存在,那么检查kubelet的日志输出。如果丢失的pod尝试启动,您还可以使用&#34; docker logs&#34;

检查日志