检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
上述命令将helm包KafkaPackage转换为OSC服务包,--input和--output均可为输入目录或者压缩包,oscctl会根据参数是否存在文件扩展名及扩展名类型自动判断并进行转换。现支持tgz和zip类型的压缩包输入和输出。 oscctl转换工具,可以帮助已经拥有helm或者
kubebuilder二进制文件因操作系统和系统架构导致错误导致的无法使用。同时,通过git操作避免 # 在使用curl过程中需要对开发环境进行证书配置等操作 $ git clone https://github.com/kubernetes-sigs/kubebuilder.git Cloning into
变更实例规格 云原生服务中心OSC的服务来自不同的服务提供商,不同类别的服务实例规格变更方式存在差异,具体请咨询服务提供商,以服务实例的展示界面为准。以Kafka为例,展示如何变更实例规格。 纵向扩容kafka集群 单击服务实例页面右上角的编辑按钮,编辑服务实例的yaml信息。
安装Controller 安装 kustomize 基于模板生成YAML文件,下载kustomize二进制压缩包:https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v3.8.1/kustomize_v3
datadog-operator-0.3.2.zip Successfully converted original package to OSC package! 查看转换后的服务包结构。 datadog-operator-0.3.2 ├── lifecycle.yaml #
书写请参考如下链接或步骤4中内容: https://prometheus.io/docs/concepts/metric_types/ https://prometheus.io/docs/concepts/data_model/ https://prometheus.io/do
Controller实现 修改controllers/hwfka_controller.go文件为如下内容: func (r *HwfkaReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result
制作Operator镜像 修改hwfka-operator/Dockerfile内容如下: FROM centos:latest COPY bin/manager / RUN chmod ug+x /manager WORKDIR / 构建容器镜像命令如下: $ make && make
创建API和Controller 根据以上设计的CR,在项目工程中创建对应的CRD类型: $ kubebuilder create api --group osctest --version v1 --kind Hwfka Create Resource [y/n] y Create
前置说明 上传商用服务的账号须具有ISV权限,具体申请方式请参见如何加入华为云云市场。 使用商用服务发布的账号需要在上海一region下创建一个OBS桶,桶创建要求如下: 表1 OBS桶创建参数说明 参数 值 说明 区域 上海一 只能选上海一,不能选其它区域,OSC虽然是Global服务,但本身部署在上海一。
创建Operator项目 背景 Operator是Kubernetes的扩展软件,通过定制资源管理应用和其他组件,实现一定自动运维能力。可以在不改动Kubernetes源码的情况下,通过一个或多个Operator来扩展集群能力,遵照自身业务需求、场景等灵活开发,节省运维成本。流程
实现Controller Controller实现背景 在创建Kafka实例时,Kafka-Operator需要创建的Kubernetes资源如下: 1个StatefulSet,包含3个Pod分别启动ZooKeeper; 1个Service,用来暴露ZooKeeper访问地址;
Operator规范 Operator包含三类核心文件: 软件包清单:package.yaml 集群服务版本:csv.yaml 自定义资源:crd.yaml # Opeartor结构 {Operator-Package} ├─ xxx.package.yaml
构建Operator CRD介绍 创建Operator项目 创建API和Controller 父主题: 开发Operator
实现Operator 定义API 实现Controller 生成代码和资源描述文件 父主题: 开发Operator
CRD介绍 CRD(CustomResourceDefinition)是一种自定义的Kubernetes资源,在定义CRD后,可通过在集群内创建对应 CR(CustomResource)对应用进行统一管理。格式示例请参见CRD典型格式。 OpenAPI校验 在定义CRD时,需同时
开发Operator 开发原理 在本章节以Kafka为例,构建Kafka-Operator进行Kafka实例的管理,同时Kafka实例将以三节点集群的形式对外提供服务。对于Kafka实例/集群而言,需要依托于zookeeper进行构建,zookeeper用作Kafka集群的元数据
Operator代码示例 CRD典型格式 Controller实现 挂载存储 创建存储 父主题: 附录
运维能力是在OSC服务规范基础上产生的能力,因此如果需要对接运维能力,需要先确保服务包的格式转换为OSC自身的规范才行,默认的开源规范当前只支持安装部署等基本功能。 运维能力扩展 为了保证适用OSC的服务规范,将使用oscctl工具作为创建、转换OSC服务包,并且统一服务包格式。使用oscctl create
#【必选】部署包目录 │ ├─{serviceName}-{Version}.zip #【必选】开源operator部署包或者转换后的osc格式部署包 │ └─{serviceName}-{Version}.tgz #【必选】Helm部署包 └─images/