AHAS Sentinel 是 Sentinel 的阿里云上版本,提供企业级的高可用防护服务,包括:
- 可靠的实时监控和历史秒级监控数据查询,包含 QPS、RT、load、CPU 使用率等指标,支持按照调用类型分类,支持同比/环比展示
- 热力图概览,可以快速定位不稳定的机器
- 动态规则管理/推送,无需自行配置外部数据源
- 告警中心(触发流控、CPU 利用率高等事件)
- 全自动托管、高可用的集群流量控制
- 针对 Istio/Envoy 集群的 Mesh 高可用防护
- Nginx 网关流控
若您已是 Sentinel 用户并接入了 开源 Sentinel 控制台,您只需替换一下依赖即可快速接入到 AHAS Sentinel 控制台。同样您也可以快速从云上控制台切换到开源控制台。
本文将指引您通过简单几步快速在开源版本 Sentinel 控制台 和 AHAS Sentinel 控制台之间进行切换。
注意:若要使用阿里云 AHAS Sentinel 控制台,您需要有阿里云账号。
1. 引入 Sentinel 相关依赖
如果您的应用使用了 Maven,则在 pom.xml
文件中加入以下依赖即可:
<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>ahas-sentinel-client</artifactId>
<version>1.6.5</version>
</dependency>
ahas-sentinel-client
中会包含 sentinel-core
等必要依赖,以及连接 AHAS Sentinel 控制台所需通信模块。
若您之前接入了开源 Sentinel 控制台,则需要将相关的依赖去除后替换成此依赖,否则将无法正确连接 AHAS Sentinel 控制台。若希望从 AHAS Sentinel 控制台切换到开源 Sentinel 控制台,只需要将依赖替换回来,修改一下启动参数即可。
注意:从 AHAS Sentinel Client 1.4.1 开始,AHAS SDK 依赖和开源 Sentinel 依赖不再支持同时引用。AHAS Sentinel Client 1.4.0 版本兼容 Sentinel 1.6.3 版本。
如果您未使用依赖管理工具,请到 Maven Center Repository 直接下载 JAR 包,然后将其添加到 classpath 下即可。
2. 开通 AHAS 高可用防护
引入依赖后,您需要到 阿里云控制台 开通 AHAS 功能。可以根据 开通 AHAS 文档 和 流控降级 Demo 快速入门 里面的指引进行开通。
注意:若您的应用运行在阿里云 ECS 环境,可以在左上角选择对应的 Region。若运行在其它环境或本地,可以在左上角选择 公网 环境。
3. 获取启动参数
开通后您可以点击左侧侧边栏的 应用防护,进入 Sentinel 控制台应用总览页面。在页面右上角,单击“新应用接入”按钮,选择 Java SDK 接入页签,到 配置启动参数 页签拿到需要的启动参数(详情请参考 SDK 接入文档),类似于:
-Dproject.name=AppName -Dahas.license=<License>
其中 project.name
代表应用名(会显示在控制台),ahas.license
代表自己的授权 license(阿里云 region 环境不需要)。
4. 启动应用
接下来我们就可以在本地启动应用了,启动应用时需要加上拿到的启动参数。当应用开始运行后,我们刷新一下控制台页面,就可以在控制台上看到我们的应用了:
若没有在控制台上找到应用,请排查:
- 确保选择了正确的 region(在本地运行或在非阿里云环境运行,要在左上角选择公网环境)
- 确保引入了相应的依赖,并进行了正确的配置
- 确保应用资源有访问量
点击我们的应用卡片,我们就进入到了应用的监控详情页。AHAS Sentinel 控制台的布局和开源 Sentinel 控制台类似,共分为几大块:
- 监控详情(实时监控)
- 请求链路(簇点链路)
- 流控规则
- 降级规则
- 系统规则
- 机器列表
4.1 实时监控
4.1.1 应用概览
应用概览页面展示了应用的限流指标详情、QPS 热力图、集群的平均 CPU 和负载,以及 TOP 形式的请求、流控、响应时间、异常等信息。
详情可以参考 应用概览文档。
4.1.2 监控详情
监控详情页面 展现当前应用中的所有资源的实时监控数据,同时针对机器和资源维度查看历史数据。
操作指南可以参考 监控详情文档。
4.2 请求链路
请求链路页面会展示某个应用在单台机器(实例)上的所有资源以及实时的调用数据。共有两种视图:
- 平铺视图:不区分调用链路关系,平铺展示资源的运行情况。
- 树状视图:根据资源的调用链路关系,展示树状结构。
操作指南可以参考 请求链路文档。
注: 只有当应用中的资源有访问量时,才会显示在请求链路页面。
4.3 机器列表
机器列表页面会展示您的某个应用接入 AHAS Sentinel 控制台的所有实例。当一段时间没有向 AHAS Sentinel 控制台发送心跳时,此实例会自动被标记为失联状态。
4.4 规则管理
AHAS 控制台同时提供完善的动态规则管理以及推送的功能。您无需再配置动态规则源,只需引入 ahas-sentinel-client
依赖即可自动接入云上的配置中心,无需自己配置。
规则管理包括几种规则的页面:流控规则、熔断降级规则、系统保护规则、热点规则。您可以在页面查看、管理规则:
同时您也可以新建/编辑规则,变更后的规则会自动推送到应用端: