检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
RBAC权限管理 Operator使用基于角色的访问控制机制对Kubernetes中的资源进行访问,因此,要保证Operator正确的运行,需要使用管理员权限的账号对Operator进行授权,即预先创建对应的role和rolebinding。 在Reconcile()上添加mark
"Deleting" ) 在controllers下创建controllers/resources.go文件,用来生成所需要的资源。在创建StatefulSet的时候,使用volumeClaimTemplates自动创建PVC。 package controllers import
实现Operator 定义API 实现Controller 生成代码和资源描述文件 父主题: 开发Operator
使用Kubebuilder,可通过在API结构的属性上定义Markers,自动生成CRD中的spec.validation.openAPIV3Schema,即基于OpenAPI的校验规则,以便校验用户创建的CR中字段值的合法性。如上述设置size属性的最小值和最大值: // +kubebu
生成代码和资源描述文件 修改api/v1/memcached_types.go或controller中的markers之后,需要重新生成代码和资源描述文件。 # 生成 api/v1/zz_generated.deepcopy.go make generate # 生成 config/crd/bases
商用服务的企业或开发者,本文档介绍提供商如何上传和发布商用服务。OSC为客户提供开箱即用的云原生服务,可以通过OSC部署到任意基础设施,包括华为云CCE集群、第三方集群等场景。服务提供商在发布服务时需要提供服务包,服务包中包含部署需要的配置文件以及镜像,并按照OSC可识别的路径放置,保证服务发布中用户可以一键部署。
md,描述该服务包的功能介绍、使用说明等信息。按照下面一级目录编写。 <!--Markdown格式,按照以下目录结构--> # 介绍 # 功能 # 版本列表 # 服务架构 # 快速上手 <!-- 可提供链接 或者 文字--> # 许可证 使用说明文件中引用的文件或者文档链接尚未设计,作为后续规划。
r监听资源的namespace。 Operator作用域 Operator的作用域分namespace级和cluster级,cluster级的operator可以监听和管理任意namespace的资源。使用kubebuilder init命令默认初始化cluster级的opera
例详情页面可以展示实例的运行详情,比如运行时参数,并支持配置修改。 提供扩展目录,支持对接运维能力。 OSC支持开发者在扩展目录中添加配置文件对接运维能力。基于该规范开发的服务在部署时,OSC会识别并解析配置文件中的内容,赋予服务对应的功能。 服务接入流程图 父主题: 服务接入
Center,OSC)服务规范旨在给出一种与云平台解耦的云原生服务的标准定义,可描述云原生服务在分布式云的部署和治理。 部署:云原生服务中心联合华为云分布式服务UCS,能够将应用部署到华为云集群、多云集群、本地集群、附着集群、伙伴集群五种场景,实现应用的跨云和全域部署。 治理:容器化只是服务云原生化的第一步,服务部署
与其它云服务的关系 云原生服务中心需要与其他云服务协同工作,云原生服务中心和其他云服务的关系如下所示: 图1 云原生服务中心和其他云服务的关系 表1 云原生服务中心和其他云服务的关系 服务名称 交互关系 主要交互功能 容器镜像服务 SWR 云原生服务中心的服务包模板和镜像存储的仓库。
^[a-z][a-z0-9\-]*[a-z0-9]$,如果服务名称为业界具有特殊含义的字符串,为了避免被转义,可使用引号引起来。 example-operator 是 version 版本。建议使用引号,否则YAML会将类似2.0的版本号识别为浮点数。 1.0.0 是 appVersion 应用版本信息,长度小于64
s示例 对接原理 开源的Prometheus是目前业界广泛应用的监控指标采集系统,其服务端可作为时间序列数据库,采集客户端应用不同时间周期上报的监控指标数据并存储,还可用来查询数据和图形化展示数据趋势。其针对不同的应用,提供了多种客户端exporter实现,用来上报监控指标,如:https://github
的划分,但从实际的功能属性上来说,很容易识别出,不同CRD所处的层级和使用场景并不相同,以etcd为例,可能定义有代表服务主体本身的etcd CRD,以及表示etcd备份的backup CRD,两者客观上存在从属和依赖关系。所以,平铺的定义方式并不能很好的体现这种资源的层级和保证
者面临的一个难题。OSC提供开箱即用的云原生运维能力,支持服务声明式对接,无需修改业务代码。 应用级视图 传统的运维方式应用比较原始,都聚焦在资源层级,没有应用统一视图。OSC在实例详情页面可以查看本实例状态信息、配置信息、日志、监控信息,方便用户在一个页面查看实例相关的基础信息,无需切换到不同的运维平台。
服务使用者是搭建企业级应用的用户,在OSC服务中心选择所需服务和规格,进行服务订阅、服务实例部署,从而完成企业级应用的搭建。同时,还可使用服务实例运维视图辅助应用的监控运维。本文档介绍如何订阅服务、创建服务实例、服务运维操作及管理服务插件。 图1 商品服务生命周期 图2 私有服务生命周期
用户在订阅服务后可部署实例,用户可根据服务能力指定部署的region,容器集群以及运行参数。 实例运维 云原生服务中心提供实例的运维视图,可以查看实例的监控、日志等运维信息,如果需要深入的数据分析,可以从运维视图跳转到对应的云服务。 实例更新 用户可以修改实例的运行配置。 实例删除 当实例承载的业务生命周期结束,用户可以删除实例回收相关资源。
a实例的管理,同时Kafka实例将以三节点集群的形式对外提供服务。对于Kafka实例/集群而言,需要依托于zookeeper进行构建,zookeeper用作Kafka集群的元数据管理,每个Kafka实例在各节点上会有一个zookeeper实例与其对应,存储broker内的消息、t
manifest若干文件 更多介绍参见官网Helm。 上传至OSC的helm包中,Chart.yaml文件的icon字段不生效,仅支持以图片形式配置logo,配置方式为:在与Chart.yaml同级的目录中增加logo.png(或jpg,svg后缀)命名的图片。 接入规范说明 父主题: 开源服务包规范
Operator代码示例 CRD典型格式 Controller实现 挂载存储 创建存储 父主题: 附录