检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
生成服务包 最终的服务目录结构如下: $ tree hwfka-operator-package hwfka-operator-package ├── lifecycle.yaml ├── manifests │ ├─ hwfka_crd.yaml │ └─ hwfka_csd
生成代码和资源描述文件 修改api/v1/memcached_types.go或controller中的markers之后,需要重新生成代码和资源描述文件。 # 生成 api/v1/zz_generated.deepcopy.go make generate # 生成 config/crd/bases
yaml文件自动生成表单 由CRD中定义的openAPIV3Schema字段规定CR中可配置的参数以及这些参数的类型、范围,应用在创建CR的时候通过YAML文件指定这些参数。 2. 使用自定义csd.yaml文件生成表单 自动生成的创建表单已经很强大,但有时可能需要修改自定义表单的呈现方式
安装Controller 安装 kustomize 基于模板生成YAML文件,下载kustomize二进制压缩包:https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v3.8.1/kustomize_v3
oscctl工具使用 oscctl是一款用于生成华为云OSC服务包脚手架或者将开源Helm或Operator服务包转换为OSC服务包的命令行工具。 工具安装 下载链接:https://oscctl.obs.cn-east-3.myhuaweicloud.com/oscctl-22
使用Kubebuilder,可通过在API结构的属性上定义Markers,自动生成CRD中的spec.validation.openAPIV3Schema,即基于OpenAPI的校验规则,以便校验用户创建的CR中字段值的合法性。如上述设置size属性的最小值和最大值: // +kubebu
console依据crd.yaml文件可以自动生成Operator的创建表单。crd.yaml文件中的properties(openAPIV3Schema.properties.spec.properties)对象会自动映射到对应的UI组件。 目前提供的基础类型控件分别有string、nu
商用服务预上架失败,报"缺少必要的服务提供者的联系信息" 使用场景 合作伙伴使用账号进行商品发布,在触发安全扫描功能后,等待一段时间报"初始化失败"错误,鼠标放置上面展示详细错误信息,信息报"缺少必要的服务提供者的联系信息"。 报此错误主要是由于ISV用户上传的商用服务包中缺少相关的服务提供者联系
服务包扩展目录 运维能力是在OSC服务规范基础上产生的能力,因此如果需要对接运维能力,需要先确保服务包的格式转换为OSC自身的规范才行,默认的开源规范当前只支持安装部署等基本功能。 运维能力扩展 为了保证适用OSC的服务规范,将使用oscctl工具作为创建、转换OSC服务包,并且统一服务包格式。使用oscctl
镜像目录存放部署目录中需要使用到的镜像文件,镜像文件以tar格式存储。镜像文件命名规范只允许包含大小写字母、数字、下划线、中划线及点,且不能以下划线、中划线及点结尾。 images目录下存放服务运行所需的容器镜像,根据服务实际情况确定支持单CPU架构还是多CPU架构: 单CPU架构:一般制作生成的容器镜像
修改服务包内容 修改lifecycle.yaml文件。该文件包括OSC服务包的生命周期的相关信息,例如:安装方式、安装时需要的集群/命名空间级别权限、日志目录等。 install: clusterPermissions: # 集群级别权限,请按照Kubernetes RABC相关规范填写
/usr/local/bin/ 安装方法二:避免因证书导致无法通过curl进行下载。 # 通过git clone及本地编译的方法安装kubebuilder可以避免因操作系统类型、系统架构输入错误导致 # kubebuilder二进制文件因操作系统和系统架构导致错误导致的无法使用。同时,通过git操作避免
创建实例应用时,往往涉及大量的参数配置,为方便用户使用,OSC console提供了自动生成表单的能力。 在Kubernetes 1.8中,CRD定义基于OpenAPI v3的验证模式的能力。基于OpenAPI v3能力,可用于自动生成用于创建实例的表单。 控件类型 表单控件 表单控件配置组合示例
自定义控件 基于CRD自动生成表单的基础能力控件已经能很好的呈现表单输入,但是为了对用户更友好,更好的表达字段的含义以及隐藏一些非面向用户的字段,因此引入了x-descriptors描述符来定义自定义的控件。 x-descriptors描述符主要用于specDescriptors
制作实例镜像 下载依赖包 下载JRE:https://download.java.net/openjdk/jdk11/ri/openjdk-11+28_linux-x64_bin.tar.gz。 下载Apache Kafka二进制包:https://archive.apache.org/dist/kafka/2
对接原理 开源的Prometheus是目前业界广泛应用的监控指标采集系统,其服务端可作为时间序列数据库,采集客户端应用不同时间周期上报的监控指标数据并存储,还可用来查询数据和图形化展示数据趋势。其针对不同的应用,提供了多种客户端exporter实现,用来上报监控指标,如:https://github
serviceName:服务名称。目前服务名称仅接受英文大小写字母、数字及中划线(-)的组合。在服务发布中,创建服务名称其输入长度最大为64个字符。 version:服务的版本号。服务版本号请遵循SemVer规范进行书写,但不支持SemVer中带有+的版本号。 服务包各个文件命名以及约束 名称 格式 建议参数说明
)是一种自定义的Kubernetes资源,在定义CRD后,可通过在集群内创建对应 CR(CustomResource)对应用进行统一管理。格式示例请参见CRD典型格式。 OpenAPI校验 在定义CRD时,需同时定义基于OpenAPI的校验规则,其中包含创建CR时的字段及取值范围
C平台,并可以使用OSC附加功能,有效增加自身服务的运维能力。如开发者需要从头开始编写程序制作应用,可以参考附录如何从零开始开发Operator。 OSC平台支持OSC服务规范,开源Helm或Operator-Framework的规范服务,开发者可参考开源服务包规范确保服务包符合
当和values 结合时,可生成有效的Kubernetes manifest文件 └─ xxx.yaml #【可选】Helm包的Kubernetes manifest若干文件 更多介绍参见官网Helm。 上传至OSC的helm包中,Chart.yaml文件的icon字段不