检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
约束与说明 OSC的服务规范兼容Helm和Operator,提供商无需修改业务代码,只需要打包成满足OSC规范的服务包,就可以发布到OSC上。 想使用OSC提供的高级能力,比如监控、日志等运维能力,在Helm或者Operator服务包中添加配置文件,对接平台运维能力,然后再按照制作流程的指导制作服务包。
开源服务包规范 OSC服务规范同时支持当前业界使用较为广泛的两种开发服务规范:Helm服务规范和Operator-Framework服务规范。 OSC服务平台支持部署上述两种开源的服务包,但是如需同时使用OSC对外提供的运维和表单控件能力,则需要将部署包转换为符合OSC规范格式的
Helm规范 Helm的包格式被称为chart,描述Kubernetes相关资源的文件集合。chart包含: Chart.yaml values.yaml values.schema.json charts目录 templates目录 {Helm}/ ├─ Chart.yaml
构建Operator CRD介绍 创建Operator项目 创建API和Controller 父主题: 开发Operator
Operator代码示例 CRD典型格式 Controller实现 挂载存储 创建存储 父主题: 附录
服务插件管理 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
实现Operator 定义API 实现Controller 生成代码和资源描述文件 父主题: 开发Operator
配置表单控件 创建实例应用时,往往涉及大量的参数配置,为方便用户使用,OSC console提供了自动生成表单的能力。 在Kubernetes 1.8中,CRD定义基于OpenAPI v3的验证模式的能力。基于OpenAPI v3能力,可用于自动生成用于创建实例的表单。 控件类型
表单控件 基础控件 自定义控件 父主题: 配置表单控件
OSC扩展说明 oscctl工具使用 父主题: 附录
服务发布 前置说明 创建服务 新增版本 提交验证 注册资产 发布服务 上架服务新版本
图解云原生服务中心
OSC服务规范 OSC服务规范介绍 服务包规范 开源服务包规范
资源集合Manifests 资源集合 自定义资源CRD 自定义服务CSD vendor目录 父主题: 服务包规范
自定义控件 基于CRD自动生成表单的基础能力控件已经能很好的呈现表单输入,但是为了对用户更友好,更好的表达字段的含义以及隐藏一些非面向用户的字段,因此引入了x-descriptors描述符来定义自定义的控件。 x-descriptors描述符主要用于specDescriptors
#【可选】公共能力目录 │ ├─ monitor_config.yaml #【可选】监控对接的默认配置,参见如何配置监控 │ ├─ log_config.yaml #【可选】日志对接的默认配置,参见对接配置日志 │ └─ xxx_config
前置说明 上传商用服务的账号须具有ISV权限,具体申请方式请参见如何加入华为云云市场。 使用商用服务发布的账号需要在上海一region下创建一个OBS桶,桶创建要求如下: 表1 OBS桶创建参数说明 参数 值 说明 区域 上海一 只能选上海一,不能选其它区域,OSC虽然是Global服务,但本身部署在上海一。