2015-09-25 84 views
4

我遵循Kubernetes docs for setting up a single node cluster as a Docker container。我现在在远程Linux VM上运行Kubernetes(例如,mykube01.example.com)。针对远程集群配置kubectl

然后,我在我的Mac笔记本电脑上本地下载并安装了kubectl。我可以运行kubectl version并验证我安装了正确的版本。

我后来去通过following this doc配置kubectl和创建以下~/.kube/config文件:

apiVersion: v1 
clusters: 
- cluster: 
     api-version: v1 
     server: http://mykube01.example.com:8080 
     name: testkube 

当我运行kubectl cluster-info我得到:

Kubernetes master is running at http://mykuber01.example.com:8080 

但是当我运行kubetctl get nodes我得到:

The connection to the server mykube01.example.com:8080 was refused - did you specify the right host or port? 

任何想法,我要走错了吗?我想要得到的地步,我可以保持与第一Kubernetes DOC打算和部署通过nginx的到1个节点的集群:

kubectl -s http://mykube01.example.com:8080 run-container nginx --image=nginx --port=80 

但我不能这样做,直到我得到kubectl适当和正确的配置连接到我的远程“群集”。

+0

在您的Linux机器上运行apiserver是否在所有网络接口上侦听?如果来自Mac的连接被拒绝,那听起来好像它可能没有在可远程访问的界面上监听。 –

+0

只是为了确保api服务器正常运行,可能是您可以尝试从笔记本电脑上卷曲http://mykube01.example.com:8080/api/v1/nodes/(或从浏览器) –

回答

1

(移动“回复”下到“答案”,让这似乎为“回答”

kubectl只是默认使用HTTP(S)。由于上面的人说,请尝试使用“卷曲mykube01。 example.com:8080/api/v1/nodes'或在浏览器中打开该URL,看看是否有效。

如果这样,但是kubectl不会在kubectl或你的配置中出现问题。 curl或浏览器不工作,问题出在网络上某处

1

当你创建了连接到你的主文件时,应该创建一个文件:

/etc/kubernetes/kubelet.conf 

默认情况下,您的个人配置为空或缺失。所以,我复制上面提到的kubelet.conf文件作为我的~/.kube/config文件。完美工作。