检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
└─ vendor └── metadata.yaml 打包服务包命令如下: $ tar -zcvf hwfka-operator-package.tgz hwfka-operator-package 父主题: 制作服务包
服务包扩展目录 运维能力是在OSC服务规范基础上产生的能力,因此如果需要对接运维能力,需要先确保服务包的格式转换为OSC自身的规范才行,默认的开源规范当前只支持安装部署等基本功能。 运维能力扩展 为了保证适用OSC的服务规范,将使用oscctl工具作为创建、转换OSC服务包,并且统一服务包格式。使用oscctl
--output "./NewOSCPackage" 此命令将在工作目录下创建文件夹NewOSCPackage,其中包含OSC服务包必要的文件。 服务包转换 在oscctl命令后添加子命令convert用以将开源helm或operator服务包,使用--help可查看其支持的flag选项。
制作服务包目录 新建一个文件夹,可任意命名,以etcd服务为例,暂定命名为etcd,在etcd文件夹下创建两个子目录,分别命名为package,images。 etcd | --- package | --- images 父主题: 制作流程
创建服务包模板 通过OSC提供的oscctl工具创建服务包模板,oscctl工具使用详情请参见oscctl工具使用。 使用oscctl工具创建服务包模板。 # 使用oscctl工具,创建服务包 $ oscctl create -o ./hwfka-operator-package
集群安装新版本服务包后,crd不会自动更新 使用场景 用户卸载服务包后,crd资源仍会保留;假如要安装新版本服务包,且新版本的crd资源与旧的crd资源同名,需要用户手动删除旧版本crd资源后重新上传新版本的crd资源。 操作步骤 登录kubernetes集群后台节点,确保节点可以正常执行kubectl命令。
er中带有+的版本号。 服务包各个文件命名以及约束 名称 格式 建议参数说明 用途 必选 服务包 {ServiceName}-{Version}.zip 建议服务名+版本号+zip命名 用于发布到OSC市场的最终交付包,zip格式压缩包。 是 服务包目录 {ServiceName}
name}-{version}.zip,例如redis-operator-1.0.0.zip。 包格式:operator类型服务包支持zip格式,helm类型服务包支持tgz格式。 包大小:不超过4MB。 样例(以Kafka为示例): {OSC-Package}/ ├─ metadata
服务包制作 以etcd operator 0.9.4版本和etcd helm 6.7.0版本为例,介绍如何制作服务包。 前置检查 约束与说明 制作流程
服务包规范 本规范主要面向对象为初次开发的服务以及想要使用OSC平台提供的附加能力进行规范转换的服务。 如果开发者已有或仅想使用Helm/Operator-Framework规范的服务,可以直接参考章节开源服务包规范。 OSC服务包介绍 元数据Metadata 资源集合Manifests
制作服务包 创建服务包模板 修改服务包内容 生成服务包 父主题: 如何从零开始开发Operator
服务包镜像名称约束 镜像目录存放部署目录中需要使用到的镜像文件,镜像文件以tar格式存储。镜像文件命名规范只允许包含大小写字母、数字、下划线、中划线及点,且不能以下划线、中划线及点结尾。 images目录下存放服务运行所需的容器镜像,根据服务实际情况确定支持单CPU架构还是多CPU架构:
修改服务包内容 修改lifecycle.yaml文件。该文件包括OSC服务包的生命周期的相关信息,例如:安装方式、安装时需要的集群/命名空间级别权限、日志目录等。 install: clusterPermissions: # 集群级别权限,请按照Kubernetes RABC相关规范填写
开源服务包规范 OSC服务规范同时支持当前业界使用较为广泛的两种开发服务规范:Helm服务规范和Operator-Framework服务规范。 OSC服务平台支持部署上述两种开源的服务包,但是如需同时使用OSC对外提供的运维和表单控件能力,则需要将部署包转换为符合OSC规范格式的
服务商用发布版本上架到OSC云原生市场后,会读取服务包的部分描述信息并展示在服务包详情中,因此需要用户在服务包中填写必要的信息,从而保证详情页面展示正常。 根据服务包格式类型,需补充说明内容如下: Helm Chart服务包 Chart服务包其主体描述信息存储在Chart.yaml文件中,其中Chart
确保集群可以执行kubectl命令,以避免无法执行清理命令。 操作步骤 登录kubernetes集群后台节点,确保节点可以正常执行kubectl命令。 执行如下命令,查询OSC插件部署helm资源。 kubectl get secret -nosc-oc 执行如下命令,删除OSC服务插件secret资源。
阅读本章节前,用户需要拥有一个符合Helm规范的服务包,Helm服务规范可以参考Helm规范,下面以helm开源服务grafana为例进行详细说明。 接入流程 用户参考附录oscctl工具使用中的链接下载oscctl工具oscctl-22.8.18.tar.gz,并放在linux执行机中。 执行下面命令解压服务。 #
只需要打包成满足OSC规范的服务包,就可以发布到OSC上。 想使用OSC提供的高级能力,比如监控、日志等运维能力,在Helm或者Operator服务包中添加配置文件,对接平台运维能力,然后再按照制作流程的指导制作服务包。 服务包目录结构约束 服务包镜像名称约束 服务内容说明 镜像拉取配置说明
README 使用说明文件:{OSC-Package}/README.md,描述该服务包的功能介绍、使用说明等信息。按照下面一级目录编写。 <!--Markdown格式,按照以下目录结构--> # 介绍 # 功能 # 版本列表 # 服务架构 # 快速上手 <!-- 可提供链接
确保operator包中的镜像配置都引用*.clusterserviceversion.yaml中的配置,如果不满足,请参见排查和编辑镜像地址排查和整改。 如果服务需要支持多CPU架构部署场景,请确保提供的不同架构镜像都能够使用同一部署包资源描述文件进行部署。 父主题: 服务包制作