为了帮助您能够快速地在EDAS中部署微服务应用,EDAS提供了Spring Cloud、Dubbo和HSF微服务应用Demo,您可以将应用Demo部署到自定义ECS环境(指定ECS集群)中。本文介绍如何在自定义ECS环境中部署微服务应用。
前提条件
背景信息
自定义ECS环境:在某个地域内指定的微服务空间、VPC内的ECS集群。
应用Demo:EDAS控制台提供的Spring Cloud、Dubbo和HSF框架的一对微服务应用Demo,可以完成简单的服务调用。不同框架的应用Demo部署操作基本一致。本文讲解如何部署Spring Cloud应用Demo。如果您想要了解Demo的详细信息,请参见alibabacloud-microservice-demo。
如果您想了解如何实现微服务应用的相关功能,请参见应用开发概述。
在ECS环境中,暂时不支持部署Python应用,您可在K8s环境中使用镜像方式部署。具体操作,请参见通过控制台快速在K8s集群中部署Spring Cloud和Dubbo应用。
操作步骤
创建Provider应用
微服务应用Demo中包含一个服务端应用(服务提供者)和一个客户端应用(服务消费者),本文介绍如何部署服务端应用。在部署完服务端应用后,请再按照本章节部署客户端应用。
登录EDAS控制台。
在左侧导航栏,单击 。
在应用列表页面顶部菜单栏选择地域,在页面中选择目标微服务空间,然后单击创建应用。
在创建应用页面的应用基本信息页签设置应用的基本信息,然后单击下一步。
在集群类型区域,单击ECS集群。
在应用运行环境区域,单击Java,并在Java环境列表,选择Open JDK 8。
本文以部署Spring Cloud应用的JAR包Demo为例,所以应用运行环境选择Java。如果需要部署Spring Cloud或Dubbo应用的WAR包或HSF应用,请按照界面提示,选择合适的应用运行环境和版本。
在应用名称下方的文本框中输入应用名称。
可选:在应用描述下方的文本框中输入对该应用的描述信息。
在应用配置页签,配置应用的部署包和环境,然后单击下一步。
配置项
操作
部署包来源
选择官方Demo。
Demo类型
选择Spring Cloud服务端应用。
实例来源
选择使用已有实例。
环境
选择自定义环境。
微服务空间
在下拉列表中选择创建的集群所在的微服务空间。
说明如果在默认微服务空间中创建了集群,则选择默认微服务空间。
集群
在下拉列表中选择已创建的集群。如需新建,请参考以下步骤。
单击创建集群,在创建集群对话框中,集群网络类型选择专有网络,VPC网络选择a创建的VPC。
实例来源类型
选择未导入到集群的实例。
您也可以执行以下步骤,将实例导入集群后,再选择当前集群中的实例。
在资源管理>EDAS ECS集群页面,单击目标集群后,在ECS实例区域,单击图标,然后单击添加已有ECS。
在添加ECS实例页面,选择导入ECS,选择已创建的实例,然后单击下一步。
在准备导入页面,确认导入实例信息后,单击确认并导入。
在进行导入页面,状态提示直接导入成功后,单击返回集群详情页,可看到ECS实例区域新增导入后的实例。
选择实例
选择已创建的ECS实例。
接入任务调度
如需接入任务调度,请参见EDAS应用接入SchedulerX。
在应用高级设置页签,输入版本、应用健康检查、批次、分批方式和分批等待时间,然后单击创建应用。
说明当实例数量为2个及以上时,才需配置分批等待时间。由于示例中仅将应用Demo部署至一个ECS实例,所以无需配置该参数。
版本:EDAS默认配置当前时间戳作为版本,格式为
yyyymmdd:hhmmss
。批次:1批。
分批方式:自动。
在应用创建完成页签,确认应用基本信息、应用配置和应用高级设置,然后单击确定创建应用。
应用开始部署后,基本信息页面上方提示应用有变更流程正在执行,处于执行中状态。部署过程大概需要2分钟,请耐心等待。
也可以在提示信息右侧单击查看详情,跳转到应用的变更详情页面查看部署进度及相关日志。
创建Consumer应用
请参见创建Provider应用,创建Consumer应用。Demo类型选择Spring Cloud客户端应用。
结果验证
客户端应用包含Web服务,服务端应用和客户端应用都部署完成后,可以访问客户端应用的Web页面,验证调用结果。
在应用管理 > 应用列表页面顶部菜单栏选择地域,然后单击刚刚部署的客户端应用名称。
在客户端应用的基本信息页面,单击实例部署信息。
在实例部署信息页签,复制部署客户端应用的ECS实例的公网IP。
使用浏览器访问客户端应用的URL,格式为
http://<ECS实例公网IP>:8080
,查看是否成功访问客户端应用的Web页面。在Echo this string文本框中输入任意字符串,如
Hello EDAS
,然后单击点击此处,查看页面下方是否成功返回调用之后的数据。调用之后数据返回区域显示客户端应用(Consumer)调用服务端应用(Provider)的过程,并且包含输入的字符串,则说明调用成功,即微服务Demo应用部署成功。
2020-08-25T10:00:01.866Z : Consumer received. 2020-08-25T10:00:01.878Z : Provider received. Provider processed after sleep 1 second! Echo String: "Hello EDAS" 2020-08-25T10:00:02.878Z : Provider Return 2020-08-25T10:00:02.882Z : Consumer Return