3

我已经建立了一个在 AWS 上运行的 kubernetes 集群。我现在要做的是从远程机器控制集群,例如我的 macbook pro。

我了解到 Kubernetes 有 RESTful api,并且 Kubectl 可以充当代理。通过运行: kubectl proxy --port=8001 & 我可以使用 curl 访问 RESTful api,例如:

curl http://localhost:8001/api

然后我发现我只能curl localhost。如果我使用以下命令从远程机器卷曲:

curl http://dns-to-the-k8-machine:8080/api

我会收到“连接被拒绝”。我想知道这里发生了什么?有没有办法轻松地远程访问 API?

提前致谢。

4

1 回答 1

1

根据您配置集群的方式,API 服务器可能正在侦听不同的端口。查看您的kubeconfig文件 ( ~/.kube/config),其中应该有一个部分包含您要连接的服务器。

此外,您的集群可能正在使用证书或其他类型的身份验证,您也需要通过这些身份验证。这些将在同一个 kubeconfig 文件中进行概述。

使用时kubectl proxy,kubectl 会自动处理上述部分,并通过 localhost 代理回您的笔记本电脑。

于 2016-11-08T01:21:07.270 回答