EDAS 作为应用托管和微服务管理的 PaaS 平台,支持多样的服务框架,提供全应用生命周期管理、服务治理和微服务管理等功能。

您的应用可以部署到 ECS 集群和容器服务 Kubernetes 集群中。如果您有多套环境,还可以使用命名空间进行隔离。

说明 目前,不同类型的集群对应用框架及程序打包方式有一些限制。
应用 可选集群 打包方式
Spring Cloud、Dubbo 和 HSF ECS 集群 WAR/JAR
容器服务 Kubernetes 集群 WAR/JAR/镜像

应用生命周期管理

应用部署完成后,可以通过 EDAS 控制台进行其它应用生命周期管理操作。

说明 因部署的集群类型不同,生命周期管理操作有些差异。

服务治理

EDAS 集成了众多服务治理组件,以便应对突发的流量洪峰和服务依赖所引发的雪崩问题,提高平台的稳定性。

  • 弹性伸缩:弹性伸缩能够感知应用内各个实例的状态,并根据状态动态实现应用扩容、缩容。在保证服务质量的同时,提升应用的可用率。
  • 限流降级:限流降级用于解决后端核心服务因压力过大造成系统反应过慢或者崩溃问题,通常用于例如商品秒杀、抢购、大促、防刷单等大流量场景。
  • 健康检查:健康检查对容器与应用进行定时检查和汇报,然后将结果上报到控制台,从而帮助您了解集群环境下整个应用的运行状态,排查和定位问题。
  • 灰度发布:灰度发布包括对单个应用的灰度发布和全链路灰度发布。您可以通过灰度发布实现应用新、旧版本的平滑过渡。

应用开发

EDAS 支持基于原生 Spring Cloud、原生 Dubbo 以及 HSF 开发的应用托管到 EDAS 中。

  • Spring Cloud:Spring Cloud 框架下开发的应用只需添加依赖、修改很少的配置,即可托管到 EDAS。无需搭建 Eureka 和 Consul,节省部署、运维成本,并能够获取 EDAS 企业级的应用托管、服务治理、监控报警和应用诊断等能力。
  • Dubbo:Dubbo 框架下开发的应用只需添加依赖、修改很少的配置,即可托管到 EDAS。无需搭建 ZooKeeper 和 Redis,节省部署、运维成本,并能够获取 EDAS 企业级的应用托管、服务治理、监控报警和应用诊断等能力。
  • HSF:HSF 是在阿里巴巴内部广泛使用的分布式 RPC 服务框架。连通不同的业务系统,解耦系统间的实现依赖;统一了分布式应用中服务的发布/调用方式,从而帮助您方便、快速的开发分布式应用;提供或使用公共功能模块,并屏蔽了分布式领域中的各种复杂技术细节。

微服务管理

EDAS 提供服务和服务间调用链的查询功能,帮助您管理分布式系统的中的每一个组件和服务。

  • 服务拓扑:通过拓扑图的形式直观的了解不同服务间的相互调用关系及相关性能数据。
  • 服务查询:在具体地域及命名空间下,查看应用中的 Spring Cloud、Dubbo 和 HSF 服务。
  • 金丝雀发布:在 Spring Cloud 和 Dubbo 应用的迭代过程中,可以通过金丝雀发布对新版本进行小规模验证,在验证通过后,再将应用全量升级到新版本。
  • 离群实例摘除:检测 Spring Cloud、Dubbo 和 HSF 应用实例的可用性并进行动态调整,以保证服务成功调用,从而提升业务的稳定性和服务质量。
  • 服务报表:以租户维度展示当前租户内所有应用的所有服务在近 24 小时内的运行时情况,包括服务调用量、调用耗时和调用出错次数。您在这个报表上可以一目了然的看到整体系统的服务之间的对比情况。
  • 调用链查询:通过设置查询条件,可以准确找出哪些业务性能较差,甚至异常。
  • 调用链详情:基于调用链查询的结果,查看慢业务或出错业务的调用链的详细信息,进行依赖梳理,包括识别易故障点、性能瓶颈、强依赖等问题;也可以根据链路调用比例、峰值 QPS 评估容量。

配置管理

配置管理:EDAS 已经集成了应用配置管理 ACM。您可以在 EDAS 中使用 ACM 对应用配置进行集中管理和推送,还可以基于命名空间在不同环境间进行配置的隔离和同步。

应用监控

  • 应用监控:实时监控应用的 IaaS 层资源和服务的健康状态,帮助您快速发现、定位问题。同时支持开通高级监控(应用实时监控服务 ARMS)。
  • 日志管理:无需登录实例就可以查看实例上所部属的应用运行日志。当应用出现异常情况的时候,您可以通过查看日志来排查问题。
  • 实时日志:当应用出现异常情况的时候,您可以通过查看实时日志来排查 Pod 相关问题。
  • 通知报警:当某些资源使用过度时,通过短信与邮件的方式通知给相应的联系人及时处理线上问题。

组件中心

组件中心围绕分布式、微服务体系,重点建设服务集成和整合能力,进而实现 PaaS 平台开放的生态体系。您需要借助组件,完成相关功能。

微服务组件

  • 云服务总线 CSB:在 EDAS 控制台创建 CSB 专享实例,用来管理和控制目标环境内应用对外的服务开放,也可以引入外部服务并进行管理控制;开放 VPC 内的 EDAS 应用,用于在自有开发环境通过公网来测试联调阿里云 VPC 内的 EDAS 应用。
  • 应用实时监控服务 ARMS:应用实时监控服务 ARMS(Application Real-Time Monitoring Service)是一款阿里云应用性能管理(APM)类监控产品。借助 ARMS 可以迅速便捷地为企业构建秒级响应的应用监控能力。
  • 什么是分布式任务调度 SchedulerX 2.0?:分布式任务调度 SchedulerX 是阿里巴巴基于 Akka 架构自研的新一代分布式任务调度平台。您可以使用 SchedulerX 2.0 编排定时任务、工作流任务、进行分布式任务调度。

系统管理

  • 主子账号体系:通过主子账号体系。您能够根据自己企业的部门划分、团队划分和项目划分在 EDAS 平台上建立对应的主子账号关系;同时,ECS 资源也以主子账号关系进行划分,便于用户进行资源的分配。
  • 角色与权限控制:应用的生命周期管理通常涉及研发、运维和机器资源等角色,不同的角色对于应用的管理操作各不一致。因此 EDAS 提供了角色和权限控制机制,方便用户为不同的账号定义各自的角色,并分配相应的权限。
  • 服务鉴权:为保证您每一次分布式调用的稳定与安全。在服务注册、服务订阅以及服务调用等每一个环节,都进行严格的服务鉴权。