实验概述
企业级分布式应用服务(Enterprise Distributed Application Service, 简称 EDAS)是以阿里巴巴中间件团队多款久经沙场的分布式产品作为核心基础组件,面向企业级云计算市场提供高可用分布式解决方案,是阿里巴巴企业级互联网架构解决方案的核心产品,它涵盖了应用生命周期管理、服务运维管控等众多功能。
本实验主要是指导学员如何在本机上配置并搭建 EDAS 本地开发测试环境。
实验目标
完成此实验后后,学员可以掌握的能力有:
在本地搭建 EDAS 本地开发测试环境;
EDAS 的基本开发流程。
学前建议
在使用 EDAS 产品之前,我们默认您已经掌握基本的编程技巧,包括但不限于熟练使用 JAVA 编程语言;掌握相关的开发工具(Eclipse等),熟悉相关的开发规范(Maven;Spring等)
背景知识
业务背景 在复杂的云环境,应用发布与管理会变得十分复杂。本地开发完成的应用需要逐个部署到服务器,然后登陆每一台服务器终端进行应用的发布和部署;后续可能还会涉及应用的重启,扩容等。服务器的不断增加对于运维人员将是一个极大的挑战。 当集中式应用转变成分布式系统的时候,系统之间的相互可靠调用一直以来都是分布式架构的难题,比如网络通信,序列化协议设计等很多技术细节需要确定。EDAS 提供了一个高性能的 RPC 框架,能够构建高可用的分布式系统,系统地考虑到了各个应用之间的分布式服务发现、服务路由、服务调用以及服务安全等细节。 EDAS 支撑了整个阿里巴巴 99% 以上的大规模应用系统,其中涵盖了包括会员、交易、商品、店铺、物流和评价在内的所有在线核心系统,在稳定性、可靠性等多个维度具有独特的优势。EDAS 历次双十一大促考验,其完善的鉴权体系保证每一次服务调用的安全可靠。 技术背景 EDAS 充分利用阿里云的资源管理和服务体系,引入阿里巴巴中间件整套成熟的分布式产品,全面兼容 Apache Tomcat 的 Java 容器,提供高性能的分布式服务框架以及秒级推送的分布式配置管理服务。此外,EDAS 还创新性地提供了分布式系统链路追踪、容量规划、数据化运营和多款经过阿里电商平台长期考验的高可用稳定性组件,帮助企业级客户轻松构建大型分布式应用服务系统。 EDAS 除了以互联网中间件 PaaS 平台为基础,采用高性能 RPC 框架 HSF 和 Dubbo 作为服务化框架之外,还提供了丰富的二方服务体系:
· 分布式配置管理
集中式系统变成分布式系统后,如何有效地对分布式系统中,每一个机器上的配置信息进行有效的实时管理成了一个难题。EDAS 提供高效的分布式配置管理,能够将分布式系统的配置信息在 EDAS 控制台上集中管理起来,做到一处配置,处处使用。更重要的是,EDAS 允许您在控制台上对配置信息进行修改,在秒级时间内就能够实时通知到所有的机器。
· 分布式任务调度
任务调度服务,允许用户配置任意周期性调度的单机或者分布式任务,并能对任务运行周期进行管理,同时也提供对任务的历史执行记录进行查询。适用于诸如每天凌晨 2 点定时迁移历史数据,每隔 5 分钟进行任务触发,每个月的第一天发送系统月报等任务调度场景。
· 分布式事务
分布式事务(Transaction Controller,简称 TXC),是一款高性能、高可靠、接入简单的分布式事务中间件,用于解决分布式环境下的事务一致性问题。该产品支持 DRDS、RDS、Oracle、MySQL、PostgreSQL、H2 等多种数据源,并可以配合使用 EDAS、Dubbo 及多种私有 RPC 框架,同时还兼容 MQ 消息队列等中间件产品,能够轻松实现分布式数据库事务、多库事务、消息事务、服务链路级事务及其各种组合,具有策略丰富,易用性和性能兼顾等特征。
一、环境准备
1.1 ECS
请点击页面左侧的实验资源 ,在左侧栏中,查看本次实验资源信息。 ECS windows环境 ECS 在弹出的左侧栏中,点击 创建资源 按钮,开始创建实验资源。 资源创建过程需要1-3分钟。完成实验资源的创建后,用户可以通过 实验资源 查看实验中所需的资源信息,例如:阿里云账号等。
1.2 远程连接
远程连接方式:
本实验所使用的资源是安装了windows系统的ECS,可以通过远程连接的方式,根据文档内容在ECS上完成EDAS本地开发环境的搭建。远程连接的方式,根据下面的连接进行操作,链接如下:
https://help.aliyun.com/document_detail/25435.html
https://help.aliyun.com/document_detail/108451.html
远程连接异常:
远程连接的过程中可能出现的常见异常 “出现身份验证错误,要求的函数不受支持”,该异常的解决办法如下:
https://help.aliyun.com/knowledge_detail/71931.html
二、安装JDK并配置环境变量
2.1 安装JDK
从我们提供的实验软件\开发软件目录中找到jdk-8u211-windows-x64.exe,直接安装。
2.2 配置环境变量
单击开始菜单,在列表找到 “计算机”,鼠标右键单击,从弹出的列表中找到属性进入
新窗口中 点击左侧 “高级系统设置”,然后点击环境变量,进入变量配置页面。
新建系统变量名 JAVA_HOME ,变量值如下:
C:\Program Files\Java\jdk1.7.0_79
打开环境变量PATH,在变量值最前端增加如下语句: %JAVA_HOME%\bin; 注意:末尾的“;”分号不能省略
新建变量名 CLASSPATH ,变量值如下:
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 注意:前面的“.;”符号不能省略。
2.3 验证
在CMD命令窗口下输入java -version,可以正常显示java版本。
三、安装maven并配置环境变量
3.1 安装Maven
将实验软件\开发软件目录中apache-maven-3.6.1-bin打开,其中的文件apache-maven-3.6.1 复制到本地磁盘C:\work目录(如果没有该文件夹,可以新建一个)。
3.2 配置环境变量
按前序步骤打开环境变量
配置系统变量,在系统变量中新建一个变量,变量名为M2_HOME,变量值为Maven的安装目录,如下:
D:\work\apache-maven-3.6.1
接着在系统变量中找到环境变量PATH,在变量值的最前端加上如下语句:
%M2_HOME%\bin; 注意:末尾的“;”分号不能省略。
3.3 验证
在cmd窗口中运行 mvn -v ,可以查看对应maven的版本。
3.4 配置settings文件
为了让maven能更顺利的下载edas的jar相关jar包,建议配置一个edas的私服地址。修改maven的settings.xml(setting.xml文件在~/.m2/settings.xml,或直接使用maven安装包下conf/settings.xml),添加私服地址。
注意:maven的settings配置可以在 Maven 中配置 EDAS 的私服地址中看到更详情的说明。
在<profiles>,新增内容如下(注意profiles可能被注释掉,确保<profiles>和<profile>的格式)
<profiles> <profile> <id>nexus</id> <repositories> <repository> <id>central</id> <url>http://repo1.maven.org/maven2</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>central</id> <url>http://repo1.maven.org/maven2</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories> </profile> <profile> <id>edas.oss.repo</id> <repositories> <repository> <id>edas-oss-central</id> <name>taobao mirror central</name> <url>http://edas-public.oss-cn-hangzhou.aliyuncs.com/repository</url> <snapshots> <enabled>true</enabled> </snapshots> <releases> <enabled>true</enabled> </releases> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>edas-oss-plugin-central</id> <url>http://edas-public.oss-cn-hangzhou.aliyuncs.com/repository</url> <snapshots> <enabled>true</enabled> </snapshots> <releases> <enabled>true</enabled> </releases> </pluginRepository> </pluginRepositories> </profile> </profiles> <activeProfiles> <activeProfile>nexus</activeProfile> <activeProfile>edas.oss.repo</activeProfile> </activeProfiles>
四、安装Ali-Tomcat
4.1 安装步骤
将实验软件\HSF容器目录中taobao-tomcat-7.0.59.tgz解压到本地磁盘(例如:d:\work)下。 镜像中已经解压,可直接复制。
在实验软件\HSF容器目录中找到taobao-hsf.sar软件,将里面的内容移动到Ali-Tomcat 的 deploy 目录。例如:d:\work\tomcat\deploy 底下。
(已解压的不需要重新解压)
详情可以参考:安装 Ali-Tomcat 和 Pandora
五、安装IDE的Ali-Tomcat插件
5.1 Eclipse
将实验软件\开发软件目录中eclipse.zip解压到本地磁盘d:\work目录。由于我们提供的eclipse已经默认安装好tomcat4e,因此,不需要重新安装ali-tomcat的插件。
确认已安装tomcat4e的步骤如下:
打开eclipse,在eclipse菜单栏 ->Window按钮 -> 选择Preferences ->选择Run/Debug->Perspectives,再右侧列表中可以看到AliTomcat Webapp的选项,即为已安装。效果如下:
对于未找到该选项或自行下载的eclipse,需要安装 Tomcat4E插件,如下所示安装步骤进行操作:
点击工具栏菜单> Help 按钮,选择 Install New Software > 依次单击 Add > Local > 选中实验软件\开发软件tomcat4e.zip 包 > OK > Select All > Next 按钮即完成插件安装,重启Eclipse。界面如下:
5.2 IDEA
运行 IntelliJ IDEA。从菜单栏中选择 Run > EditConfiguration。在 Run/Debug Configuration 页面左侧的导航栏中选择 Defaults > Tomcat Server > Local。
下面开始配置 Ali-Tomcat:
在右侧页面单击 Server 页签,然后在 Application Server 区域单击 Configure。
在 Application Server 页面右上角单击 +,然后在 Tomcat Server 对话框中设置 Tomcat Home 和 Tomcat base directory 路径,单击 OK。
将 Tomcat Home 的路径设置为本地解压后的 Ali-Tomcat 路径,Tomcat base directory 可以自动使用该路径,无需再设置。
在 Application Server 区域的下拉菜单中,选择刚刚配置好的Ali-Tomcat。在 VM Options 区域的文本框中,设置 JVM 启动参数指向 Pandora 的路径,如:-Dpandora.location=d:\work\tomcat\deploy\taobao-hsf.sar
说明:d:\work\tomcat\deploy\taobao-hsf.sar 需要替换为在本地安装 Pandora 的实际路径。
最后,单击 Apply 或 OK 完成配置。 详情可以参考:配置 IDEA 开发环境。