检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
在定义CRD时,需同时定义基于OpenAPI的校验规则,其中包含创建CR时的字段及取值范围,以便校验用户创建的CR中字段值的合法性。使用Kubebuilder,可通过在API中定义Marker,自动生成spec.validation.openAPIV3Schema。 CRD字段说明 g
创建API和Controller 根据以上设计的CR,在项目工程中创建对应的CRD类型: $ kubebuilder create api --group osctest --version v1 --kind Hwfka Create Resource [y/n] y Create
自定义服务CSD 在不同业务环境下,服务对平台有着不同的诉求,Kubernetes提供自定义资源CRD的轻量化机制。而在实践过程中,发现对于服务能力如服务依赖、服务访问、服务部署、监控日志等公共能力欠缺。 因此围绕CRD自研CSD,通过声明式配置CRD的能力引用,增强服务治理能力。
如何配置监控 使用前提 对接监控,需要在csd.yaml文件中配置能力插件依赖功能声明,具体参考服务包扩展目录 capabilityRequirements示例 对接原理 开源的Prometheus是目前业界广泛应用的监控指标采集系统,其服务端可作为时间序列数据库,采集客户端应用
级前的版本。 注意事项 升级前请确保环境中所有主机处于正常运行状态,且升级过程中不能出现主机断电、断网等的情况。 升级过程中请不要执行指导步骤之外的其他操作,避免操作冲突导致升级变更失败。 升级过程中不能手工重启节点,否则可能导致升级异常。 父主题: 服务实例日常操作
箱即用的云原生服务,可以通过OSC部署到任意基础设施,包括华为云CCE集群、第三方集群等场景。服务提供商在发布服务时需要提供服务包,服务包中包含部署需要的配置文件以及镜像,并按照OSC可识别的路径放置,保证服务发布中用户可以一键部署。 图1 商品服务生命周期
服务是OSC管理的最大粒度实体,由用户上传的服务包,会抽象成为服务用于统一管理。 实例 服务按用户指定参数部署到具体的Kubernetes集群中,称为服务的一个实例,一个服务可以拥有多个实例。 集群 集群指容器运行所需要的云资源组合,关联了若干云服务器节点、负载均衡等云资源。您可以理
执行实例运维动作(可选) 服务在运行过程中,一般会对关键数据进行备份操作,在服务异常后可通过备份数据进行恢复,在云原生服务中心中称之为运维动作。服务如定义了独立的运维动作,则会在实例详情界面展示出一个“Action”页签,单击可展示服务实例当前可执行的运维操作。以Redis为例,
默认加密策略。 如果已经有可用OBS桶,可跳过此步骤,表中的参数需要按要求填写,其它的可选默认值。 合作伙伴上传的服务包,需要保证元数据文件中配置provider或者maintainer字段数据,从而可以将上架服务包在市场中展示服务提供商的联系方式。 用户已经阅读并了解OSC服务
name自动创建对应的CRD,版本试用版v1。 CRD中group固定值helm.osc.huawei.com,kind对应chart name。 如果metadata.yaml中修改了服务包名、版本等内容,需要同步修改raw内的helm包中Chart.yaml内容。 HelmRelease
oncile()方法。需要在Reconcile()方法中实现协调逻辑,创建Service、StatefulSet等资源,并更新应用实例状态,实现的过程中,可以参考: 查询资源:控制器使用controller-runtime库中的Client实现对Kubernetes资源的增查改删
若实例对应的服务包已删除,则只可以执行删除操作。 服务使用限制 云原生服务中心市场中的开源服务均来源于开源社区提供,本平台仅提供部署体验功能,请勿直接在在生产环境中运行使用。 云原生服务中心市场中的开源服务在运行中出现的问题,可直接到开源社区中提issue解决,本平台会不定期更新社区新版本。
否 operations.logpath 日志目录 参见样例 否 对于lifecycle文件中配置了upgrade字段的服务包,需要确保该服务operator能够管理的实例版本(由CSD文件中的versionDefinition字段规定)与被升级的operator所能管理的实例版本
atadog-operator为例进行详细说明。 接入流程 用户参考附录oscctl工具使用中的链接下载oscctl工具oscctl-22.8.18.tar.gz,并放在linux执行机中。 执行下面命令解压服务。 # 解压工具包 $ tar -xvzf oscctl-22.8.18
统一身份认证处为IAM用户配置用户组和访问SWR企业仓库的权限,保证IAM用户可以正常使用OSC私有服务。 统一身份认证服务IAM权限管理中,账号是资源归属以及计费的主体,对其拥有的资源具有所有权限。IAM用户由账号创建,只能拥有账号授予的资源使用权限,账号可以随时修改或者撤销I
满足OSC规范的服务包,就可以发布到OSC上。 想使用OSC提供的高级能力,比如监控、日志等运维能力,在Helm或者Operator服务包中添加配置文件,对接平台运维能力,然后再按照制作流程的指导制作服务包。 服务包目录结构约束 服务包镜像名称约束 服务内容说明 镜像拉取配置说明
helm开源服务grafana为例进行详细说明。 接入流程 用户参考附录oscctl工具使用中的链接下载oscctl工具oscctl-22.8.18.tar.gz,并放在linux执行机中。 执行下面命令解压服务。 # 解压工具包 $ tar -xvzf oscctl-22.8.18
动化运维。 核心特性 指定部署平台:选择服务可部署的应用平台,支持云容器引擎、华为云UCS应用部署平台。 声明式对接平台运维能力:在服务包中添加运维能力对应的配置文件,无需修改业务代码,就能对接监控、日志、弹性伸缩等运维能力。 服务编排:可指定服务之间的拓扑依赖关系。 兼容社区规范:全面兼容Helm和Operator
对接平台的日志采集能力,可配置日志采集路径对接配置日志。 文件 否 是 参考如下步骤可以进行扩展目录文件配置: 在配置了扩展能力后,需要在csd.yaml文件中添加配置引用才能生效,新增配置如下: # 公共能力引用(只针对平台能力引用) # MonitorConfig:对接监控 # LogConfig:对接日志
检查如果环境所需要的依赖包不满足kubebuilder要求,kubebuilder会下载相关依赖包,开发者可根据实际情况在项目的go.mod中更改依赖包 go get sigs.k8s.io/controller-runtime@v0.10.0 go: downloading sigs