自定义资源是 Kubernetes API 的扩展。
Kubernetes 提供了两种将自定义资源添加到集群的方法:
CustomResourceDefinition(CRD)
机制允许你通过指定自己的 API 组、种类和模式以声明方式定义新的自定义 API。
Kubernetes 控制平面为自定义资源提供服务并为其提供存储。
CRD 允许你为集群创建新的资源类别,而无需编写和运行自定义 API 服务器。
聚合层(Aggregation Layer)位于主
API 服务器后面,将 API 服务器用作代理。
这种安排称为 API 聚合(API Aggregation,AA),允许你通过编写和部署自己的 API 服务器来为自定义资源提供专门的实现。
主 API 服务器将你指定的自定义 API 的请求委托给你的 API 服务器,使其可供所有客户端使用。