不管你关注不关注,云原生它走来了,它乘着万丈光芒的 Kubernetes 走来了;不管你承认不承认,Kubernetes 已经成为了云计算时代的操作系统。对于 Kubernetes,最为大家所熟知的就是它强大的容器编排能力(同为容器编排的还有 Mesos、Docker Swarm,但是 Kubernetes 已成一枝独秀),其实 Kubernetes 还有一个更强大的能力 —— 扩展能力。如果只是利用 Kubernetes 内置的资源及 controller 类型,也就只能做到将应用 “挪” 到 Kubernetes 上,而不是真正的 Kubernetes 原生。如果利用 Kubernetes 的扩展能力,就可以将应用变成 Kubernetes 原生的了。
Kubebuilder 中文文档(由云原生社区翻译)地址:https://cloudnative.to/kubebuilder
Kubernetes 扩展之 Operator
Kubernetes 的扩展可以通过 Operator(Kubernetes API + CRD)来实现。在早期,为了实现一个 Operator,用户需要自己完成很多 Kubernetes 功能的实现,比如 Kubernetes Client 的创建,Kubernetes API Server 的监听等(这一点付业成老师在云原生社区直播分享 TiDB Operator 架构与实