在SAE控制台使用JAR文件部署微服务应用

本文以两个简单的示例JAR文件分别表示微服务的提供者和消费者。提供者提供简单的Echo服务,会返回消费者输入的消息。本文介绍在SAE控制台部署微服务应用的操作步骤及验证方式。

前提条件

操作步骤

部署提供者微服务应用

按照以下步骤将示例提供者微服务应用部署到SAE

  1. 登录SAE控制台

  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击创建应用

  3. 应用基本信息配置向导,配置相关信息,然后单击下一步:应用部署配置

    配置项

    说明

    应用名称

    输入自定义的应用名称。

    专有网络配置

    选择专有网络的配置方式。

    • 自定义配置:选中后,可以为创建的应用选择所需的命名空间、VPC、vSwitch及安全组。

    • 自动配置:选中后,SAE将自动配置命名空间、VPC、vSwitch及安全组,无需手动选择。

    命名空间

    选择自定义配置时需要配置。

    从下拉列表选择创建好的命名空间。命名空间和VPC是一一映射关系。关于修改VPC的更多信息,请参见创建和管理专有网络

    vSwitch

    选择自定义配置时需要配置。

    单击请选择vSwitch,在选择vSwitch对话框配置。

    vSwitch数量至少需要配置1个,建议不超过3个,且每个vSwitch至少匹配1个应用实例。

    安全组

    选择自定义配置时需要配置。

    从下拉列表选择安全组。如果您的VPC内没有创建安全组,请单击创建安全组,根据提示创建安全组。更多信息,请参见创建安全组

    应用实例数

    选择需要创建的实例个数。

    VCPU

    选择需要创建的实例CPU规格。

    内存

    选择需要创建的实例内存规格。

    应用描述

    填写应用的基本情况。

  4. 应用部署配置配置向导,配置相关信息。

    1. 配置应用部署信息。

      配置项

      说明

      技术栈语言

      选择Java

      应用部署方式

      选择JAR包部署

      应用运行环境

      • 标准Java应用运行环境:适用于Spring Boot或Dubbo应用。

      • EDAS-Container-XXX:适用于HSF应用。

      本文的示例应用为Dubbo应用,因此选择标准Java应用运行环境

      Java环境

      • Dragonwell X(推荐):支持OpenJDK,支持应用启动及运行时加速,提升GC效率等。更多信息,请参见设置启动命令

      • Open JDK X:基于CentOS操作系统,基础镜像大。

      • openjdk-XXXXX-jdk-alpine3.9:基于Alpine操作系统,基础镜像小。

      说明

      与CentOS操作系统相比,基于Alpine操作系统的Java环境附带的工具或命令较少。如果您选择了openjdk-XXXXX-jdk-alpine3.9,可能会导致Webshell中部分命令无法执行,请根据实际情况选择环境。

      文件上传方式

      选择上传JAR包JAR包地址

      • 上传JAR包:单击选择文件,选择待部署的JAR包。

        您可以下载并使用示例提供者JAR包:spring-boot-provider-1.0-SNAPSHOT.jar

      • JAR包地址:输入JAR包的存放地址。

        示例提供者JAR包的地址如下:

        https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241022/lgfgve/spring-boot-provider-1.0-SNAPSHOT.jar
      说明

      应用部署程序包名称仅可包含字母、数字、短划线(-)和下划线(_)。

      版本

      设置应用版本号,选择输入版本号或者单击使用时间戳为版本号将时间戳作为应用版本号。

      时区设置

      选择当前应用所在时区,例如UTC+8

    2. 可选:按需设置以下高级选项。

      高级设置

      参考文档

      镜像加速

      设置镜像加速

      说明

      只有应用部署方式镜像时才能设置镜像加速。

      启动命令设置

      设置启动命令

      Java Tomcat设置

      设置Java Tomcat参数

      说明

      只有应用部署方式WAR包部署时才能设置Tomcat。

      环境变量设置

      设置环境变量

      服务注册发现

      Hosts绑定设置

      设置Hosts绑定

      应用健康检查设置

      设置健康检查

      应用出/入公网访问设置

      应用生命周期管理设置

      设置应用生命周期管理

      日志收集服务

      持久化存储

      设置NAS存储

      配置管理

      注入配置信息

      微服务无损上下线

      说明

      当您选择WAR包部署JAR包部署时,如果应用运行环境选择EDAS-Container-XXX,不支持配置微服务无损上下线。

  5. 单击下一步:确认规格

  6. 确认规格配置向导,查看您所创建应用的详细信息以及费用配置情况,然后单击确认创建

    页面会跳转至创建完成配置向导,您可以单击应用详情页进入基本信息页面。

