检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
开发Operator 开发原理 在本章节以Kafka为例,构建Kafka-Operator进行Kafka实例的管理,同时Kafka实例将以三节点集群的形式对外提供服务。对于Kafka实例/集群而言,需要依托于zookeeper进行构建,zookeeper用作Kafka集群的元数据
构建Operator CRD介绍 创建Operator项目 创建API和Controller 父主题: 开发Operator
制作镜像 制作实例镜像 制作Operator镜像 父主题: 如何从零开始开发Operator
Operator代码示例 CRD典型格式 Controller实现 挂载存储 创建存储 父主题: 附录
附录 如何从零开始开发Operator OSC扩展说明 Operator代码示例 安装Controller
权限配置 单租户下多IAM用户使用企业仓库场景如何配置权限? 单租户下如何使用IAM系统策略对各IAM子用户进行细粒度权限划分
服务插件管理 OSC中有服务管理和运维能力两类插件,服务管理插件用来管理服务实例的生命周期,由服务提供商提供,当集群首次部署对应服务实例时,会自动安装对应服务的管理插件。服务运维能力插件由OSC提供,当部署的服务声明了诸如日志、监控等运维能力配置时,集群中如果没有对应的运维能力插件,OSC会自动安装。
制作流程 制作服务包目录 放置镜像到images目录 打包到package目录 替换镜像地址配置 父主题: 服务包制作
服务包规范 本规范主要面向对象为初次开发的服务以及想要使用OSC平台提供的附加能力进行规范转换的服务。 如果开发者已有或仅想使用Helm/Operator-Framework规范的服务,可以直接参考章节开源服务包规范。 OSC服务包介绍 元数据Metadata 资源集合Manifests
Operator规范 Operator包含三类核心文件: 软件包清单:package.yaml 集群服务版本:csv.yaml 自定义资源:crd.yaml # Opeartor结构 {Operator-Package} ├─ xxx.package.yaml
服务接入 本章节主要介绍如何将一个现有的服务包接入OSC平台,并可以使用OSC附加功能,有效增加自身服务的运维能力。如开发者需要从头开始编写程序制作应用,可以参考附录如何从零开始开发Operator。 OSC平台支持OSC服务规范,开源Helm或Operator-Framewor
实现Operator 定义API 实现Controller 生成代码和资源描述文件 父主题: 开发Operator
制作服务包 创建服务包模板 修改服务包内容 生成服务包 父主题: 如何从零开始开发Operator
对接运维能力(可选) 服务包扩展目录 如何配置监控 对接配置日志 对接实例升级能力 父主题: 服务接入
配置表单控件 创建实例应用时,往往涉及大量的参数配置,为方便用户使用,OSC console提供了自动生成表单的能力。 在Kubernetes 1.8中,CRD定义基于OpenAPI v3的验证模式的能力。基于OpenAPI v3能力,可用于自动生成用于创建实例的表单。 控件类型
表单控件 基础控件 自定义控件 父主题: 配置表单控件
OSC扩展说明 oscctl工具使用 父主题: 附录
服务使用者可针对不需要的服务实例进行销毁。 图2 商品服务生命周期 私有服务生命周期 华为云租户将服务包上传为私有服务。 华为云租户使用私有服务创建服务实例。 华为云租户可对服务实例进行编辑、升级、监控等治理操作。 华为云租户可针对不需要的服务实例进行销毁。 图3 私有服务生命周期 术语 表1
单租户下多IAM用户使用企业仓库场景如何配置权限? 使用场景 用户使用华为云账号上传服务包会按照社区Open Container Initiative规范,以制品包的形式存储在容器镜像服务的用户企业仓库当中。当需要华为云账号下的多个IAM用户使用OSC私有服务时,需要使用华为云账号在控制台统一身份认证处为IAM用
打包到package目录 Helm模板或者operator包有两个修改点: 标记服务的来源,即是来源于开源、华为或者生态伙伴; 统一镜像地址,OSC格式包引用lifecycle.yaml及csd.yaml中配置,Helm模板引用values.yaml中的配置,operator引用*