kubernetes进行kubectl version出现localhost:8080 connection refused的问题


我在Ubuntu下使用Vagrant建立了两个CentOS7的虚拟机,准备搭建Kubernetes环境,一台是master,一台是minion。它们都装了iptables和kubernetes 0.17。安装Kubernetes完毕后,使用kubectl version来查看,结果Client Version正常,而server version提示:
couldn't read version from server: get http://localhost:8080/version: dial tcp 127.0.0.1:8080: connection refused.


选区_033.png


请问这是怎么回事。谢谢!
已邀请:

杨章显 - 思科系统运维工程师

赞同来自: KiwenLau


hi,
设置环境变量如:KUBERNETES_MASTER=http://10.224.147.150:8080或者kubectl -s http://masterIP:8080

杨章显 - 思科系统运维工程师

赞同来自:


首先确保你的master server 服务已起,看看8080有木有?如果起了,看看防火墙是否bock 8080端口?

hokingyang - Yi YANG

赞同来自:


我也碰到这个问题。

安装完Kubernetes后,用kubectl version看,8080服务始终起不来。怎么排查呢?
我把iptables完全禁止了,这个有影响吗?

劉曉暉

赞同来自:


出现该错误一般是因为kube-apiserver没有绑定localhost,如果没有配置~/.kube/config的情况下,kubectl默认使用的是localhost。

解决方法:
1. apiserver不要指定--insecure-bind-address(默认使用127.0.0.1)
2. kubectl访问时候指定 --server选项
3. 配置~/.kube/config, 具体可以查看帮助,需要设置好 cluster, context, current_context字段信息

Ichuncun - 求实求真,大气大为

赞同来自:


就是apiserver server端的问题,你可以把apiserver server端当作单一服务来看。建议你单节点测试后,再理解集群。单节点测试文档见https://linux.cn/thread-14305-1-1.html

要回复问题请先登录注册