Kubernetes 数据基础设施:从操作符到集成栈的探索
1. 基础设施供应与操作符生态的发展
如今,基础设施供应变得越来越容易,这一趋势有望持续下去。不过,仍有许多工作有待完成。从事开源工作并获得报酬的人是幸运的,因为很多开发者的开源贡献并未得到相应补偿。希望雇主能继续看到开源软件开发的益处,让开源社区不断发展壮大。
在 Kubernetes 社区,操作符模式已相当流行,催生了操作符框架(Operator Framework)这一用于创建和分发操作符的生态系统。接下来,我们将深入了解操作符框架及相关开源项目。
2. 选择操作符的考量
虽然本章以 Vitess 为例介绍数据库操作符,但操作符显然适用于数据栈的各个元素。在云原生数据的各个方面,我们看到越来越多成熟的开源操作符可供部署使用。在后续章节中,我们还会探讨如何在 Kubernetes 上运行不同类型的数据基础设施,并介绍更多操作符。
选择操作符时,需考虑多个方面:
- 操作符有哪些特性?
- 它能实现多少自动化功能?
- 其支持情况如何?
- 它是专有还是开源的?
操作符框架提供了一个很好的资源——操作符中心(Operator Hub),这是查找操作符的首选之地。操作符中心是一个组织良好的列表,涵盖了云原生软件的各个方面。不过,它依赖维护者提交操作符进行展示,这意味着许多现有操作符可能未被列出。
操作符框架还包含操作符生命周期管理器(Operator Lifecycle Manager),它是一个用于在集群中安装和管理其他操作符的操作符。你可以创建自己的自定义操作符目录,也可以使用他人提供的目录,例