该命令主要执行以下动作: 在PROJECT文件中增加API资源声明。
package v1 import ( corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) /
install: clusterPermissions: # 集群级别权限,请按照Kubernetes RABC相关规范填写 - rules: - apiGroups: - "*" # * 表示所有 resources:
OSC扩展说明 oscctl工具使用 父主题: 附录
在Kubernetes 1.8中,CRD定义基于OpenAPI v3的验证模式的能力。基于OpenAPI v3能力,可用于自动生成用于创建实例的表单。 控件类型 表单控件 表单控件配置组合示例 父主题: 服务接入
服务插件管理 OSC中有服务管理和运维能力两类插件,服务管理插件用来管理服务实例的生命周期,由服务提供商提供,当集群首次部署对应服务实例时,会自动安装对应服务的管理插件。服务运维能力插件由OSC提供,当部署的服务声明了诸如日志、监控等运维能力配置时,集群中如果没有对应的运维能力插件
表单控件 基础控件 自定义控件 父主题: 配置表单控件
Operator规范 Operator包含三类核心文件: 软件包清单:package.yaml 集群服务版本:csv.yaml 自定义资源:crd.yaml # Opeartor结构 {Operator-Package} ├─ xxx.package.yaml
配置Descriptor控件时,需要确保在csd.yaml中增加的path字段路径,以v1版本为例,需要和crd中的对应的openAPIV3Schema.properties.spec.properties内的path路径一致,否则会出现控件不生效的情况。
# 生成 api/v1/zz_generated.deepcopy.go make generate # 生成 config/crd/bases 和 config/rbac/role.yaml make manifests 该步骤将根据API定义自动生成CRD和RBAC。
服务接入 本章节主要介绍如何将一个现有的服务包接入OSC平台,并可以使用OSC附加功能,有效增加自身服务的运维能力。如开发者需要从头开始编写程序制作应用,可以参考附录如何从零开始开发Operator。 OSC平台支持OSC服务规范,开源Helm或Operator-Framework
制作流程 制作服务包目录 放置镜像到images目录 打包到package目录 替换镜像地址配置 父主题: 服务包制作
实现Operator 定义API 实现Controller 生成代码和资源描述文件 父主题: 开发Operator
制作服务包 创建服务包模板 修改服务包内容 生成服务包 父主题: 如何从零开始开发Operator
对接运维能力(可选) 服务包扩展目录 如何配置监控 对接配置日志 对接实例升级能力 父主题: 服务接入
服务包规范 本规范主要面向对象为初次开发的服务以及想要使用OSC平台提供的附加能力进行规范转换的服务。 如果开发者已有或仅想使用Helm/Operator-Framework规范的服务,可以直接参考章节开源服务包规范。 OSC服务包介绍 元数据Metadata 资源集合Manifests
开源服务包规范 OSC服务规范同时支持当前业界使用较为广泛的两种开发服务规范:Helm服务规范和Operator-Framework服务规范。 OSC服务平台支持部署上述两种开源的服务包,但是如需同时使用OSC对外提供的运维和表单控件能力,则需要将部署包转换为符合OSC规范格式的服务包
lifecycle.yaml文件样例 ## 描述该OSC服务包的声明周期相关信息 install: strategy: deployment clusterPermissions: - rules: - apiGroups: -
chart包含: Chart.yaml values.yaml values.schema.json charts目录 templates目录 {Helm}/ ├─ Chart.yaml #【必选】包含了chart信息文件,包括api版本、名称、描述、图标、类型、
权限配置 单租户下多IAM用户使用企业仓库场景如何配置权限? 单租户下如何使用IAM系统策略对各IAM子用户进行细粒度权限划分
您即将访问非华为云网站,请注意账号财产安全