无法从主机连接到kubernetes吊舱:i/o超时
我将kubernetes集群配置为一个主节点和一个节点,运行主节点和节点的机器不在同一网络中。为了联网,我安装了calico,所有的播客都在运行。用于测试我使用的群集,以及从主计算机运行以下命令时:无法从主机连接到kubernetes吊舱:i/o超时,kubernetes,Kubernetes,我将kubernetes集群配置为一个主节点和一个节点,运行主节点和节点的机器不在同一网络中。为了联网,我安装了calico,所有的播客都在运行。用于测试我使用的群集,以及从主计算机运行以下命令时: kubectl exec -it shell-demo -- /bin/bash 我收到了错误消息: Error from server: error dialing backend: dial tcp 10.138.0.2:10250: i/o timeout ip 10.138.0.2位于节
kubectl exec -it shell-demo -- /bin/bash
我收到了错误消息:
Error from server: error dialing backend: dial tcp 10.138.0.2:10250: i/o timeout
ip 10.138.0.2位于节点计算机上的eth0接口上
我需要进行什么配置才能从主机访问pod
编辑
kubectl get all--所有名称空间-o范围输出:
default shell-demo 1/1 Running 0 10s 192.168.4.2 node-1
kube-system calico-node-7wlqw 2/2 Running 0 49m 10.156.0.2 instance-1
kube-system calico-node-lnk6d 2/2 Running 0 35s 10.132.0.2 node-1
kube-system coredns-78fcdf6894-cxgc2 1/1 Running 0 50m 192.168.0.5 instance-1
kube-system coredns-78fcdf6894-gwwjp 1/1 Running 0 50m 192.168.0.4 instance-1
kube-system etcd-instance-1 1/1 Running 0 49m 10.156.0.2 instance-1
kube-system kube-apiserver-instance-1 1/1 Running 0 49m 10.156.0.2 instance-1
kube-system kube-controller-manager-instance-1 1/1 Running 0 49m 10.156.0.2 instance-1
kube-system kube-proxy-b64b5 1/1 Running 0 50m 10.156.0.2 instance-1
kube-system kube-proxy-xxkn4 1/1 Running 0 35s 10.132.0.2 node-1
kube-system kube-scheduler-instance-1 1/1 Running 0 49m 10.156.0.2 instance-1
谢谢 检查您在主机上的状态之前。请验证以下内容 请运行以下命令以检查群集信息:
setenforce 0
firewall-cmd --permanent --add-port=6443/tcp
firewall-cmd --permanent --add-port=2379-2380/tcp
firewall-cmd --permanent --add-port=10250/tcp
firewall-cmd --permanent --add-port=10251/tcp
firewall-cmd --permanent --add-port=10252/tcp
firewall-cmd --permanent --add-port=10255/tcp
firewall-cmd --reload
modprobe br_netfilter
echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables
在主节点和辅助节点上运行上述命令
然后运行以下命令检查节点状态
kubectl获取节点我也有这个问题。我不知道你是否在Azure上,但我在,我通过删除tunnelfront吊舱并让Kubernetes重新启动它解决了这个问题:
kubectl -n kube-system delete po -l component=tunnel
这是我从获得的一个解决方案,听起来像是需要修改防火墙规则,以允许从您希望使用
exec
或logs
的任何计算机访问端口10250,因为这两个命令都直接连接到节点上的kubelet
。所有防火墙规则都是禁用的。我试着从主人那里进入吊舱。我认为问题在于kubernetes试图通过私有ip“10.138.0.2”访问pod。显示kubectl get all的输出--all namespace=true
命令我在上面添加了它。谢谢kubernetes试图通过私有ip“10.138.0.2”访问pod。那么,您希望使用什么ip?为了非常清楚:exec
和logs
不使用SDN,它们总是通过“主机”网络传输,因为它们被设计为由您的工作站访问,而不是从集群内访问。我运行了所有命令,但收到了相同的错误。我认为问题在于库伯内特斯试图访问pod thourgh的私人ip“10.138.0.2”@Dorin你是如何解决这个问题的。