25.使用CRD扩展Kubernetes-API和高级主题

25.使用CRD扩展Kubernetes-API和高级主题

有些场景,kubernetes内建的资源类型往往不能满足我们的需求,如redis集群初始化、扩容、缩容、备份等操作。

这时候就需要我们考虑如何去扩展kubernetes的API。

1.扩展方式

为了增强kubernetes的定制化功能,我们可以通过以下三种方式来扩展Kubernetes API:

1>修改kubenetes的apiserver源码:难度最大、kubernetes版本更新太快,兼容性很困难
2>自定义API server(Custom API server)并聚合到API(Aggregation)中:难度较大,需要开发能力
需要考虑的问题也不少:例如数据如何存储、API版本之间如何转换和支持等
3>1.7以下版本编写TPR,kubernetes1.7及以上版本用CRD:常用方式

2.扩展架构图

25.使用CRD扩展Kubernetes-API和高级主题

如图所示,用户对集群的请求首先到apiserver内部的Aggregat

上一篇:自定义crd


下一篇:Kubernetes Operator 快速入门教程