检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
与其它云服务的关系 云原生服务中心需要与其他云服务协同工作,云原生服务中心和其他云服务的关系如下所示: 图1 云原生服务中心和其他云服务的关系 表1 云原生服务中心和其他云服务的关系 服务名称 交互关系 主要交互功能 容器镜像服务 SWR 云原生服务中心的服务包模板和镜像存储的仓库
功能介绍 云原生服务中心OSC的有两大用户角色:服务提供商和服务使用者。提供商在云市场完成服务发布后,使用者可订阅和使用服务。 图1 商品服务生命周期 图2 私有服务生命周期 服务发布 OSC提供了服务发布能力,支持服务提供商在OSC管理商品的服务包。
用户已经阅读并了解OSC服务开发者指南和OSC服务使用者指南,已确认过需要发布的服务包符合OSC支持的规范并在具体环境验证通过后,再进行相关操作处理。 父主题: 服务发布
想使用OSC提供的高级能力,比如监控、日志等运维能力,在Helm或者Operator服务包中添加配置文件,对接平台运维能力,然后再按照制作流程的指导制作服务包。 服务包目录结构约束 服务包镜像名称约束 服务内容说明 镜像拉取配置说明 父主题: 服务包制作
Operator代码示例 CRD典型格式 Controller实现 挂载存储 创建存储 父主题: 附录
使用场景 用户在OSC平台上架了一个服务,并且成功发布服务以及通过服务安装了一个服务实例,然后用户在集群控制节点上手动删除了服务Operator CR,后续用户在OSC服务实例页面想要删除服务实例时,发现实例删除报错,报错信息“timeout to handle resource
statusDescriptors statusDescriptor用于描述自定义资源中状态字段的属性,其配置在csd.yaml文件的status字段。statusDescriptors的结构与specDescriptors相似,包括相同的字段。 text x-descriptors
查看监控信息 云原生服务中心OSC内置了Prometheus监控能力,服务提供商可以按照自身业务情况,配置所需要展示的服务指标,指标详情查看服务介绍或咨询服务提供商。 以Kafka为例,监控指标分为实例、Broker、Topic三个维度进行展示。
=""}' metrics: - title: "生产消息数量(条)" # 每个 topic 的生产消息数量 localeID: "ops.monitor.redis.memory.usage
制作镜像 制作实例镜像 制作Operator镜像 父主题: 如何从零开始开发Operator
执行实例运维动作(可选) 服务在运行过程中,一般会对关键数据进行备份操作,在服务异常后可通过备份数据进行恢复,在云原生服务中心中称之为运维动作。服务如定义了独立的运维动作,则会在实例详情界面展示出一个“Action”页签,单击可展示服务实例当前可执行的运维操作。
镜像拉取配置说明 此配置主要针对用户发布的服务包中带有镜像,需要授权给对应的购买用户者下载使用时需要增加的步骤。 用户需要在用户部署的deployment.yaml、statefulset.yaml等包含镜像下载的文件中增加如下配置。
对于Kafka实例/集群而言,需要依托于zookeeper进行构建,zookeeper用作Kafka集群的元数据管理,每个Kafka实例在各节点上会有一个zookeeper实例与其对应,存储broker内的消息、topic等数据。
基础控件 OSC console依据crd.yaml文件可以自动生成Operator的创建表单。crd.yaml文件中的properties(openAPIV3Schema.properties.spec.properties)对象会自动映射到对应的UI组件。 目前提供的基础类型控件分别有
使用场景 用户在上传私有服务时,云原生服务中心将会在容器镜像仓库新建一个独立的组织用于存储上传的数据包。因此用户使用此仓库时需要确保容器镜像仓库允许创建至少一个组织,以避免上传服务包失败。 操作步骤 登录容器镜像服务SWR控制台,在左侧导航栏单击“组织管理”。
安装Kubebuilder 环境准备 已安装go v1.16+。 已安装make。 已安装docker 17.03+。 已安装Kubernetes v1.15.0+ 。 已安装kustomize,安装方法请参见安装 kustomize。 已安装controller-gen,安装方法请参见安装
创建Operator项目 背景 Operator是Kubernetes的扩展软件,通过定制资源管理应用和其他组件,实现一定自动运维能力。可以在不改动Kubernetes源码的情况下,通过一个或多个Operator来扩展集群能力,遵照自身业务需求、场景等灵活开发,节省运维成本。流程包括安装
服务管理限制 取消订阅会同时清理已创建的实例及实例所在集群的控制组件。 私有服务删除服务包前,先删除已创建的实例,以及实例所在集群的服务管理Operator。 上传同名不同版本的私有服务时,旧版本的服务会被新版本服务覆盖。 生态类型为“Helm”的服务暂不支持版本升级、回退。
创建API和Controller 根据以上设计的CR,在项目工程中创建对应的CRD类型: $ kubebuilder create api --group osctest --version v1 --kind Hwfka Create Resource [y/n] y Create
查看审计日志 云审计服务支持的OSC操作列表 查询审计事件