使用toolkit-maven-plugin插件分批发布应用(ECS集群)

您可以使用toolkit-maven-plugin插件分批发布已经部署在EDAS的Spring Cloud、Dubbo和HSF应用。

背景信息

toolkit-maven-plugin是一个开源工具,帮助您构建一个完整的生命周期框架,完成项目的基础工具建设。更多信息,请参见toolkit-maven-plugin概述

toolkit-maven-plugin也支持升级EDAS K8s集群中的应用。具体操作,请参见使用Cloud Toolkit插件单批发布应用(K8s)

操作步骤

  1. 在本地应用工程的pom.xml文件中添加toolkit-maven-plugin插件的依赖。

    <build>
        <plugins>
            <plugin>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>toolkit-maven-plugin</artifactId>
                <version>1.1.5</version>
            </plugin>
        </plugins>
    </build>                      
  2. 在工程的根目录下创建配置文件.edas_config.yaml,在文件中配置部署参数。

    • .开头的文件为IDE的默认配置文件。在未指定其它配置文件时,插件会默认使用根目录下的.edas_config.yaml文件。

    • 如果创建了其它非以.开头的配置文件,也可以在打包工程时,通过设置参数-Dedas_config=xxx来指定该配置文件。

    • 如果既存在默认配置文件,也通过参数指定了其他配置文件,那么插件会使用参数指定的配置文件。

    说明

    如果当前工程为一个Maven工程的子模块,那么默认配置文件应该存放在当前工程目录下,而不是整个Maven工程的根目录下。关于多模块工程部署更多方式,请参见部署多模块工程

    典型升级场景的配置示例如下:

    例如在杭州地域有一个ID为eb20****-e6ee-4f6d-a36f-5f6a5455****的应用,包含多个应用分组。需要升级其中ID为62fe****-d931-4446-a30a-f396a6da****的分组,分为2批发布,每批间的等待时间间隔为2分钟,配置示例如下:

    env:
      region_id: cn-hangzhou
    app:
      app_id: e130****-75d7-471e-9e31-95145701****
      group_id: 62fe****-d931-4446-a30a-f396a6da****
      batch: 2
      batch_wait_time: 3                        

    实际使用时,可能会有更复杂的场景,需要配置更多参数,请参见部署应用配置参数说明

  3. 在本地新建一个YAML账号文件,在文件中配置AccessKey ID和AccessKey Secret。

    推荐使用RAM用户(需已授予应用管理权限)的AccessKey ID和AccessKey Secret,以便控制应用权限来提高应用的安全性。RAM用户的AccessKey ID和AccessKey Secret可以在阿里云AccessKey管理页面查看。

    账号文件示例如下:

    access_key_id: yourAccessKeyID
    access_key_secret: yourAccessKeySecret                    
    说明

    请将文件中的yourAccessKeyIDyourAccessKeySecret替换成您实际的AccessKey ID和AccessKey Secret。该配置中AccessKey ID和AccessKey Secret只会用来生成请求签名,不会用于网络传输等其他用途。

  4. 在本地工程目录(如果为Maven多模块则进入子模块目录)中,执行以下命令,将应用打包并部署到EDAS。

    mvn clean package toolkit:deploy -Daccess_key_file={账号文件路径}                        

    命令参数说明:

    • toolkit:deploy: 使用toolkit-maven-plugin插件部署应用的参数。只有添加此参数,才会在应用打包成功后进行部署。

    • access_key_file:账号文件路径参数。

      说明

      更多指定密钥对的方式,请参见账号配置及账号优先级说明

    • 还可以通过设置-Djar_path参数指定部署包文件路径,跳过打包步骤而直接使用已有的部署包进行部署。部署包路径支持绝对路径和相对路径。

      mvn toolkit:deploy -Daccess_key_file={账号文件路径} -Djar_path=target/demo.jar                        
      重要

      您还可以在env中配置账号文件路径,请参见部署应用配置参数说明,上述-D方式优先级大于env中的配置。

结果验证

  1. 执行应用打包、部署命令后,在IDE的Terminal中查看输出日志。

    • 显示以下信息,并提示BUILD SUCCESS,表示应用部署成功。EDAS成功使用toolkit-maven-plugin部署了应用

    • 如果输出日志中包含ERROR相关信息,请根据日志排查失败原因。解决后再重新部署。

  2. 登录EDAS控制台,查看变更记录和应用详情,检查应用是否升级(部署)成功。更多操作,请参见结果验证

专有云支持

toolkit-maven-plugin插件可以在专有云曙光V3.8.0及以上版本使用,在使用前需要按照以下步骤在插件中配置EDAS Endpoint。相关配置,请参见部署应用配置参数说明。请联系EDAS技术支持获取Endpoint。

问题反馈

如果您在使用工具部署应用的过程中有任何疑问,请加入钉群(钉群号:34556175)联系产品技术专家咨询处理。