Aliware(企业级互联网架构ACP)复习整理-EDAS

EDAS支持语言Java,C++,PHP。EDAS支持Idea,Eclipse;Eclipse插件安装等编译工具。EDAS初级版仅支持应用的部署管理,不支持HSF功能。EDAS基础版不支持RPC框架。


EDAS提供高性能的RPC框架,能构建高可用的分布式系统,考虑各个应用之间的分布式服务发现、服务路由、服务调用以及服务安全等细节。EDAS能单独部署到公司内网。


EDAS HSF服务框架保证用户每次分布式调用的稳定与安全。在服务注册、服务订阅以及服务调用等环节都进行严格的服务鉴权。


HSF设置超时时间 : 通过HSF标签methodSpecials和clientTimeout进行配置,优先级由高到低是 : 客户端methodSpecials>客户端clientTimeout>服务端methodSpecials>服务端clientTimeout


EDAS控制台域名 : https://edas.console.aliyun.com


EDAS控制台提供日志浏览功能,可查看服务器上所部署的应用运行日志。收敛日志用于将单个应用中类似格式的日志合并和排序。收敛日志配置后需要等待大概5分钟才能生效。


EDAS安装轻量配置中心 : 启动配置中心将会占用此台机器的8080和9600端口,需要在hosts中添加 {轻量配置中心公网 ip} jmenv.tbsite.net。如果此台机器是多网卡的,可启动脚本startup.bat或startup.sh中添加启动参数: -Daddress.server.ip={指定的 IP 地址};通过 -Dhsf.server.ip参数指定要注册服务的IP。


EDAS 服务限流的限流规则(限流规则仅适用于服务提供者)能够从QPS线程两个维度进行配置。可进行HSF限流和HTTP限流。


EDAS 提供了从响应时间维度对降级规则(降级规则仅仅适合服务消费者)的配置。


EDAS 鹰眼监控系统能够分析分布式系统的每一次系统调用、消息发送和数据库访问。主要包括应用拓扑(可查看调用拓扑和流量QPS),调用链查询(可查看慢业务和出错业务),调用链详情(基于TraceId查询)。

EDAS 提供报警功能,但目前只有短信与邮件通知的方式。


EDAS 的应用主要分为两种类型:中间件服务化应用(JAR/WAR包类型的普通应用和Docker应用)和 Kubernetes 应用。Kubernetes应用只支持VPC网络。


EDAS 的应用部署类型有两种 : ECS独占实例(在一台独立的ECS机器上,仅允许部署单独一个应用),Docker实例(单个应用在同一ECS上只能部署一个实例)


EDAS 能够针对应用的服务调用情况,对服务的QPS响应时间(RT)和出错率进行全方面的监控。


EDAS 能够针对应用的运行状态,对机器的CPU、内存、负载(Load)、网络和磁盘等基础指标进行详细的监控。EDAS还提供容器监控功能(应用诊断)。基础监控(可提供以应用为维度的数据)面向的是机器,容器监控面向是应用所在的容器。基础监控存在时延,容器监控基本是实时的。


EDAS 提供弹性伸缩功能来根据集群内服务器的CPU、RT和Load三个指标实现自动的扩容或者缩容。


EDAS 对应用的生命周期管理,包括创建、部署、启动/停止和删除(应用删除不可恢复)。可设置JVM参数,Tomcat参数,可对应用的实例分组(可按分组部署应用,添加实例到分组),可配置负载均衡。可配置健康检测URL。


EDAS 包含两种集群:Swarm(部署普通应用和Docker应用)和Kubernetes集群(部署Kubernetes应用)。


EDAS 的配置推送分为全局配置推送和应用内部的配置推送。全局配置推送能操作该用户的所有配置信息,应用内的配置推送只能操作该应用所属的配置信息。一个配置信息由三元组(group、DataId、Content)组成。


EDAS 提供主子账号体系,付费账号都是主账号(拥有EDAS所有资源,所有权限),但不是所有的主账号都是付费账号。1个付费账号最多能绑定5个主账号。RAM子账号由主账号在RAM系统中创建,子账号名要在主账号内唯一。RAM账号有两种授权方式 : RAM授权,EDAS授权(两种方式互斥,有了RAM授权,那么就不能在EDAS中授权),主账号可以对绑定的子账号(用户)进行权限分配、资源分配等。应用的授权只能是主账号对子账号进行授权。


EDAS 的资源主要是指云服务器ECS(Elastic Compute Service)、负载均衡SLB(Server Load Balancer)、专有网络VPC(Virtual Private Cloud)这三类。


VPC环境调用链和监控数据需要有访问请求流量才会产生,如果无客户访问网站,则不会有曲线。确定机器的8182端口打开。执行 netstat -antp|grep 8182查看是否端口开放。


EDAS Agent是EDAS中安装在用户ECS上,主要用于EDAS服务集群与部署在相应的ECS上的应用程序之间进行通信的Daemon程序,在运行的过程中主要承担应用管理、状态回报、信息获取等功能,Edas Agent在每个区的安装脚本都是不一样的。如果安装Agent的过程中发现卸载Java,说明指定的JDK版本与安装版本不一致;如果EDAS Agent心跳停止了, ECS的实时状态会变成Agent异常 ,此时,任何对该ECS的部署、启动、停止等命令均无效。重启服务器后EDAS Agent会自动重启,但是Tomcat不会。如果配置JVM参数(在EDAS Agent2.8.0 版本及以上才有效),参数会被写到容器目录下的bin/setenv.sh文件中,需要重启Tomcat和应用才可以生效


EDAS 容器由AliTomcat,Pandora和定制的Pandora插件组成。EDAS容器发布不会对已部署的应用产生任何影响。


Ali-Tomcat是EDAS中的服务运行时必须依赖的容器,主要集成服务的发布、订阅、调用链追踪等一系列的核心功能,无论是开发环境还是运行时,均必须将应用程序发布在该容器中。


Pandora是轻量级的隔离容器,也就是taobao-hsf.sar,用来隔离Web App和中间件的依赖,隔离中间件之间的依赖,让其相互之间互不影响。


定制的Pandora插件中集成了实现服务发现的插件、实现配置推送的插件、实现调用链跟踪的插件等各种中间件产品插件。对EDAS应用进行服务监控、治理、跟踪、分析等全方位运维管理。


EDAS高级版的流量管理规则有两种模式 : 参数取模和名单分流。通常用于灰度发布,蓝绿部署,A/B 测试,营销需求(新产品发布)。

 

EDAS提供Open API,可以提供资源查询,应用生命周期管理和账号管理功能。


EDAS日志采集器(鹊桥) : 仅支持CentOS 6.5/7.0/7.2 64位和Ali-Linux 15.1 64位,可在多台机器上安装,推荐在安装了EDAS Agent的机器上安装(并不是必须的)。安装完成后手动检测端口(8000)是否建立成功。


Dubbo是第一代RPC框架。

posted @ 2018-04-28 13:14  EalenXie  阅读(2524)  评论(0编辑  收藏  举报