生命周期Lifecycle
生命周期文件:{OSC-Package}/lifecycle.yaml,描述当前OSC服务包的安装,升级方式信息。
- lifecycle.yaml文件样例
## 描述该OSC服务包的声明周期相关信息 install: strategy: deployment clusterPermissions: - rules: - apiGroups: - "" resources: - "" verbs: - "" serviceAccountName: sa deployments: - name: example-operator spec: template: metadata: spec: upgrade: replaces: 0.0.1 skips: - 0.0.2 - 0.0.3 operations: logpath: /var/paas/sys/log/operator/xxx-operator.log
参数名称 |
参数描述 |
参数示例 |
必填 |
---|---|---|---|
install.strategy |
安装方式,目前仅支持deployment方式 |
deployment |
否 |
install.clusterPermissions |
安装时需要的集群级别的权限 |
Kubernetes RABC规范 |
否 |
install.deployments |
安装时的内容 |
Kubernetes Deployment规范 |
是 |
upgrade.replaces |
升级基线版本 |
0.0.1 |
否 |
upgrade.skips |
可以跳过升级的版本列表
说明:
举例说明: 假设已经发布0.0.1, 0.0.2, 0.0.3, 0.0.4, 0.0.5五个版本,其中0.0.2配置replaces: 0.0.1,0.0.5配置replace: 0.0.1及skips: 0.0.2。
|
参见样例 |
否 |
operations |
运维操作配置,以注解方式定义 |
参见样例 |
否 |
operations.logpath |
日志目录 |
参见样例 |
否 |
对于lifecycle文件中配置了upgrade字段的服务包,需要确保该服务operator能够管理的实例版本(由CSD文件中的versionDefinition字段规定)与被升级的operator所能管理的实例版本相兼容,否则会导致上传服务包或升级服务operator失败。具体规则请参见versionDefinition。