更新时间:2025-08-13 GMT+08:00

基于GitOps部署微服务

基于GitOps的部署是一种全托管、安全的自动化K8S部署方法,使用ArgoCD和CodeArts代理机在用户的K8S集群上安装“GitOps运行时”,其在防火墙后面运行,不需要从外部访问集群,“GitOps运行时”安装在集群上,从Git拉取部署配置,然后通过CodeArts代理机与发布服务安全通信,不需要入网访问。基于GitOps的部署可以对Git中的所有部署配置进行版本控制,实现跨环境、声明式、可追踪、一致性的应用交付。

约束与限制

该特性仅支持在新加坡局点实现。

安装GitOps运行时

  1. 新建发布管理环境
  2. 单击环境名称,跳转至“环境信息”页签。
  3. 单击“配置”,弹出“配置 GitOps Runtime”侧滑框,根据步骤1提示,获取并配置访问密钥。

  4. 勾选,单击“生成命令”,展开“helm”安装命令,复制此命令,在K8S集群上执行该命令。

  5. 单击“关闭”,完成GitOps Runtime的配置。
  6. “环境信息”页面,查看并监控GitOps Runtime状态。

创建微服务部署配置

  1. 访问CodeArts Pipeline首页
  2. 单击持续交付 > 流水线 > 微服务,进入微服务列表页面。
  3. 新建流水线微服务,或搜索需要创建部署配置的微服务,单击微服务名称,进入微服务“概览”页面。
  4. 单击“部署配置”,单击,进入“新建部署配置”页面,填写基本信息,相关参数说明如表1所示。

    表1 参数说明

    参数项

    说明

    所属项目

    部署所属项目,不可修改。

    部署配置名称

    部署配置的名称,仅支持中文、英文字母、数字、“-”、“_”,长度不超过128个字符。

    部署引擎

    支持选择“发布策略”“GitOps”

    构建类型

    支持选择“Helm”“Kustomize”

    产物源

    制品仓库来源,当前仅支持Git仓库。

    代码源

    代码仓库来源,当前仅支持Repo。

    代码仓

    当前项目下的代码仓,指定GitOps仓库。

    分支

    代码仓库分支。

    路径

    指定代码仓内的具体子路径。

    命名空间

    目标应用的命名空间,选择部署的默认命名空间。

    描述

    部署配置的描述,长度不超过200个字符。

    Helm 值文件

    同一代码仓内的文件列表,作为Helm值在部署过程中执行Helm模板时使用。

    Helm参数

    执行Helm模板时注入的参数。

  5. “构建类型”为Helm时,单击Helm参数下的“新建参数”,配置helm参数的key值和value值。单击可删除参数。

  6. 单击“确定”,完成微服务部署配置的新建。

微服务实例部署

  1. 访问CodeArts Pipeline首页
  2. 单击持续交付 > 发布管理,进入“环境”页面。
  3. 单击部署微服务的环境名称,进入“环境信息”页面。
  4. 单击“微服务实例”,进入“微服务实例”页面。
  5. 单击“创建微服务实例”,进入“创建微服务实例”页面,填写基本信息,相关参数说明如表2

    表2 参数说明

    参数项

    说明

    所属项目

    部署所属项目,不可修改。

    微服务

    微服务的名称,选择将要部署的微服务。

    部署配置

    部署配置的名称,选择将要部署的微服务对应的部署配置。

    描述

    微服务实例的描述,长度不超过200个字符。

  6. 单击,选择是否覆盖默认部署配置。

  7. 单击微服务名称,进入微服务“概览”页面,查看部署后的微服务。
  8. 单击持续交付 > 发布管理,单击部署微服务的环境名称,单击“部署历史”,可查看微服务部署记录。

    • 每个环境只允许部署一个微服务实例。

使用流水线服务自动更新部署的微服务

  1. 新建流水线
  2. 进入编排流水线阶段,单击“新建任务”,弹出“新建任务”侧滑框。
  3. 将鼠标移动到“部署微服务实例”插件,单击“添加”,完成基本信息的填写,相关参数说明如表3

    表3 参数说明

    参数项

    说明

    名称

    插件名称,名称仅支持输入中文、大小写英文字母、数字、'-'、'_'、','、';'、':'、'.'、'/'、'('、')'、'('、')'及空格,长度不超过128个字符。

    环境

    发布管理环境,与集群资源关联,承载将要进行的部署任务的相关配置。

    微服务

    已完成部署配置的微服务,选择微服务,与微服务实例部署配置的“微服务实例”联动,自动更新其中的配置信息。

    Helm参数

    执行Helm模板时注入的参数。

  4. 单击“确定”,完成“部署微服务实例”插件的添加。
  5. 单击“保存”,完成流水线服务自动更新部署的微服务。