• 部署

    1. 概述

    应用部署是指将应用服务的某一个版本部署至指定环境的操作。在此模块,Choerodon提供了可视化与一键式的手动部署方式,并支持手动启动预定的流水线流程来同时执行多个部署任务。此外,您还可在主页列表中查看到项目中所有部署操作的记录和详情。

    通过此页面,您将会了解应用部署的流程与操作。

    只有项目所有者和被分配环境权限的项目成员才能在某个环境中部署应用服务。

    2. 手动部署

    在部署主界面,点击工具栏的手动部署,右侧弹出手动部署界面。以下为部署应用服务生成实例的步骤:

    image

    1. 选择服务来源;

      • 项目应用服务:本项目下已有的应用服务;
      • 共享应用:组织内其他项目共享出来的应用服务;
    2. 选择服务;

    3. 选择需要部署的服务版本;

      • 选择应用服务版本时,只会在下拉框中显示近40条版本以供选择。若想部署其他版本,请直接在下拉框中精确搜索对应的版本选中即可。
    4. 选择环境;

      • 此处仅能选择状态为运行中的环境。
    5. 修改实例名称;

      • 选择应用服务后,会默认生成对应的实例名称,且该名称支持自定义。
    6. 选择部署配置;(此处可以直接从已有的部署配置中进行选择并使用,或者直接在默认values的基础上进行修改)

      • 若项目中暂时没有所选应用和环境的部署配置,此时编辑器中会出现默认的初始values文件,用户可在此基础上进行修改。
      • 若选中一个部署配置,编辑器中会出现该部署配置中的配置信息,用户可直接使用,或者在此基础上进行修改。
      • 部署values目前有四种显示格式:
        • 新增:新增的参数行,显示绿色
        • 修改:修改values值后,显示为黄色块
        • 红色x: yaml格式错误的行,显示红色x
        • 未改变:默认色
      在该编辑器模式中,yaml格式的校验是实时的,每次只会返回一个yaml格式错误,即使文件有多行报错。只有将上一个错误修改正确。 每修改一次部署values的值都会校验一次yaml格式,有错就会界面上用红色x提示,鼠标移到红色x上会显示具体的报错信息。yaml格式不正确不能点击下一步。但是当版本里面的values文件有yaml格式错误时,无法通个过界面修改yaml格式错误,只能修改代码内的values文件并且生成新的版本,重新部署新的版本。

    3. 批量部署

    在部署主界面,点击工具栏的批量部署,右侧弹出批量动部署界面。以下为批量部署应用服务生成实例的步骤:

    image

    3.1 应用服务部署

    1. 选择环境;

      • 此处仅能选择状态为运行中的环境。
    2. 选择服务;

    3. 选择需要部署的服务版本;

      • 选择应用服务版本时,只会在下拉框中显示近40条版本以供选择。若想部署其他版本,请直接在下拉框中精确搜索对应的版本选中即可。
    4. 修改实例名称;

      • 选择应用服务后,会默认生成对应的实例名称,且该名称支持自定义。
    5. 选择部署配置;(此处可以直接从已有的部署配置中进行选择并使用,或者直接在默认values的基础上进行修改)

      • 若项目中暂时没有所选应用和环境的部署配置,此时编辑器中会出现默认的初始values文件,用户可在此基础上进行修改。
      • 若选中一个部署配置,编辑器中会出现该部署配置中的配置信息,用户可直接使用,或者在此基础上进行修改。
      • 部署values目前有四种显示格式:
        • 新增:新增的参数行,显示绿色
        • 修改:修改values值后,显示为黄色块
        • 红色x: yaml格式错误的行,显示红色x
        • 未改变:默认色
          在该编辑器模式中,yaml格式的校验是实时的,每次只会返回一个yaml格式错误,即使文件有多行报错。只有将上一个错误修改正确。 每修改一次部署values的值都会校验一次yaml格式,有错就会界面上用红色x提示,鼠标移到红色x上会显示具体的报错信息。yaml格式不正确不能点击下一步。但是当版本里面的values文件有yaml格式错误时,无法通个过界面修改yaml格式错误,只能修改代码内的values文件并且生成新的版本,重新部署新的版本。

    3.2 资源配置

    若要为此次部署生成的实例配置网络和域名,以便能通过外部网络访问到该实例,只需在同一页面中点击 资源配置展开详情页完成配置即可。以下为网络和域名的配置步骤:

    image

    3.2.1 网络配置

    1. 输入网络名称;
    2. 选择 网络类型,其中包括了 ClusterIPNodePortLoadBalancer

      • ClusterIP:

        • 外部IP为选填项,需要外部网络访问时填写。
          外部IP的值不能随意填写,必须是service所在集群节点的IP!
        • 端口号为实例service端口号,目标端口号为实例Pod端口号,用以配置网络的端口映射转发。
          端口号必须是数字且大小在0-65535之间

      • NodePort:

        • 节点端口为节点对外提供的端口,端口号为实例service端口号,目标端口号为实例Pod端口号,用以配置网络的端口映射转发。最后,可选择网络协议为TCP或UDP。
          节点端口号必须在30000-32767之间,端口号必须是数字且大小在0-65535之间
      • LoadBalancer:

        • 端口号为service端口号,目标端口号为实例Pod端口号,用以配置网络的端口映射转发。
          端口号必须是数字且大小在0-65535之间
    3. 完成以上步骤,便可为该实例配置一个网络。

    3.2.2 域名配置

    1. 输入域名名称;
    2. 选择协议类型;目前可选两种协议类型,分别是:普通协议与加密协议。

      • 普通协议:选择普通协议的域名时,默认对创建的域名不做处理。
      • 加密协议:通过使用证书(例如SSL证书),来实现对域名的加密。
    3. 输入域名地址(选择加密协议时,还需根据输入的域名选择一个对应的证书);

    4. 输入路径、选择端口; > 此处的网络默认为在该页面配置的网络。

    3.3 添加多个应用服务

    1. 添加项目应用服务或者共享应用服务
      • 项目应用服务:本项目下已有的应用服务;
      • 共享应用服务:组织内其他项目共享出来的应用服务;
    2. 为新添加的应用服务重复3.2-3.2步骤

    4. 启动部署流程

    点击页面左上方的启动部署流程,右侧会弹出所有可手动执行的流水线流程。您可在此批量选择和执行这些流水线流程。

    只有手动触发类型的流水线才能在此被手动启动,且需要流水线中指定的触发人员才有权限执行。选择对应的流水线后,点击启动,只有满足流水线执行条件时(部署任务需要生成对应的触发版本),流水线才会执行。

    5. 查看部署记录与详情

    5.1 查看手动部署记录及详情

    点击进入部署主界面,在部署记录中筛选出部署类型为手动部署的记录。

    1. 能在列表中查看到手动部署记录的编号、执行者、运行时间以及运行结果;
    2. 点击某条记录的编号,便能查看到该条记录的详情,其中包括:部署的应用服务、服务版本、部署环境以及生成的实例;
    3. 点击某条记录后的操作按钮,点击查看实例,便能直接跳转至实例详情界面,查看与该实例相关的所有信息。

    5.2 查看流水线部署记录及详情

    点击进入部署主界面,在部署记录中筛选出部署类型为流水线部署的记录。

    1. 能在列表中查看到某条流水线部署记录的编号、对应的流水线名称、触发方式、执行者、运行时间以及运行结果;目前,运行结果存在以下几种情况:

      结果 含义
      成功 流水线中所有任务执行成功
      失败 流水线中有任务执行失败
      执行中 流水线中有任务正在运行
      待审核 流水线正停留在人工审核的节点,包括人工卡点与阶段间的人工审核
      已终止 人工审核时,点击终止任务,最后流水线为已终止状态
      已删除 原流水线已被删除,但是执行记录依然保存在此页面
    2. 在记录列表中,对不同状态的流水线部署可以执行相应的操作。对于执行失败的流水线,列表后会出现重试按钮,点击重试按钮,即可重新执行流水线中的所有任务;若流水线状态为待审核,列表后会出现审核按钮,点击此按钮,会弹出人工审核的弹框,点击对应的按钮即可进行审核。

      此处的操作按钮仅对拥有权限的人员进行展示。
    3. 点击某条记录的编号,便能查看到该条记录的详情,在此详情页面中,会展示出对应流水线的执行详情。其中包括了流水线的触发方式、触发人员、阶段详情以及任务详情。

      其中阶段详情主要包括阶段的流转方式以及阶段的执行时间。而任务详情中则包含了每个任务执行的结果与对应的执行记录。

      同时,针对不同状态的流程,对应的人员可以进行相应的操作,比如:对于执行中状态的流程,项目所有者可以对其进行强制失败的操作;对于待审核状态的流程,指定的审核人员可在此页面进行审核。

    6. 阅读更多