检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
服务管理 初次使用私有服务上传功能前,如何关联企业仓库实例? 集群中服务Operator CR被误删后,页面删除实例失败时应如何处理? 商用服务预上架失败,报"缺少必要的服务提供者的联系信息" 服务Operator资源被误删后,删除实例失败时如何清理? 集群安装新版本服务包后,crd不会自动更新
CSD本身属于CustomServiceDefinition类型的资源,其符合k8s资源的通用定义方法。其apiVersion和kind是固定的,metadata.name可自行配置: apiVersion: osc.io/v1beta1 kind: CustomServiceDefinition
提交验证 前置条件 用户已经在“我的服务”-“私有服务”中进行部署验证通过。 操作步骤 使用ISV账号登录OSC控制台,单击左侧导航栏“服务发布”。 选择需要提交验证的服务,单击下拉按钮,查看待发布的服务版本,单击右侧操作栏中的“验证”按钮,进入提交验证材料页面。 用户可以从验证
"k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) // HwfkaSpec defines the desired
yaml文件中增加引用监控能力的配置。 apiVersion: osc.io/v1beta1 kind: CustomServiceDefinition metadata: name: helmrelease-csd spec: CRDRef: apiVersion: apiextensions
设施,包括华为云CCE集群、第三方集群等场景。服务提供商在发布服务时需要提供服务包,服务包中包含部署需要的配置文件以及镜像,并按照OSC可识别的路径放置,保证服务发布中用户可以一键部署。 图1 商品服务生命周期
Operator代码示例 CRD典型格式 Controller实现 挂载存储 创建存储 父主题: 附录
配置修改。 提供扩展目录,支持对接运维能力。 OSC支持开发者在扩展目录中添加配置文件对接运维能力。基于该规范开发的服务在部署时,OSC会识别并解析配置文件中的内容,赋予服务对应的功能。 服务接入流程图 父主题: 服务接入
如何解决系统插件或服务Operator一直处于安装中 使用场景 Operator-Chef在部署服务插件的过程中会访问Kubernetes提供的相关接口,例如:Create、Update等,在执行各个操作接口时,其超时时间为10秒,如果超过10秒可能会因为插件一直不能够正常部署造成一直处于安装中的状态。其根本原因是因为网络不稳定导致
制作镜像 制作实例镜像 制作Operator镜像 父主题: 如何从零开始开发Operator
免被转义,可使用引号引起来。 example-operator 是 version 版本。建议使用引号,否则YAML会将类似2.0的版本号识别为浮点数。 1.0.0 是 appVersion 应用版本信息,长度小于64 2.1.2 否 alias 别名 example operator
创建API和Controller 根据以上设计的CR,在项目工程中创建对应的CRD类型: $ kubebuilder create api --group osctest --version v1 --kind Hwfka Create Resource [y/n] y Create
服务实例日常操作 查看实例信息 查看监控信息 查看服务实例日志 升级服务实例 变更实例规格 修改配置参数(可选) 执行实例运维动作(可选)
约束与说明 OSC的服务规范兼容Helm和Operator,提供商无需修改业务代码,只需要打包成满足OSC规范的服务包,就可以发布到OSC上。 想使用OSC提供的高级能力,比如监控、日志等运维能力,在Helm或者Operator服务包中添加配置文件,对接平台运维能力,然后再按照制作流程的指导制作服务包。
构建Operator CRD介绍 创建Operator项目 创建API和Controller 父主题: 开发Operator
开发Operator 开发原理 在本章节以Kafka为例,构建Kafka-Operator进行Kafka实例的管理,同时Kafka实例将以三节点集群的形式对外提供服务。对于Kafka实例/集群而言,需要依托于zookeeper进行构建,zookeeper用作Kafka集群的元数据
生成代码和资源描述文件 修改api/v1/memcached_types.go或controller中的markers之后,需要重新生成代码和资源描述文件。 # 生成 api/v1/zz_generated.deepcopy.go make generate # 生成 config/crd/bases
charts目录 templates目录 {Helm}/ ├─ Chart.yaml #【必选】包含了chart信息文件,包括api版本、名称、描述、图标、类型、注释 ├─ values.yaml #【必选】参数值文档,为templates下的文档配置参数值
查看审计日志 云审计服务支持的OSC操作列表 查询审计事件
开源服务包规范 OSC服务规范同时支持当前业界使用较为广泛的两种开发服务规范:Helm服务规范和Operator-Framework服务规范。 OSC服务平台支持部署上述两种开源的服务包,但是如需同时使用OSC对外提供的运维和表单控件能力,则需要将部署包转换为符合OSC规范格式的