部署消费者微服务应用

部署消费者微服务应用的步骤与部署提供者微服务的步骤相似,在步骤4文件上传方式中,您可以下载并使用示例消费者JAR包:spring-boot-consumer-1.0-SNAPSHOT.jar,或输入示例消费者JAR包的地址:

https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241022/fdytfy/spring-boot-consumer-1.0-SNAPSHOT.jar

验证部署是否成功

您可以通过提供者和消费者的服务列表页面判断部署是否成功。

  1. 登录SAE控制台

  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。

  3. 在左侧导航栏,选择微服务治理 > 服务列表,查看服务信息。

    如果在服务列表页面,可以查看到目标服务,说明提供者应用或者消费者应用部署成功。

验证微服务调用

您可以为消费者应用设置CLB公网访问,并在浏览器中发起调用请求来判断微服务调用是否能正常工作。

  1. 登录SAE控制台

  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,单击具体应用名称。

  3. 基本信息页签的应用访问设置区域,单击默认显示的基于CLB访问页签内的添加公网CLB访问

  4. 添加公网CLB访问对话框,配置相关信息,然后单击确定

    • 请选择CLB:选择新建

    • 网络协议:选择TCP协议

    • CLB端口:输入80

    • 容器端口:输入9091。需填写容器中应用提供服务的端口。本文示例的容器端口为9091。更多信息,请参见为应用绑定CLB

    重要

    使用CLB会产生额外费用。CLB的计费方式,请参见CLB计费概述

    等待2分钟~3分钟后,CLB实例将绑定完毕,公网访问地址字段后将显示公网CLB访问地址及端口。

    已添加公网CLB访问.png

  5. 在浏览器地址栏,输入以下URL。

    <公网CLB访问地址>:<端口>/sayHello/<自定义字符串>

    例如输入http://*.***.169.144/sayHello/HelloSAE

    如果浏览器返回以下结果,则说明微服务调用成功。

    Hello, HelloSAE (from Spring Boot)

查看应用监控指标

应用成功部署后,您可以在应用监控模块中查看应用的关键性能指标。

  1. 登录SAE控制台

  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。

  3. 在左侧导航栏,按需查看应用监控数据。

    • 应用总览:选择应用监控 > 应用总览,查看应用的关键性能指标,例如总请求量、平均响应时间等。

    • 应用详情:选择应用监控 > 应用详情,查看更全面的应用监控数据,例如JVM监控、异常分析等。

    • 接口调用:选择应用监控 > 接口调用,查看以接口为维度的监控数据,例如调用拓扑图、链路上游和链路下游等。

    • 高级监控:选择应用监控 > 高级监控,查看更高性能的监控管理数据,例如应用全局拓扑、异常SQL分析和本地调用堆栈等。

更多信息

SAE部署应用完成后,您可以对应用进行如下操作。

操作

相关文档

更新、扩缩容、启停、删除应用等生命周期管理的操作

管理应用生命周期

自动弹性伸缩、CLB绑定和批量启停等提升应用性能的操作

日志管理、监控管理、应用事件查看和变更记录查看等聚焦应用运行状态的操作