检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
是Kubernetes的扩展软件和API的客户端,通过自定义资源管理应用及其组件,同时也作为自定义资源的控制器。Operator遵循Kubernetes理念,旨在自动化部署运维服务和应用。Operator Framework是一套管理Kubernetes有状态应用的开源标准,在Ope
云原生服务中心和其他云服务的关系如下所示: 图1 云原生服务中心和其他云服务的关系 表1 云原生服务中心和其他云服务的关系 服务名称 交互关系 主要交互功能 容器镜像服务 SWR 云原生服务中心的服务包模板和镜像存储的仓库。 云原生服务中心当前支持SWR普通仓库和企业仓库,普通仓
户在一个页面查看实例相关的基础信息,无需切换到不同的运维平台。 兼容社区服务规范 OSC服务规范兼容Helm和Operator Framework社区服务规范,Helm和Operator framework是Kubernetes生态中最常用的服务管理方式,很多已有的服务都是基于这
Helm服务:支持遵循Helm包格式,以tar工具打包出的tgz或tar.gz的压缩包上传。 OSC服务:支持通过oscctl工具将Operator服务和Helm服务转换成OSC服务。 服务包校验:Helm服务需要通过Helm社区的helm lint校验没有Error类型错误,才能正常在OSC上传。建议使用Helm
云原生服务中心OSC的有两大用户角色:服务提供商和服务使用者。提供商在云市场完成服务发布后,使用者可订阅和使用服务。 图1 商品服务生命周期 图2 私有服务生命周期 服务发布 OSC提供了服务发布能力,支持服务提供商在OSC管理商品的服务包。服务提供商先在OSC上传服务包,格式校验和漏洞扫描都
图解云原生服务中心
间的依赖,控制显示隐藏。 resourceRequirements(资源配置):K8S原生资源规则配置,配置request和limit。 hwDnatElbAccess(公网访问):支持通过弹性公网IP访问实例。 hidden(字段隐藏):支持对基于CRD自动生成控件的字段表单隐藏。
配置表单控件 创建实例应用时,往往涉及大量的参数配置,为方便用户使用,OSC console提供了自动生成表单的能力。 在Kubernetes 1.8中,CRD定义基于OpenAPI v3的验证模式的能力。基于OpenAPI v3能力,可用于自动生成用于创建实例的表单。 控件类型
x86_64或者aarch64之一即可,如果是多CPU架构,则x86_64和aarch64都需配置,osc服务会将两个服务制作成共架构服务包并将最终镜像地址回填到部署文件中。以下分别通过一个Helm服务和Operator服务举例说明,以镜像swr.cn-east-3.myhuaweicloud
打包到package目录 Helm模板或者operator包有两个修改点: 标记服务的来源,即是来源于开源、华为或者生态伙伴; 统一镜像地址,OSC格式包引用lifecycle.yaml及csd.yaml中配置,Helm模板引用values.yaml中的配置,operator引用*
服务实例日常操作 查看实例信息 查看监控信息 查看服务实例日志 升级服务实例 变更实例规格 修改配置参数(可选) 执行实例运维动作(可选)
查看审计日志 云审计服务支持的OSC操作列表 查询审计事件
约束与说明 OSC的服务规范兼容Helm和Operator,提供商无需修改业务代码,只需要打包成满足OSC规范的服务包,就可以发布到OSC上。 想使用OSC提供的高级能力,比如监控、日志等运维能力,在Helm或者Operator服务包中添加配置文件,对接平台运维能力,然后再按照制作流程的指导制作服务包。
服务管理 初次使用私有服务上传功能前,如何关联企业仓库实例? 集群中服务Operator CR被误删后,页面删除实例失败时应如何处理? 商用服务预上架失败,报"缺少必要的服务提供者的联系信息" 服务Operator资源被误删后,删除实例失败时如何清理? 集群安装新版本服务包后,crd不会自动更新
开源服务包规范 OSC服务规范同时支持当前业界使用较为广泛的两种开发服务规范:Helm服务规范和Operator-Framework服务规范。 OSC服务平台支持部署上述两种开源的服务包,但是如需同时使用OSC对外提供的运维和表单控件能力,则需要将部署包转换为符合OSC规范格式的
#【可选】包含chart依赖的其他chart └─ templates #【必选】模板目录,当和values 结合时,可生成有效的Kubernetes manifest文件 └─ xxx.yaml #【可选】Helm包的Kubernetes
开发Operator 开发原理 在本章节以Kafka为例,构建Kafka-Operator进行Kafka实例的管理,同时Kafka实例将以三节点集群的形式对外提供服务。对于Kafka实例/集群而言,需要依托于zookeeper进行构建,zookeeper用作Kafka集群的元数据
构建Operator CRD介绍 创建Operator项目 创建API和Controller 父主题: 开发Operator
制作镜像 制作实例镜像 制作Operator镜像 父主题: 如何从零开始开发Operator
Operator代码示例 CRD典型格式 Controller实现 挂载存储 创建存储 父主题: 附录