Kubernetes API 聚合层
聚合层允许 Kubernetes 使用除了核心 Kubernetes API 所提供的 API 之外的其他 API 进行扩展。这些附加的 API 可以是现成的解决方案,例如 指标服务器,也可以是您自己开发的 API。
聚合层不同于 自定义资源,后者是一种让 kube-apiserver 识别新类型的对象的方法。
聚合层
聚合层与 kube-apiserver 在同一个进程中运行。在扩展资源注册之前,聚合层不会执行任何操作。要注册 API,您需要添加一个 APIService 对象,它“声明”Kubernetes API 中的 URL 路径。此时,聚合层将代理发送到该 API 路径(例如 /apis/myextension.mycompany.io/v1/…
)的任何内容到已注册的 APIService。
实现 APIService 的最常见方法是在集群中运行 Pod(s) 来运行 扩展 API 服务器。如果您使用扩展 API 服务器来管理集群中的资源,则扩展 API 服务器(也写为“extension-apiserver”)通常与一个或多个 控制器 配对。apiserver-builder 库为扩展 API 服务器和相关的控制器提供了骨架。
响应延迟
扩展 API 服务器应与 kube-apiserver 之间具有低延迟网络。发现请求需要在五秒或更短时间内从 kube-apiserver 来回传输。
如果您的扩展 API 服务器无法达到该延迟要求,请考虑进行更改以满足该要求。
下一步
- 要在您的环境中使用聚合器,请 配置聚合层。
- 然后,设置扩展 API 服务器 以与聚合层配合使用。
- 在 API 参考中阅读有关 APIService 的内容。
或者:了解如何 使用自定义资源定义扩展 Kubernetes API。
上次修改于 2022 年 10 月 8 日下午 4:42 PST: 调整 apiserver 聚合页面中的换行符 (ab166dcba2)