我配置了 1 个主节点和一个节点的 kubernetes 集群,运行主节点和节点的机器不在同一网络中。对于网络,我安装了 calico 并且所有 pod 都在运行。为了测试我使用的集群获取外壳示例 https://kubernetes.io/docs/tasks/debug-application-cluster/get-shell-running-container/当我从主机运行以下命令时:
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 接口上。
我需要进行什么配置才能从 master 访问 pod?
EDIT
kubectl 获取所有 --all-namespaces -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
Thanks!
在检查您的 Master 状态之前,请确认以下事项。
请运行以下命令来检查集群信息:
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 获取节点
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)