Operator-SDK简介
本篇介绍了CoreOS(已被红帽收购)的开源项目Operator-SDK的基本使用。该项目是Operator Framework的一个组件,它是一个开源工具包,以有效,自动化和可扩展的方式管理称为Operators的Kubernetes原生应用程序。
最后更新于
这有帮助吗?
本篇介绍了CoreOS(已被红帽收购)的开源项目Operator-SDK的基本使用。该项目是Operator Framework的一个组件,它是一个开源工具包,以有效,自动化和可扩展的方式管理称为Operators的Kubernetes原生应用程序。
最后更新于
这有帮助吗?
该项目当前是pre-alpha状态,预计将在即将发布的版本中会对API进行重大更改。有关即将到来的里程碑的计划工作,请参阅。
该项目是的一个组件,这是一个开源工具包,以有效,自动化和可扩展的方式管理Kubernetes原生应用程序,称为Operators。更多介绍内容,请阅读。
可以在Kubernetes之上轻松地管理复杂有状态的应用程序。然而,由于诸如使用低级API,编写样板以及缺乏模块导致重复性工作等挑战,导致目前编写Operator可能很困难。
Operator SDK是一个框架,旨在简化Operator的编写,它提供如下功能:
高级API和抽象,更直观地编写操作逻辑
用于脚手架和代码生成的工具,可以快速引导新项目
扩展以涵盖常见的操作员用例
SDK提供以下工作流程来开发新的Operator:
使用SDK命令行界面(CLI)创建新的Operator项目
通过添加自定义资源定义(CRD)定义新资源API
使用SDK API监控指定的资源
在指定的处理程序中定义Operator协调逻辑(对比期望状态与实际状态),并使用SDK API与资源进行交互
使用SDK CLI构建并生成Operator部署manifests
Operator使用SDK在用户自定义的处理程序中以高级API处理监视资源的事件,并采取措施来reconcile(对比期望状态与实际状态)应用程序的状态。
Access to a kubernetes v.1.10.0+ cluster.
首先,checkout并安装operator-sdk CLI:
使用SDK CLI创建和部署app-operator:
version v0.5.0+.
version v1.10+.
version 17.03+.
version v1.10.0+.
要了解有关operator-sdk的更多信息,请参阅。
要探索使用operator-sdk构建的任何Operator样本,请参阅。
Operator SDK受Apache 2.0许可。有关详细信息,请参阅文件。