在kubernetes中,除了可以使用kubectl工具来操作集群外,还可以直接使用API来操作集群。
如:通过API查看kubernetes版本信息:

访问POD:

kubernetes API Resources space

kube-apiserver 主要通过对外提供 API 的方式与其他组件进行交互,可以调用 kube-apiserver 的接口 $ curl -k https://
:6443或者通过其提供的 swagger-ui 获取到,其主要有以下三种 API:

● core group:主要在 /api/v1 下;
● named groups:其 path 为 /apis/$NAME/$VERSION;
● 暴露系统状态的一些 API:如/metrics 、/healthz 等;

顶层节点包括

我们主要关心的是api和apis

api和apis

core group和named group:

core group的资源结构

named group资源结构

相较于core group、name group根据有组织性,比较新的功能和特性,都会体现在这个group中。
(1)在这个named api中,定义了诸如/apps、/networking.k8s.io等group;
(2)每个group下有多个version,如v1、v1beat1等;
(3)每个version下提供了多种resource;
(4)每种resource下定义了该resource对应的verbs操作

PS:我们常说的GVR(GroupVersionResource),就是上面的这个路径;

在kuberenetes API中,也会说明当前的Resource所属的group,如:POD所属的Group为core

你可以在kubernetes下查看具有哪些API path:

然后根据path,能够找到其下所定义的API Group:

如果你直接访问API,可能会被拦截,出现403错误,即禁止访问,此时可以指定证书文件来完成请求

另外一种方式,你可以使用kube proxy:

kube proxy启动了代理服务,本地监听端口默认为8001。kube proxy将使用定义在kube config文件中的认证信息转发请求到api server。

原文地址:http://www.cnblogs.com/cosmos-wong/p/16868857.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性