检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
e()方法。需要在Reconcile()方法中实现协调逻辑,创建Service、StatefulSet等资源,并更新应用实例状态,实现的过程中,可以参考: 查询资源:控制器使用controller-runtime库中的Client实现对Kubernetes资源的增查改删,示例代码参见:example_test
定制资源管理应用和其他组件,实现一定自动运维能力。可以在不改动Kubernetes源码的情况下,通过一个或多个Operator来扩展集群能力,遵照自身业务需求、场景等灵活开发,节省运维成本。流程包括安装Kubernetes、构建Operator和实现Operator。 创建Operator
实现Operator 定义API 实现Controller 生成代码和资源描述文件 父主题: 开发Operator
Controller实现 修改controllers/hwfka_controller.go文件为如下内容: func (r *HwfkaReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result
如何配置监控 使用前提 对接监控,需要在csd.yaml文件中配置能力插件依赖功能声明,具体参考服务包扩展目录 capabilityRequirements示例 对接原理 开源的Prometheus是目前业界广泛应用的监控指标采集系统,其服务端可作为时间序列数据库,采集客户端应用
Validation。每次修改API定义后,需要执行命令自动重新生成代码和CRD: $ make generate $ make manifests 父主题: 实现Operator
和 config/rbac/role.yaml make manifests 该步骤将根据API定义自动生成CRD和RBAC。 父主题: 实现Operator
供,同时启动一个KafkaManager用作可视化管理。整体结构如下: 安装Kubebuilder 构建Operator 实现Operator 父主题: 如何从零开始开发Operator
服务插件误删后应该如何处理? 使用场景 用户在云原生服务中心订阅服务或者上传私有服务后并部署实例,云原生服务中心会自动安装服务插件,用户在后台进行kubectl命令操作时误删除了oc-operator的deployment,导致后续无法继续安装云原生服务。 oc-operator
如何从零开始开发Operator 开发Operator 制作镜像 制作服务包 父主题: 附录
如何清理集群中OSC冗余插件数据 使用场景 用户使用OSC平台部署了相关OSC服务后,因为自身原因需要将集群中的OSC等插件信息清理掉,可以参考此章节进行处理。 使用前提 确保集群可以执行kubectl命令,以避免无法执行清理命令。 操作步骤 登录kubernetes集群后台节点
制作镜像 制作实例镜像 制作Operator镜像 父主题: 如何从零开始开发Operator
制作服务包 创建服务包模板 修改服务包内容 生成服务包 父主题: 如何从零开始开发Operator
服务Operator资源被误删后,删除实例失败时如何清理? 使用场景 在CCE云容器引擎页面,由于用户误删了服务Operator以及oc-operator的Deployment相关资源,此时在OSC服务实例页面删除服务实例时,实例删除失败,报错信息“timeout to handle
如何确保容器镜像仓库允许创建至少一个组织? 使用场景 用户在上传私有服务时,云原生服务中心将会在容器镜像仓库新建一个独立的组织用于存储上传的数据包。因此用户使用此仓库时需要确保容器镜像仓库允许创建至少一个组织,以避免上传服务包失败。 操作步骤 登录容器镜像服务SWR控制台,在左侧导航栏单击“组织管理”。
初次使用私有服务上传功能前,如何关联企业仓库实例? 使用场景 在云原生服务中心控制台,OSC支持用户使用容器镜像仓库以及容器镜像仓库企业版,普通的镜像仓库可以免费体验但配额有一定限制,超过限制后将无法再上传,此时用户可以删除旧的服务包或者绑定容器镜像仓库企业版,企业版仓库对上传的
单租户下多IAM用户使用企业仓库场景如何配置权限? 使用场景 用户使用华为云账号上传服务包会按照社区Open Container Initiative规范,以制品包的形式存储在容器镜像服务的用户企业仓库当中。当需要华为云账号下的多个IAM用户使用OSC私有服务时,需要使用华为云账
如何解决系统插件或服务Operator一直处于安装中 使用场景 Operator-Chef在部署服务插件的过程中会访问Kubernetes提供的相关接口,例如:Create、Update等,在执行各个操作接口时,其超时时间为10秒,如果超过10秒可能会因为插件一直不能够正常部署造
修改服务包内容 修改lifecycle.yaml文件。该文件包括OSC服务包的生命周期的相关信息,例如:安装方式、安装时需要的集群/命名空间级别权限、日志目录等。 install: clusterPermissions: # 集群级别权限,请按照Kubernetes RABC相关规范填写
安装Kubebuilder 环境准备 已安装go v1.16+。 已安装make。 已安装docker 17.03+。 已安装Kubernetes v1.15.0+ 。 已安装kustomize,安装方法请参见安装 kustomize。 已安装controller-gen,安装方