EDAS
2022-06-19 15:01:17 1 举报
AI智能生成
阿里云EDAS 学习总结
作者其他创作
大纲/内容
定义
以应用为中心的中间件PaaS平台,提供一键应用部署与扩容,简化用户操作
当您使用启动模板或者基于现有实例规格创建实例时,所代购创建的实例均为按量付费模式
不同命名空间下的资源,应用和服务也是相互隔离的,不能进行服务调用和配置推送
在ECS集群中代购的ECS实例,以及在应用中扩容代购的ECS 实例,只能使用密钥对来登录代购的ECS 实例。在代购时请选择您经常使用的密钥
产品架构
支持配置SSL证书并开启HTTPS安全访问
可将证书配置在应用前端SLB实现Https访问
EDAS控制台
EDAS console
系统日志输出
EagleEye Console
鹰眼系统
服务与服务之间调用链管控和诊断,对运行情况整理进行监控
Agent-server
与EDAS 集群 EDAS-Agent 交互
向EDAS Agent 下发各种命令
EDAS Admin
对后端管理组件进行管控
数据收集系统 Tlog
HBase
在Tlog 存储原始数据
Jstorm 集群
对原始数据进行分析
HStore
存储分析后的指标数据,提供给各种监控平台,指标
Zookeeper
服务状态维护
鉴权中心
对用户的数据进行权限控制,以保证各个用户的数据安全。
配置注册中心
服务发布及订阅的中心服务器,也是分布式配置配置推送的中心服务器
文件系统
用于存放用户上传的WAR包及JDK,Ali-Tomcat 等必须组件
通过FTP 技术实现
监控报警系统
Butler 系统 :EADS 内置监控告警系统
ECS ,容器集群
EDAS-Agent
与 Agent-Server 交互 ,接收EDAS 控制台下发的各种命令
Star-Agent
收集运行环境产生的日志,放到Tlog 中进行分析
Pandora 容器
把微服务框架与应用进行解耦
四大功能
服务化
服务治理
支持HSF ,SpringCloud,Dubbo 微服务架构零代码迁移至EDAS
服务查询
调用链查询
离群实例摘除
服务鉴权
应用生命周期管理
参数配置
Readliness 配置,Liveness 配置,PreStop 配置,PostStart 配置
应用部署
应用托管/部署
ECS
War/Jar
Kubernetes
War/Jar/镜像
仅K8s支持
多语言支持
镜像部署支持
服务网格 ASM
无需付费
实时日志
应用分组
EDAS serverless
War/Jar/镜像
在Kubernetes 集群中部署的应用,暂时只能通过在代码中指定或者通过挂壁SLB的方式来修改应用端口
混合云部署
ECS集群和K8s集群属于同一个VPC,且在EDAS的同一个命名空间下
容器网络CNI保证了在同一个VPC和EDAS 同一个命名空间下的混合部署应用可以互相发现与调用
CI/CD
Jenkins
云效
EDAS创建应用
在云效创建应用
在云效使用模板创建流水线
在云效配置构建任务
立体化监控
分布式调用链路跟踪
鹰眼系统
链路分析报表
应用监控
服务和接口监控
SQL分析
NoSQL 分析
异常分析
错误分析
链路上下游
接口快照
容器层监控
IAAS 基础监控
CPU,内存,负载,网络,磁盘
实时- 一周
单机-集群
业务监控大盘
定制化报表大盘
应用运维
容量规划
熔断/限流/降级
熔断
会在调用链路中某个方法出现不稳定时,对这个方法的调用进行限制,让请求快速失败,避免此错误影响整个链路
限流
作用于服务消费者
通过调节流量阈值来控制通过系统的最大流量值,保证系统安全可靠运行
降级
作用于服务提供者
通常用于对下游出现超时的非核心服务提供者进行低优先级调用,确保上游核心应用(服务消费者)不被影响
运维功能
生命周期管理
应用访问方式管理
弹性伸缩
限流降级
负载均衡
变更记录
事件中心
日志管理
EDAS可将业务文件日志、容器标准输出stdout、stderr日志输出到SLS,方便无限制行数地查看日志和自聚合分析日志
更新应用时配置会重启应用,请在业务较少的时间段进行
日志类型
EDAS 系统日志
业务日志
日志框架配置文件
实时日志
应用诊断
数据库诊断
RPC诊断
Java 运行时诊断
核心组件
应用配置管理 ACM
定义
ACM 凭借配置变更,配置推送,历史版本管理,灰度发布,配置变更审计等核心功能,为用户集中管理所有应用环境中的配置
架构
ACM服务端
服务协议层
用于进行协议转换,鉴权验证等
一致性管理层
用于配置的一致性管理和配置推送
配置缓存层
通过分布式缓存提高配置查询和推送效率
存储层
后台是一个分布式存储,用于存放配置,并具备高性能和高拓展性
控制台
ACM控制台,用于配置管理
ACM 客户端
客户端基于 RESTful API 设计,可实现跨语言访问
提供java Native API 以及基于Spring Cloud Config 的配置读取接口
在某些场景下,ACM提供 Agent 来动态替换宿主机器上的配置文件。此时 ACM 配置项和配置文件对应关系需手动指定
功能
配置管理
配置变更
配置推送
配置变更审计
推送轨迹
历史版本管理
多语言支持
命名空间
在实际业务场景中,经常需要针对不同环境的某个配置项设置不同的值。ACM 的命名空间(NameSpace) 功能可以帮助您实现多个环境的资源和配置的隔离
发布
单批发布
分批发布
灰度发布(金丝雀发布)
升级中回滚,分批发布或金丝雀发布过程中,在执行后续分批发布前,发现异常,可以终止并回滚应用
升级后回滚,对于单批发布、分批发布或金丝雀发布已经完成,发现新版本应用有问题,可以通过部署历史版本回滚应用
分布式调度 SchedulerX
定义
单机和广播需要实现 JavaProcessor
并行计算,内存网格,网络计算和分片运行需要实现 MapJobProcessor
架构
server组件
触发调度核心逻辑
Client连接管理
Job状态管理
console 组件
Job元数据维护
API gateway
系统监控,监控报警
zookeeper
分布式锁
Server,Console 机器状态维护
权限管理
SchedulerX 当前支持命名空间和应用两个级别的权限管理;
使用的是阿里云主账号和子账号鉴权体系,目前暂不支持RAM 授权,需要使用 SchedulerX 自身的鉴权功能
支持的任务
Java 任务
脚本任务
Http任务
功能
编排定时任务
编排工作流任务
进行分布式任务调度
支持的定制调度类型
Crontab
Fixed rate
Second delay
OpenAPI
日历
时区
触发方式
固定时间点
周期性
控制台手动
依赖触发
全局事务 GTS
定义
分布式事务是指事务发起者,资源管理器,事务协调者,事务协调器及资源分别位于不同分布式系统的不同节点之上。事务协调器和服务框架是GTS 的架构组成;
目前GTS支持MySQL、PolarDB、RDS、DRDS、PostgreSQL、Oracle、OceanBase和PetaData 等数据源
使用GTS注解方式就可以使用GTS事务,无需对已有业务代码入侵改造
分布式事务包括
跨库事务问题
微服务化事务问题
消息事务问题
三大核心组件
服务端-事务协调器 (TC)
负责分布式事务的推进,管理事务生命周期
Transaction Coordinator(TC):维护全局和分支事务的状态,驱动全局事务提交与回滚
客户端 (TM)
Transaction Manager (TM):定义全局事务的范围:开始、提交或回滚全局事务
GTS Client 资源管理器 GTS (RM)
Resource Manager(RM):管理分支事务处理的资源,与 TC通信以注册分支事务并报告分支事务的状态,并驱动分支事务提交或回滚
常见的事务模式
XA模式
通过二阶段提交的方式,满足分布式事务
TCC模式
补偿方案
TCC 模式是高性能分布式事务解决方案,适用于核心系统等对性能有很高要求的场景。
AT模式
AT 模式是无侵入的分布式事务解决方案,适用于不希望对业务进行改造的场景,几乎 0 学习成本。
步骤
初始化一个全局事务的实例,该实例拥有一个唯一的id,称之为XID,这个XID会在整个分布式事务的服务间流转,作为这次分布式事务的唯一标识;
开启全局事务,设置超时时间等属性,以避免拿不到锁时,无限的等待;
执行逻辑。如果任何一个服务的本地事务出现异常,则进入回滚全局事务。如果回滚成功,就抛出那个本地事务失败的异常。如果回滚事务失败,则抛出异常原因。
标记该次全局事务状态为完成,通知各单体服务该次事务已经完成,请继续下一步。各单体服务收到该请求后,会立刻返回成功,然后异步删除之前本地事务前保存的回滚信息;
Saga模式
Saga 模式是长事务解决方案,适用于业务流程长且需要保证事务最终一致性的业务系统
Saga 模式一阶段就会提交本地事务,无锁,长流程情况下可以保证性能,多用于渠道层、集成层业务系统。事务参与者可能是其它公司的服务或者是遗留系统的服务,无法进行改造和提供 TCC 要求的接口,也可以使用 Saga 模式
微服务引擎 MSE
定义
微服务引擎 MSE 是一个面向业务主流开源微服务框架Spring Cloud 和 Dubbo的一站式微服务平台,提供治理中心,微服务网关,托管的注册中心和托管的配置中心
MSE 目前支持Zuul,Kong,和SpringCloud GateWay 三种网关类型
开源
Dubbo 微服务框架
EDAS 保持开源Dubbo项目持续维护,其核心RPC 功能和阿里内部保持一致
GTS 开源版本 seata
https://github.com/alibaba/fescar
ACM 开源版本 nacos
0 条评论
下一页