全部产品
Search
文档中心

企业级分布式应用服务 EDAS:使用toolkit-maven-plugin插件升级应用(ECS集群)

更新时间:May 19, 2023

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

前提条件

已在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>                      
    说明

    version的值建议设置为1.1.5,最新版本可能存在不适用情况。

  2. 在工程的根目录下,创建配置文件.edas_config.yaml,在文件中配置部署参数。

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

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

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

    说明

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

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

    • 升级应用所有分组。

      例如,在华北2(北京)地域有一个ID为eb20****-e6ee-4f6d-a36f-5f6a5455****的应用,需要升级该应用的所有分组。配置示例如下:

      env:
           region_id: cn-beijing
      app:
           app_id: eb20****-e6ee-4f6d-a36f-5f6a5455****                        

      配置参数的值请以应用相关的实际信息为准。

    • 升级应用指定分组并标识部署包版本。

      例如,在华北2(北京)地域有一个ID为eb20dc8a-e6ee-4f6d-a36f-5f6a545****的应用,需要升级的应用分组ID为06923bb9-8c5f-4508-94d8-517b692f****,部署包版本为1.2。配置示例如下:

      env:
        region_id: cn-beijing
      app:
        app_id: eb20dc8a-e6ee-4f6d-a36f-5f6a5455****
        package_version: 1.2
        group_id: 06923bb9-8c5f-4508-94d8-517b692f****            

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

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

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

    账号文件示例如下:

    access_key_id:yourAccessKeyId
    access_key_secret:yourAccessKeySecret
    说明

    代码中的yourAccessKeyIdyourAccessKeySecret请替换成您实际的AccessKey IDAccessKey Secret。该配置中AccessKey IDAccessKey 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。