在ECS集群中创建并部署应用

您可以在ECS集群中创建并部署已有应用。

前提条件

在ECS集群中创建并部署应用

  1. 登录EDAS控制台

  2. 在左侧导航栏,单击应用管理 > 应用列表

  3. 应用列表页面的顶部菜单栏选择地域,并在页面上方选择微服务空间,然后在页面左上角单击创建应用

  4. 在创建应用向导页面的应用基本信息页签中,输入应用基本信息,然后单击下一步进入应用部署配置页面。

    配置项

    描述

    集群类型

    选择ECS集群

    应用运行环境

    Dubbo或Spring Cloud应用

    • 通过JAR包部署

      • 选择Java

      • Java环境列表中选择JDK版本。如果您想使用自定义OpenJDK,JAVA环境请选择Custom OpenJDK,然后输入OpenJDK安装命令。详细信息,请参见自定义OpenJDK

        说明

        OpenJDK 17支持2.7.14和3.0.6及以上版本的Dubbo。兼容性测试结果,请参见OpenJDK 17兼容测试数据

    • 通过WAR包部署

      • 选择Tomcat

      • Java环境列表中选择JDK版本。

      • 容器版本列表中选择Apache Tomcat版本。

        说明

        Tomcat软件默认安装在/home/admin/目录下,不支持自定义路径安装。

    HSF应用

    • 选择EDAS-Container(HSF)

    • Java环境列表中选择JDK版本。

    • Pandora版本列表中选择Pandora版本。

    • Ali-Tomcat版本列表中选择Ali-Tomcat版本。

    应用名称

    输入应用名称,应用名称必须以字母开头,允许数字、字母、下划线(_)以及短划线(-)组合,最多支持36个字符。

    应用描述

    填写应用的基本情况,最多支持128个字符。

    表 1. OpenJDK 17兼容测试数据

    Dubbo版本

    Spring Boot版本

    Nacos-Client版本

    接口调用

    ARMS监控

    服务列表

    2.7.14

    2.7.9

    1.4.4

    OK

    OK

    OK

    2.7.14

    2.7.9

    2.1.2

    OK

    OK

    OK

    2.7.14

    2.7.9

    2.2.0

    OK

    OK

    OK

    2.7.22

    2.7.9

    1.4.4

    OK

    OK

    OK

    2.7.22

    2.7.9

    2.1.2

    OK

    OK

    OK

    2.7.22

    2.7.9

    2.2.0

    OK

    OK

    OK

    3.0.6

    2.7.9

    1.4.4

    OK

    OK

    OK

    3.0.6

    2.7.9

    2.1.2

    OK

    OK

    OK

    3.0.6

    2.7.9

    2.2.0

    OK

    OK

    OK

    3.1.7

    2.7.9

    1.4.4

    OK

    OK

    OK

    3.1.7

    2.7.9

    2.1.2

    OK

    OK

    OK

    3.1.7

    2.7.9

    2.2.0

    OK

    OK

    OK

  5. 应用配置页签选择部署包来源和实例来源,完成设置后在页面最下方单击下一步

    配置项

    描述

    部署包来源

    自定义程序

    将已有应用部署到EDAS中,需选择文件上传方式

    • 上传JAR包上传WAR包上传部署包:选择本地的应用部署包并上传。

    • JAR包地址WAR包地址部署包地址:输入您在公网中的部署包地址。

    官方Demo

    EDAS提供了Spring Cloud、Dubbo和HSF框架的一对应用Demo,仅为帮助您体验应用的创建、部署。更多信息,请参见开始使用EDAS

    不部署

    仅创建应用,生成应用的基本信息,但不部署。

    实例来源

    • 购买新实例:由EDAS为您代购ECS实例。

    • 使用已有实例:使用您集群内已有的闲置实例。

    环境

    • 默认环境

      在默认微服务空间下新建一个默认集群,该集群使用当前地域内的默认VPC。

    • 自定义环境

      选择您创建的微服务空间集群。如果未创建微服务空间和集群,可以单击创建微服务空间创建集群进行创建。

    购买方式

    • 基于推荐规格购买

      根据您的业务需求来选择实例规格大小,设置购买数量登录密码,并选择《云服务器ECS服务条款》|《镜像商品使用条款》

    • 基于现有实例规格购买

      在模板实例列表选择任一实例作为模板,选择回收模式,设置登录密钥购买数量,并选择《云服务器ECS服务条款》|《镜像商品使用条款》

    • 基于实例启动模板购买

      选择启动模板和回收模式,设置购买数量,并选择《云服务器ECS服务条款》|《镜像商品使用条款》

  6. 应用高级设置页签,设置版本应用健康检查,然后单击下一步

  7. 可选:分组设置(选填)页签,选择资源组,然后单击创建应用

  8. 应用创建完成页签,确认应用基本信息应用配置应用高级设置等信息,确认完毕后单击确定创建应用

    在应用基本信息页面顶部提示信息,单击查看详情,可在变更详情页面查看变更流程。应用部署需要几分钟,请您耐心等待。变更完成后在应用基本信息页面的实例部署信息页签查看实例的运行状态,如果运行状态为运行正常,说明应用部署成功。

