检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
安装Controller 安装 kustomize 基于模板生成YAML文件,下载kustomize二进制压缩包:https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v3.8.1/kustomize_v3.8.1
每次修改API定义后,需要执行命令自动重新生成代码和CRD: $ make generate $ make manifests 父主题: 实现Operator
基础控件 OSC console依据crd.yaml文件可以自动生成Operator的创建表单。crd.yaml文件中的properties(openAPIV3Schema.properties.spec.properties)对象会自动映射到对应的UI组件。
在服务包下发时会根据服务包名称等,由OSC自动生成一个在Kubernetes集群该Namespace下面唯一的名字。
操作步骤 在服务发布页面单击“发布商品”链接进入云市场发布商品界面。 发布服务必须使用通过云市场认证的账号登录,如果没有通过云市场认证的账号,请申请账号,具体请参见云市场计划。 在“发布商品”页面商品接入类型选择“容器”,填写商品信息。
使用oscctl create命令会在manifests目录下生成一个vendor文件夹,该文件夹下存放日志、监控的扩展内容,扩展目录结构如下: # 以hwfka-operator-package为示例 hwfka-operator-package ├─ metadata.yaml
如果未在"容器镜像仓库企业版"中创建实例,可以单击"SWR"链接跳转到对应界面进行创建。 单击 “购买企业版实例”进入购买页面,购买仓库实例。 假如初次购买企业版实例未创建“虚拟私有云”和“子网”,则前往“网络”>“虚拟私有云 VPC”提前创建。
images目录下存放服务运行所需的容器镜像,根据服务实际情况确定支持单CPU架构还是多CPU架构: 单CPU架构:一般制作生成的容器镜像,其默认只能在某一种CPU架构的节点上运行,比如X86或ARM。
包含name和url两个字段,例如项目介绍链接 参考样例 否 父主题: 服务包规范
是 operator部署包 {serviceName}-{Version}.zip 服务名+版本号+zip命名 operator部署包,参考Operator framework方式生成。
因为该文件由Kubernetes社区提供的controller-gen及kustomize生成校验,所以可以直接作为标准CRD资源用户集群内CRD部署。
该CR包含三个属性:size、image、storage,下文在定义API时需要为其定义Marker,以便自动生成OpenAPI schema。
hidden 此描述符用于隐藏并自动生成的表单的字段:如果基于CRD自动生成的表单字段有些不需要呈现给用户可以配置hidden隐藏。
Complete(r) } 调度逻辑 对于Kubernetes集群内任何Hwfka或Service、StatefulSet、Deployment的变化,Controller都会监听到,并生成事件,触发Reconcile()方法。
上传到"容器镜像仓库"的服务包,可登录上海一Region容器镜像服务 SWR进行查看,生成的组织名将会以"osc-package-{租户ID}-no-delete"命名。 容器镜像仓库用户可以直接上传使用,云原生服务中心将会在容器镜像仓库新建一个独立的组织用于存储上传的数据包。
新增自定义资源文件helmrelease_crd.yaml,该文件以下划线命名,由工具生成,无需改动。参见HelmRelease CRD示例。 新增自定义服务文件helmrelease_csd.yaml,可按需配置相关服务能力。
在服务包下发时会根据服务包名称等,由OSC自动生成一个在Kubernetes集群该Namespace下面唯一的名字。
生成 myid echo "Generate myid" HOST=$(hostname -s) DOMAIN=$(hostname -d) if [[ $HOST =~ (.*)-([0-9]+)$ ]]; then NAME=${BASH_REMATCH[1]} ORD
string = "Available" Abnormal string = "Abnormal" Deleting string = "Deleting" ) 在controllers下创建controllers/resources.go文件,用来生成所需要的资源