Kubernetes REST API

时间:2015-10-08 20:03:07

标签: api kubernetes

kubernetes是否可以通过REST API访问?我正在查看Kubernetes API页面,它看起来非常神秘/不完整。他们谈论新版本,但没有在任何地方透露API使用或文档。我只是想知道除了使用kubectl命令之外是否有其他方式访问集群信息。

使用示例:

我现在做的事情:

kubectl get pod --context='my-prod-cluster'

我想做什么:

curl GET /some/parameters/to/get/info

5 个答案:

答案 0 :(得分:24)

您可以通过将{{1}}传递给任何kubectl命令来查看kubectl正在进行的所有API调用

答案 1 :(得分:2)

在Kubernetes网站上完整记录了REST API: https://kubernetes.io/docs/reference/using-api/api-overview/

它包含有关如何reach the APIbe authorized to use the API的信息,以及可用API对象的完整细分以及您可以对其执行的操作。

答案 2 :(得分:1)

您可以在kubectl之外使用API​​。事实上,我的理解是,在它下面所有kubectl只是对API服务器进行REST调用。在使用TLS证书进行身份验证的群集中,列出您的pod的curl调用可能看起来像这样(您可以使用kubectl cluster-info | grep 'Kubernetes master'获取您的apiserver位置/端口):

curl --cert myuser.pem --key myuser-key.pem --cacert /path/to/ca.pem https://my-prod-cluster-apiserver:6443/api/v1/pods

This doc显示了如何使用kubectl proxy来探索自己群集上的Swagger生成的API文档。这些文档似乎偶尔会生成并放置here

答案 3 :(得分:0)

我认为这可能是你找到的,虽然它并不总是最新的。 http://kubernetes.io/kubernetes/third_party/swagger-ui/

答案 4 :(得分:0)

Kubernetes具有一个API参考页。它详细介绍了可通过API访问的所有操作。要在本地访问群集的API,请确保使用kubectl proxy进行代理(当然要先进行设置)。

API参考: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/