Docker kube插件管理器内的kubectl超时
我在调试集群中的一个问题,kube插件管理器pod中的命令超时,而等效的curl命令工作正常Docker kube插件管理器内的kubectl超时,docker,kubernetes,kubectl,client-go,Docker,Kubernetes,Kubectl,Client Go,我在调试集群中的一个问题,kube插件管理器pod中的命令超时,而等效的curl命令工作正常 bash-4.3# kubectl get node --v 10 I1119 16:35:55.506867 54 round_trippers.go:386] curl -k -v -XGET -H "Accept: application/json, */*" -H "User-Agent: kubectl/v1.10.5 (linux/amd64) kubernetes/32ac1c
bash-4.3# kubectl get node --v 10
I1119 16:35:55.506867 54 round_trippers.go:386] curl -k -v -XGET -H "Accept: application/json, */*" -H "User-Agent: kubectl/v1.10.5 (linux/amd64) kubernetes/32ac1c9" http://localhost:8080/api
I1119 16:36:25.507550 54 round_trippers.go:405] GET http://localhost:8080/api in 30000 milliseconds
I1119 16:36:25.507959 54 round_trippers.go:411] Response Headers:
I1119 16:36:25.508122 54 cached_discovery.go:124] skipped caching discovery info due to Get http://localhost:8080/api: dial tcp: i/o timeout
等效curl命令输出
bash-4.3# curl -k -v -XGET -H "Accept: application/json, */*" -H "User-Agent: kubectl/v1.10.5 (linux/amd64) kubernetes/32ac1c9" http://localhost:8080/api
Note: Unnecessary use of -X or --request, GET is already inferred.
* Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to localhost (127.0.0.1) port 8080 (#0)
> GET /api HTTP/1.1
> Host: localhost:8080
> Accept: application/json, */*
> User-Agent: kubectl/v1.10.5 (linux/amd64) kubernetes/32ac1c9
>
< HTTP/1.1 200 OK
< Content-Type: application/json
< Date: Mon, 19 Nov 2018 16:43:00 GMT
< Content-Length: 134
<
{"kind":"APIVersions","versions":["v1"],"serverAddressByClientCIDRs":[{"clientCIDR":"0.0.0.0/0","serverAddress":"172.16.1.13:6443"}]}
* Connection #0 to host localhost left intact
似乎在您的配置中,您正试图与kube apiserver中不安全的端口
8080
通信
您可以尝试使用以下选项启动kube apiserver:
--insecure-port
不安全端口的默认值为8080
。请注意,此选项将来可能会被弃用
另外,请记住
kube插件管理器
是的一部分。不,我在kube插件管理器
内使用kubectl
,而不是试图连接到kube插件管理器
。这就是kube插件管理器
所做的,它使用kubectl
检查插件状态,并在需要时协调它们。但是现在,kubectl
命令总是超时,使得kube插件管理器
无法进行协调。我看到您在集群中做了什么更改了吗?实际上,我有两个配置完全相同的集群,另一个运行正常,而这个没有kubectl
内部kube插件管理器
pod连接到apiserver不安全端口8080
,但是如果我使用kubeconfig,它将连接到端口6443,一切看起来都很好。我知道总有一件事我错过了,只是不知道是哪一件。在kube apiserver中尝试--不安全端口
,更新答案
--insecure-port