检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
开箱即用 OSC联合生态伙伴提供了大量的开箱即用的云原生服务,不仅提供了数据库、消息、缓存等通用中间件,还提供了新技术领域的AI、大数据、高性能计算、边缘等应用,您可以根据业务需要订阅。 全域部署 云原生服务中心联合华为云分布式服务UCS,能够将应用部署到华为云集群、多云集群、本地集群
CRD介绍 CRD(CustomResourceDefinition)是一种自定义的Kubernetes资源,在定义CRD后,可通过在集群内创建对应 CR(CustomResource)对应用进行统一管理。格式示例请参见CRD典型格式。 OpenAPI校验 在定义CRD时,需同时
specDescriptors specDescriptors用于描述自定义资源中规范字段的属性。每个字段应包含以下内容: displayName -字段的用户友好名称。 description -字段表示内容的简单描述信息。 path -对象中字段以点分隔的路径。 restriction(可选):指定控件使用场景。
statusDescriptors statusDescriptor用于描述自定义资源中状态字段的属性,其配置在csd.yaml文件的status字段。statusDescriptors的结构与specDescriptors相似,包括相同的字段。 text x-descriptors:
CRD典型格式 以v1版本为例: apiVersion: apiextensions.k8s.io/v1 # 创建 CRD kind: CustomResourceDefinition metadata: # 名称必须采用复数 <plural-name>.<group>.<domain>
自定义资源CRD 自定义资源CRD是Kubernetes服务遵循,一个自定义资源对应一个目录,遵循Kubernetes CRD规范,详细介绍参考官方CustomResourceDefinition。 父主题: 资源集合Manifests
云服务器节点、负载均衡等云资源。您可以理解为集群是“同一个子网中一个或多个弹性云服务器(又称:节点)”通过相关技术组合而成的计算机群体,为容器运行提供了计算资源池。 命名空间 命名空间是对一组资源和对象的抽象整合。在同一个集群内可创建多个命名空间,不同命名空间中的数据彼此隔离,使
集群安装新版本服务包后,crd不会自动更新 使用场景 用户卸载服务包后,crd资源仍会保留;假如要安装新版本服务包,且新版本的crd资源与旧的crd资源同名,需要用户手动删除旧版本crd资源后重新上传新版本的crd资源。 操作步骤 登录kubernetes集群后台节点,确保节点可以正常执行kubectl命令。
集群中服务Operator CR被误删后,页面删除实例失败时应如何处理? 使用场景 用户在OSC平台上架了一个服务,并且成功发布服务以及通过服务安装了一个服务实例,然后用户在集群控制节点上手动删除了服务Operator CR,后续用户在OSC服务实例页面想要删除服务实例时,发现实例删除报错,报错信息“timeout
控件类型 表单控件类型 1. 使用默认crd.yaml文件自动生成表单 由CRD中定义的openAPIV3Schema字段规定CR中可配置的参数以及这些参数的类型、范围,应用在创建CR的时候通过YAML文件指定这些参数。 2. 使用自定义csd.yaml文件生成表单 自动生成的创
表单控件配置组合示例 csd.yaml文件中配置添加如下配置: # 配置表单控件 descriptors: spec: - displayName: Image description: The docker image name and version of
自定义服务CSD 在不同业务环境下,服务对平台有着不同的诉求,Kubernetes提供自定义资源CRD的轻量化机制。而在实践过程中,发现对于服务能力如服务依赖、服务访问、服务部署、监控日志等公共能力欠缺。 因此围绕CRD自研CSD,通过声明式配置CRD的能力引用,增强服务治理能力。
创建API和Controller 根据以上设计的CR,在项目工程中创建对应的CRD类型: $ kubebuilder create api --group osctest --version v1 --kind Hwfka Create Resource [y/n] y Create
定义API 在设计的CR spec中,包含size、image、storage属性,因此需要修改api/v1/hwfka_types.go中HwfkaSpec和HwfkaStatus部分,为应用定义参数和状态属性。 package v1 import ( corev1 "k8s
创建服务包模板 通过OSC提供的oscctl工具创建服务包模板,oscctl工具使用详情请参见oscctl工具使用。 使用oscctl工具创建服务包模板。 # 使用oscctl工具,创建服务包 $ oscctl create -o ./hwfka-operator-package
基础控件 OSC console依据crd.yaml文件可以自动生成Operator的创建表单。crd.yaml文件中的properties(openAPIV3Schema.properties.spec.properties)对象会自动映射到对应的UI组件。 目前提供的基础类型
如何清理集群中OSC冗余插件数据 使用场景 用户使用OSC平台部署了相关OSC服务后,因为自身原因需要将集群中的OSC等插件信息清理掉,可以参考此章节进行处理。 使用前提 确保集群可以执行kubectl命令,以避免无法执行清理命令。 操作步骤 登录kubernetes集群后台节点
vendor目录 公共能力目录:{OSC-Package}/manifests/vendor,用于存放平台提供的能力配置文件,用于manifests目录中的CRD引用。 公共能力目录结构: {OSC-Package}/ ├─ metadata.yaml ├─ manifests/
生成代码和资源描述文件 修改api/v1/memcached_types.go或controller中的markers之后,需要重新生成代码和资源描述文件。 # 生成 api/v1/zz_generated.deepcopy.go make generate # 生成 config/crd/bases
如何解决系统插件或服务Operator一直处于安装中 使用场景 Operator-Chef在部署服务插件的过程中会访问Kubernetes提供的相关接口,例如:Create、Update等,在执行各个操作接口时,其超时时间为10秒,如果超过10秒可能会因为插件一直不能够正常部署造