检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
制作服务包目录 新建一个文件夹,可任意命名,以etcd服务为例,暂定命名为etcd,在etcd文件夹下创建两个子目录,分别命名为package,images。 etcd | --- package | --- images 父主题: 制作流程
服务包扩展目录 运维能力是在OSC服务规范基础上产生的能力,因此如果需要对接运维能力,需要先确保服务包的格式转换为OSC自身的规范才行,默认的开源规范当前只支持安装部署等基本功能。
镜像文件命名规范只允许包含大小写字母、数字、下划线、中划线及点,且不能以下划线、中划线及点结尾。
命名规范: serviceName:服务名称。目前服务名称仅接受英文大小写字母、数字及中划线(-)的组合。在服务发布中,创建服务名称其输入长度最大为64个字符。 version:服务的版本号。服务版本号请遵循SemVer规范进行书写,但不支持SemVer中带有+的版本号。
Helm服务接入OSC平台 前置条件 阅读本章节前,用户需要拥有一个符合Helm规范的服务包,Helm服务规范可以参考Helm规范,下面以helm开源服务grafana为例进行详细说明。
准备好待上传的zip或tgz格式的helm/operator-framework/osc规范压缩包以及部署时需要运行的镜像。 服务部署流程 选择对应的仓库存储源,将服务包和镜像包分别上传到OSC以及SWR仓库中,进行部署即可。
开发者可以遵从OSC自身的服务规范,或者直接使用开源Helm、Operator-Framework规范进行开发部署使用。 图1 OSC服务规范场景下开发整体流程图 图2 开源服务规范下开发流程图
specDescriptors specDescriptors用于描述自定义资源中规范字段的属性。每个字段应包含以下内容: displayName -字段的用户友好名称。 description -字段表示内容的简单描述信息。 path -对象中字段以点分隔的路径。
模板仓库:用于存储服务包中的operator、helm chart或者osc规范包的模板文件。 镜像仓库:用于存储服务包中的容器镜像。如果用户没有对应的仓库组织,可单击“新建组织”跳转到对应页面进行创建。可参考创建组织。 单击“确定”按钮,创建服务完成。 父主题: 服务发布
# helm文件镜像替换描述 - image: xxxxx # 定义推送到仓库后的镜像名称,名称必须符合docker镜像命名规范
命名空间 实例所在的容器集群的命名空间。 创建时间 实例的创建时间。 描述 服务实例部署时填写的信息,一般用来说明该实例用于什么场景。 其他信息 为各个服务自定义的展示内容,以Redis为例,展示的元素包含实例信息、访问地址、配置修改等信息,并提供了公网访问和集群扩容能力。
使用场景 用户使用华为云账号上传服务包会按照社区Open Container Initiative规范,以制品包的形式存储在容器镜像服务的用户企业仓库当中。
OSC平台支持OSC服务规范,开源Helm或Operator-Framework的规范服务,开发者可参考开源服务包规范确保服务包符合helm或者operator-framework规范,或参考制作服务包,生成符合OSC规范的服务包。
兼容社区服务规范 OSC服务规范兼容Helm和Operator Framework社区服务规范,Helm和Operator framework是Kubernetes生态中最常用的服务管理方式,很多已有的服务都是基于这两种方式开发,为了方便这些已有服务快速发布或者快速迁移到OSC,使用
基于该规范开发的服务在部署时,OSC会识别并解析配置文件中的内容,赋予服务对应的功能。 服务接入流程图 父主题: 服务接入
约束与说明 OSC的服务规范兼容Helm和Operator,提供商无需修改业务代码,只需要打包成满足OSC规范的服务包,就可以发布到OSC上。
命名空间 命名空间是对一组资源和对象的抽象整合。在同一个集群内可创建多个命名空间,不同命名空间中的数据彼此隔离,使得它们既可以共享同一个集群的服务,也能够互不干扰。 Helm Helm是用于Kubernetes应用的包管理工具,详情可参考Helm指导。
公测 兼容社区服务规范
这就是“(x-descriptors)规范描述符”的作用。 父主题: 配置表单控件
用户已经阅读并了解OSC服务开发者指南和OSC服务使用者指南,已确认过需要发布的服务包符合OSC支持的规范并在具体环境验证通过后,再进行相关操作处理。 父主题: 服务发布