检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
设施,包括华为云CCE集群、第三方集群等场景。服务提供商在发布服务时需要提供服务包,服务包中包含部署需要的配置文件以及镜像,并按照OSC可识别的路径放置,保证服务发布中用户可以一键部署。 图1 商品服务生命周期
确保集群可以执行kubectl命令,以避免无法执行清理命令。 操作步骤 登录kubernetes集群后台节点,确保节点可以正常执行kubectl命令。 执行如下命令,查询OSC插件部署helm资源。 kubectl get secret -nosc-oc 执行如下命令,删除OSC服务插件secret资源。
hwfka_crd.yaml │ └─ hwfka_csd.yaml │ └─ vendor └── metadata.yaml 打包服务包命令如下: $ tar -zcvf hwfka-operator-package.tgz hwfka-operator-package 父主题:
配置修改。 提供扩展目录,支持对接运维能力。 OSC支持开发者在扩展目录中添加配置文件对接运维能力。基于该规范开发的服务在部署时,OSC会识别并解析配置文件中的内容,赋予服务对应的功能。 服务接入流程图 父主题: 服务接入
centos:latest COPY bin/manager / RUN chmod ug+x /manager WORKDIR / 构建容器镜像命令如下: $ make && make docker-build IMG=hwfka-operator:v0.0.1 父主题: 制作镜像
oscctl create --output "./NewOSCPackage" 此命令将在工作目录下创建文件夹NewOSCPackage,其中包含OSC服务包必要的文件。 服务包转换 在oscctl命令后添加子命令convert用以将开源helm或operator服务包,使用--help可查看其支持的flag选项。
用户参考附录oscctl工具使用中的链接下载oscctl工具oscctl-22.8.18.tar.gz,并放在linux执行机中。 执行下面命令解压服务。 # 解压工具包 $ tar -xvzf oscctl-22.8.18.tar.gz oscctl-22.8.18/ oscctl-22
er-gen二进制文件,建议提前安装controller-gen二进制,并修改Makefile中有关这个命令为使用系统命令,而非每次通过go get下载并编译后使用。 该命令主要执行以下动作: 在PROJECT文件中增加API资源声明。 domain: huawei.com layout:
免被转义,可使用引号引起来。 example-operator 是 version 版本。建议使用引号,否则YAML会将类似2.0的版本号识别为浮点数。 1.0.0 是 appVersion 应用版本信息,长度小于64 2.1.2 否 alias 别名 example operator
服务插件误删后应该如何处理? 使用场景 用户在云原生服务中心订阅服务或者上传私有服务后并部署实例,云原生服务中心会自动安装服务插件,用户在后台进行kubectl命令操作时误删除了oc-operator的deployment,导致后续无法继续安装云原生服务。 oc-operator服务是云原生服务中心用
运维能力扩展 为了保证适用OSC的服务规范,将使用oscctl工具作为创建、转换OSC服务包,并且统一服务包格式。使用oscctl create命令会在manifests目录下生成一个vendor文件夹,该文件夹下存放日志、监控的扩展内容,扩展目录结构如下: # 以hwfka-operator-package为示例
在Openshift Operator Framework规范中,开发者定义的各类CRD资源都是对等的,没有更进一步的划分,但从实际的功能属性上来说,很容易识别出,不同CRD所处的层级和使用场景并不相同,以etcd为例,可能定义有代表服务主体本身的etcd CRD,以及表示etcd备份的backup
旧版本crd资源后重新上传新版本的crd资源。 操作步骤 登录kubernetes集群后台节点,确保节点可以正常执行kubectl命令。 执行如下命令,查询插件crd资源,找到待删除的crd资源。 kubectl get crd kubectl get crd |grep {crd_name}
操作, 下面以grafana-n8avo0为例进行说明,如下图所示为服务删除失败的实例。 在步骤4获取的弹性公网节点上,执行查找当前资源的命令,资源类型统一为HelmRelease, 资源名称为grafana-n8avo0为例进行说明。 删除掉如下红框中的两行,并且执行wq!保存返回。
用户参考附录oscctl工具使用中的链接下载oscctl工具oscctl-22.8.18.tar.gz,并放在linux执行机中。 执行下面命令解压服务。 # 解压工具包 $ tar -xvzf oscctl-22.8.18.tar.gz oscctl-22.8.18/ oscctl-22
+kubebuilder:validation:Maximum=3 详细使用方法参见:CRD Validation。每次修改API定义后,需要执行命令自动重新生成代码和CRD: $ make generate $ make manifests 父主题: 实现Operator
e级和cluster级,cluster级的operator可以监听和管理任意namespace的资源。使用kubebuilder init命令默认初始化cluster级的operator,仅支持cluster级的operator管理同级别的CRD。监听多个namespace,main
${KAFKA_HOME}/bin/kafka-server-start.sh WORKDIR $KAFKA_HOME 制作容器镜像 构建容器镜像命令如下: $ docker build -t kafka:v2.7.0 . 父主题: 制作镜像