检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
制作Operator镜像 修改hwfka-operator/Dockerfile内容如下: FROM centos:latest COPY bin/manager / RUN chmod ug+x /manager WORKDIR / 构建容器镜像命令如下: $ make && make
修改配置参数(可选) 部分服务支持实例配置参数动态修改功能,在服务实例详情界面会出现一个“配置修改”页签,单击该页签可以查看当前实例的配置并进行修改。 不同服务的支持情况请查看服务详情,或咨询服务提供商。 父主题: 服务实例日常操作
查看服务实例日志 服务提供商可以根据自身业务情况,配置所需要采集的业务日志,以便进行问题定位定界。如服务对接了日志采集功能,则在云原生服务中心实例详情界面会展示“日志”页签。用户单击“日志”页签可以查看日志内容。 查看服务实例日志功能仅支持CCE集群。 父主题: 服务实例日常操作
执行实例运维动作(可选) 服务在运行过程中,一般会对关键数据进行备份操作,在服务异常后可通过备份数据进行恢复,在云原生服务中心中称之为运维动作。服务如定义了独立的运维动作,则会在实例详情界面展示出一个“Action”页签,单击可展示服务实例当前可执行的运维操作。以Redis为例,
对接实例升级能力 修改csd.yaml,声明实例版本定义信息。新增配置如下: # 支持升级的镜像版本 versionDefinition: mode: url path: spec.image tags: - 0.0.1 - 0.0.2
生成服务包 最终的服务目录结构如下: $ tree hwfka-operator-package hwfka-operator-package ├── lifecycle.yaml ├── manifests │ ├─ hwfka_crd.yaml │ └─ hwfka_csd
对接配置日志 使用前提 对接日志系统,需要在csd.yaml文件中配置能力插件依赖功能声明,具体参考服务包扩展目录 capabilitiesrequirements示例。 对接原理 OSC内置了ops-operator插件,通过webhook的方式拦截标签匹配的工作负载(包括De
CRD典型格式 以v1版本为例: apiVersion: apiextensions.k8s.io/v1 # 创建 CRD kind: CustomResourceDefinition metadata: # 名称必须采用复数 <plural-name>.<group>.<domain>
如何从零开始开发Operator 开发Operator 制作镜像 制作服务包 父主题: 附录
Operator规范 Operator包含三类核心文件: 软件包清单:package.yaml 集群服务版本:csv.yaml 自定义资源:crd.yaml # Opeartor结构 {Operator-Package} ├─ xxx.package.yaml
实现Operator 定义API 实现Controller 生成代码和资源描述文件 父主题: 开发Operator
控件类型 表单控件类型 1. 使用默认crd.yaml文件自动生成表单 由CRD中定义的openAPIV3Schema字段规定CR中可配置的参数以及这些参数的类型、范围,应用在创建CR的时候通过YAML文件指定这些参数。 2. 使用自定义csd.yaml文件生成表单 自动生成的创
挂载存储 在Kubernetes中,通过PersistentVolume(PV)方式挂载存储,典型的步骤如下: 创建PV,为集群提供存储服务。 apiVersion: v1 kind: PersistentVolume metadata: name: mypv1 annotations:
开发Operator 开发原理 在本章节以Kafka为例,构建Kafka-Operator进行Kafka实例的管理,同时Kafka实例将以三节点集群的形式对外提供服务。对于Kafka实例/集群而言,需要依托于zookeeper进行构建,zookeeper用作Kafka集群的元数据
基础控件 OSC console依据crd.yaml文件可以自动生成Operator的创建表单。crd.yaml文件中的properties(openAPIV3Schema.properties.spec.properties)对象会自动映射到对应的UI组件。 目前提供的基础类型
变更实例规格 云原生服务中心OSC的服务来自不同的服务提供商,不同类别的服务实例规格变更方式存在差异,具体请咨询服务提供商,以服务实例的展示界面为准。以Kafka为例,展示如何变更实例规格。 纵向扩容kafka集群 单击服务实例页面右上角的编辑按钮,编辑服务实例的yaml信息。
OSC服务包介绍 目录结构 {OSC-Package}/ ├─ metadata.yaml #【必选】元数据文件 ├─ manifests/ #【必选】资源集合 ├─ raw/ #【可选】第三方目录 └─ lifecycle
资源集合Manifests 资源集合 自定义资源CRD 自定义服务CSD vendor目录 父主题: 服务包规范
Controller实现 修改controllers/hwfka_controller.go文件为如下内容: func (r *HwfkaReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result
生命周期Lifecycle 生命周期文件:{OSC-Package}/lifecycle.yaml,描述当前OSC服务包的安装,升级方式信息。 lifecycle.yaml文件样例 ## 描述该OSC服务包的声明周期相关信息 install: strategy: deployment