检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
OSC服务包介绍 目录结构 {OSC-Package}/ ├─ metadata.yaml #【必选】元数据文件 ├─ manifests/ #【必选】资源集合 ├─ raw/ #【可选】第三方目录 └─ lifecycle.yaml
开发Operator 开发原理 在本章节以Kafka为例,构建Kafka-Operator进行Kafka实例的管理,同时Kafka实例将以三节点集群的形式对外提供服务。对于Kafka实例/集群而言,需要依托于zookeeper进行构建,zookeeper用作Kafka集群的元数据管理
Controller实现 修改controllers/hwfka_controller.go文件为如下内容: func (r *HwfkaReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result
升级服务实例 服务实例部署时会在容器集群内部创建一个服务插件,由服务插件来管理服务实例,服务插件可以管理多个版本的实例。 如果存在新的服务实例版本,则可以在实例详情界面,单击“升级”按钮,选择所需要升级到的版本。如果升级失败则可以单击“回退”按钮,回退到升级前的版本。 注意事项 升级前请确保环境中所有主机处于正常运行状态
制作服务包目录 新建一个文件夹,可任意命名,以etcd服务为例,暂定命名为etcd,在etcd文件夹下创建两个子目录,分别命名为package,images。 etcd | --- package | --- images 父主题: 制作流程
替换镜像地址配置 OSC需替换values.yaml或者*.clusterserviceversion.yaml中的镜像地址,mapping.yaml文件确定OSC在values.yaml或者*.clusterserviceversion.yaml中哪些字段用于配置镜像地址。mapping.yaml
vendor目录 公共能力目录:{OSC-Package}/manifests/vendor,用于存放平台提供的能力配置文件,用于manifests目录中的CRD引用。 公共能力目录结构: {OSC-Package}/ ├─ metadata.yaml ├─ manifests/
生命周期Lifecycle 生命周期文件:{OSC-Package}/lifecycle.yaml,描述当前OSC服务包的安装,升级方式信息。 lifecycle.yaml文件样例 ## 描述该OSC服务包的声明周期相关信息 install: strategy: deployment
使用场景 在云原生服务中心控制台,OSC支持用户使用容器镜像仓库以及容器镜像仓库企业版,普通的镜像仓库可以免费体验但配额有一定限制,超过限制后将无法再上传,此时用户可以删除旧的服务包或者绑定容器镜像仓库企业版,企业版仓库对上传的服务包没有限定数量。
资源集合 {OSC-Package}/manifests,用于存放自定义资源文件以及公共能力配置,不同资源用目录进行划分。 资源集合结构: {OSC-Package}/ ├─ metadata.yaml ├─ manifests/ #【必选】资源集合
服务包扩展目录 运维能力是在OSC服务规范基础上产生的能力,因此如果需要对接运维能力,需要先确保服务包的格式转换为OSC自身的规范才行,默认的开源规范当前只支持安装部署等基本功能。 运维能力扩展 为了保证适用OSC的服务规范,将使用oscctl工具作为创建、转换OSC服务包,并且统一服务包格式
接入规范说明 开源helm服务支持自定义配置服务场景、支持架构等配置,其描述说明定义在Chart.yaml中,具体样例如下: apiVersion: v1 description: "nginx \n" maintainers: - email: support@rancher.com
使用场景 用户在上传私有服务时,云原生服务中心将会在容器镜像仓库新建一个独立的组织用于存储上传的数据包。因此用户使用此仓库时需要确保容器镜像仓库允许创建至少一个组织,以避免上传服务包失败。 操作步骤 登录容器镜像服务SWR控制台,在左侧导航栏单击“组织管理”。
镜像拉取配置说明 此配置主要针对用户发布的服务包中带有镜像,需要授权给对应的购买用户者下载使用时需要增加的步骤。 用户需要在用户部署的deployment.yaml、statefulset.yaml等包含镜像下载的文件中增加如下配置。 apiVersion: apps/v1 kind
对接实例升级能力 修改csd.yaml,声明实例版本定义信息。新增配置如下: # 支持升级的镜像版本 versionDefinition: mode: url path: spec.image tags: - 0.0.1 - 0.0.2
定义API 在设计的CR spec中,包含size、image、storage属性,因此需要修改api/v1/hwfka_types.go中HwfkaSpec和HwfkaStatus部分,为应用定义参数和状态属性。 package v1 import ( corev1 "k8s.io
服务包镜像名称约束 镜像目录存放部署目录中需要使用到的镜像文件,镜像文件以tar格式存储。镜像文件命名规范只允许包含大小写字母、数字、下划线、中划线及点,且不能以下划线、中划线及点结尾。 images目录下存放服务运行所需的容器镜像,根据服务实际情况确定支持单CPU架构还是多CPU
接入规范说明 开源OLM服务(operator-framework)服务支持自定义配置服务场景、支持架构等配置,其描述说明定义在clusterserviceversion.yaml中,具体样例如下: apiVersion: operators.coreos.com/v1alpha1
自定义控件 基于CRD自动生成表单的基础能力控件已经能很好的呈现表单输入,但是为了对用户更友好,更好的表达字段的含义以及隐藏一些非面向用户的字段,因此引入了x-descriptors描述符来定义自定义的控件。 x-descriptors描述符主要用于specDescriptors和
基础控件 OSC console依据crd.yaml文件可以自动生成Operator的创建表单。crd.yaml文件中的properties(openAPIV3Schema.properties.spec.properties)对象会自动映射到对应的UI组件。 目前提供的基础类型控件分别有