配置公网负载均衡

应用一般是在VPC内创建、部署,如果没有特别配置,该应用没有公网IP地址。如果您希望将应用对外开放,建议配置公网负载均衡SLB。

说明

EDAS会为托管的HTTP监听设置为会话保持模式,不可更改。

  1. 登录EDAS控制台

  2. 在左侧导航栏,单击应用管理 > 应用列表

  3. 应用列表页面的顶部菜单栏选择地域,在页面上方选择微服务空间和集群类型(ECS集群),然后单击目标应用名称。

  4. 基本信息页面中基本信息页签的应用设置区域,单击负载均衡(公网)右侧的添加

  5. 添加负载均衡(公)对话框,根据页面提示设置负载均衡参数。具体操作,请参见应用独享负载均衡实例

    复制配置的负载均衡(公网)的公网IP和端口,如39.XX.XX.65:81,粘贴至浏览器地址栏并按Enter键,即可访问该应用的Web页面。

ECS系统配置约束

应用创建后,可能需要登录ECS实例进行系统配置,请遵循以下约束:

  • 不能删除admin用户。

  • 不能删除/home/admin配置。

  • 不能停止主机上的以下进程:

    • /home/staragent/bin/staragentd

    • com.alibaba.edas.agent.AgentDaemon

  • 不能删除主机上的以下crontab:

    • root用户下的bash /home/admin/edas-agent/bin/monitor.sh任务

    • admin用户下的bash /home/admin/edas-agent/bin/rotator.sh任务

  • 必须保证磁盘根分区有可用空间。

  • 如果使用CentOS操作系统,需要保证yum源配置正确,功能正常。

  • ECS如果使用多网卡,比如安装了Docker,且应用为HSF应用时,需要为应用指定-Dhsf.server.ip参数来确保注册的IP符合预期。更多信息,请参见JVM -D启动配置参数

  • ECS实例的时钟需要准确,最大误差不能超过15s,否则会影响应用访问EDAS的注册中心。

    • 若您使用的是ECS企业级安全组,请务必开放安全组的UDP协议123端口出方向流量,以保证操作系统NTP协议正常工作。

自定义OpenJDK

ECS应用部署提供自定义JDK安装命令输入,在创建ECS环境时,会执行您输入的命令。

OpenJDK

ECS上自定义安装的JDK版本与您的操作系统相关联,此处以aliyun_3_x64_20G_alibase_20210910.vhd系统镜像为例,介绍如何自定义OpenJDK版本。

说明

ECS应用需要安装JDK(Java Development Kit),并给Java和Jar命令配置环境变量,即命令行输入javajar命令后显示正常结果。

  • 查看系统自带的JDK 8版本。

    在ECS上执行如下命令,搜索系统自带JDK 8版本:

    # 搜索jre
    yum search --showduplicates java-1.8.0-openjdk
    # 搜索jdk
    yum search --showduplicates java-1.8.0-openjdk | grep devel

    示例结果如下:

    java-1.8.0-openjdk-1:1.8.0.292.b10-0.1.al8.x86_64 : OpenJDK 8 Runtime Environment
    java-1.8.0-openjdk-1:1.8.0.292.b10-0.1.al8.x86_64 : OpenJDK 8 Runtime Environment
    java-1.8.0-openjdk-1:1.8.0.302.b08-0.1.al8.x86_64 : OpenJDK 8 Runtime Environment
    java-1.8.0-openjdk-1:1.8.0.312.b07-2.al8.x86_64 : OpenJDK 8 Runtime Environment
    java-1.8.0-openjdk-1:1.8.0.322.b06-2.al8.x86_64 : OpenJDK 8 Runtime Environment
    java-1.8.0-openjdk-1:1.8.0.272.b10-1.1.al8.x86_64 : OpenJDK Runtime Environment 8

    可以看到该系统镜像的Yum仓库提供了如上JDK 8小版本。

  • 安装JDK 8版本。

    在ECS上执行如下命令测试安装自定义OpenJDK,并执行 java -version命令查看结果,返回安装的JDK版本表示JDK安装成功。

    yum install -y java-1.8.0-openjdk-1:1.8.0.302.b08-0.1.al8.x86_64 java-1.8.0-openjdk-devel-1:1.8.0.302.b08-0.1.al8.x86_64