1

按照本指南安装 kubernetes 集群后,我决定检查系统 pod kube-scheduler的日志以确保一切正常:

 kubectl logs --namespace kube-system kube-scheduler-user223225-pc

但我收到下一条错误消息:

Error from server: Get https://10.2.2.131:10250/containerLogs/kube-system/kube-scheduler-user-pc/kube-scheduler: dial tcp 10.2.2.131:10250: getsockopt: no route to host

我尝试从其他 pod 获取日志并得到相同的错误。

我在 Ubuntu 16.04 上运行集群并选择使用以下命令安装的法兰绒网络:

kubectl taint nodes --all node-role.kubernetes.io/master-
kubectl create -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel-rbac.yml
kubectl create --namespace kube-system -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

也许,我错过了一些东西,我也看到人们建议配置防火墙,但这对我没有帮助:

sudo systemctl stop kubelet
sudo systemctl stop docker
sudo ifconfig cni0 down
sudo ifconfig flannel.1 down
sudo ifconfig docker0 down

sudo service docker start
sudo service kubelet start

sudo iptables -A FORWARD -i cni0 -j ACCEPT
sudo iptables -A FORWARD -o cni0 -j ACCEPT

有人知道如何解决获取日志的问题吗?先感谢您。

4

2 回答 2

0

kubernetes 进程日志将记录在节点 syslog 中。您可以查看 /var/log/syslog 文件。

验证集群配置使用kubectl命令。

例如

kubectl 获取节点 kubectl 获取 pod -o 宽

您也可以安装仪表板 UI 来检查集群。

于 2017-06-23T13:00:21.893 回答
0

来自@sfgroups 和@Kirill Liubun 之间的讨论:

  • 问题的根本原因:/etc/hosts在 Kubernetes 集群设置期间设置并使用了旧 IP 地址。因此,kube-schedulerpod 和主节点 IP 之间的 IP 地址不匹配。

  • 问题已通过修复/etc/hosts、更改 IP 地址以更正并使用kubeadm重新安装 kubernetes 集群来解决

于 2021-03-16T18:52:56.427 回答