配置应用高可用服务AHAS的详细步骤
1. 开通AHAS服务
在使用AHAS之前,需要先开通服务。具体步骤如下: 1. 登录阿里云账号,并完成实名认证(个人或企业)。 2. 打开AHAS开通页面。 3. 在多活容灾模块页面选择相应的类型和规格。 4. 勾选“我已阅读并同意多活容灾服务协议”,然后单击“立即开通”。
2. 接入AHAS应用防护
接入AHAS是配置防护规则的前提条件。以下是不同语言应用的接入方式: - Java应用:支持通过Agent或SAE接入。 - Go应用:通过SDK接入。 - PHP应用:通过SDK接入。
验证接入是否成功: 登录AHAS控制台,选择“流量防护” > “应用防护”。如果出现应用资源卡片且有数据上报,则说明接入成功。
3. 配置基础设置
在接入完成后,需要对应用的基础设置进行配置,以优化防护能力: 1. 设置适配模块: - 在“模块适配设置”区域单击目标应用“操作”列的“修改”。 - 配置以下参数: - Web fallback行为:定义触发流控等规则后的处理逻辑,支持返回指定内容或跳转到指定页面。 - HTTP状态码:默认为429,当限流策略为自定义返回时需填写。 - 返回content-type:设置返回内容格式为普通文本(TEXT)或JSON。 - HTTP返回文本:输入触发规则后返回的内容。 - 跳转URL:输入触发规则后系统跳转的页面URL。 - 单击“确定”保存设置。
- 设置通用配置:
- 在“通用设置”区域单击“修改”。
- 配置以下参数:
- 簇点数目限制:限制埋点资源数,默认6000,建议不超过6000。
- 来源数目限制:限制每个资源下的来源节点数,用于按调用来源限流。
- 入口数目限制:限制入口context数,用于链路限流。
- 最大统计RT:限制统计的最大响应时间,默认为4900 ms。
- 单击“确定”保存设置。
4. 配置防护规则
AHAS提供了多种防护规则,可根据实际需求进行配置:
(1)流控规则
- 作用:限制每秒请求量(QPS),防止系统因瞬时流量高峰而崩溃。
- 配置步骤:
- 登录AHAS控制台,选择地域。
- 选择“流量防护” > “应用防护”,单击目标应用卡片。
- 选择“接口详情”、“应用概览”或“规则设置”页签,点击“新增流控规则”。
- 配置以下参数:
- 接口名称:指定需要限流的接口。
- 来源应用:指定调用来源。
- 统计维度:选择统计方式(如线程数、QPS等)。
- QPS阈值:设置每秒允许的最大请求数。
- 流控效果:选择直接拒绝、排队等待等策略。
- 单击“新建”保存规则。
(2)隔离规则
- 作用:控制接口或依赖的并发线程数,确保系统稳定性。
- 配置步骤:
- 登录AHAS控制台,选择地域。
- 选择“流量防护” > “应用防护”,单击目标应用卡片。
- 选择“应用概览”、“接口详情”或“规则管理”页签,点击“新增隔离规则”。
- 配置以下参数:
- 接口名称:指定需要隔离的接口。
- 来源应用:指定调用来源。
- 统计维度:选择统计方式。
- 并发数阈值:设置允许的最大并发线程数。
- 单击“新建”保存规则。
(3)熔断规则
- 作用:监控应用内部或下游依赖的响应时间和异常比例,避免应用受影响。
- 配置步骤:
- 登录AHAS控制台,选择地域。
- 选择“流量防护” > “应用防护”,单击目标应用卡片。
- 选择“应用概览”页签,点击目标接口操作列中的“熔断”。
- 配置以下参数:
- 接口名称:指定需要熔断的接口。
- 统计窗口时长:设置统计的时间窗口。
- 阈值类型:选择慢调用比例或异常比例。
- 熔断时长:设置熔断持续时间。
- 熔断恢复策略:选择快速恢复或逐步恢复。
- 单击“新建”保存规则。
(4)热点规则
- 作用:限制应用中频繁访问的数据,避免系统不稳定。
- 配置步骤:
- 登录AHAS控制台,选择地域。
- 选择“流量防护” > “应用防护”,单击目标应用卡片。
- 选择“规则管理” > “热点规则”页签,单击“新增热点限流规则”。
- 配置以下参数:
- 接口名称:指定需要限流的接口。
- 统计维度:选择统计方式。
- 统计周期时间:设置统计周期。
- 单机阈值:设置单机允许的最大请求数。
- 流控效果:选择直接拒绝或排队等待。
- 单击“新建”保存规则。
(5)系统规则
- 作用:控制应用的入口流量,确保系统在高负载下稳定运行。
- 配置步骤:
- 登录AHAS控制台,选择地域。
- 选择“流量防护” > “应用防护”,单击目标应用卡片。
- 选择“规则管理” > “自适应流控”页签,关闭自适应流控。
- 单击“新增系统保护规则”,配置以下参数:
- CPU使用率:设置CPU使用率阈值。
- Load:设置系统负载阈值。
- 线程数:设置线程数阈值。
- 入口平均RT:设置入口请求的平均响应时间。
- 入口总QPS:设置入口请求的总QPS。
- 单击“新建”保存规则。
5. 监控与数据分析
配置完成后,可以通过以下功能监控应用的运行状态: - 应用概览:展示应用的限流指标详情,包括请求、流控、响应时间、异常事件等信息。 - 机器监控:查看应用所有节点的详细信息及其QPS、CPU、LOAD等时序图。 - 操作日志:查看应用的操作日志,便于排查问题。
6. 多活容灾配置(可选)
如果需要实现多活容灾,可以参考以下步骤: 1. 配置命名空间: - 登录AHAS控制台,选择“多活容灾” > “基础配置” > “命名空间”。 - 新增命名空间,填写名称并选择业务类型和容灾架构类型。 - 设置路由标提取方式(如Header或Cookie)。 - 添加单元分流规则,例如将ID范围分配到不同的单元(如杭州、北京)。 2. 配置接入层: - 在“异地双活” > “MSFE配置”中新增域名,录入URI并生效。 3. 配置数据层: - 在“异地双活” > “数据层配置”中配置各单元的数据库同步。
注意事项
- 版本要求:确保使用的SDK或Agent版本符合要求(如ahas-sentinel-client为1.5.0及以上,Agent为1.7.1及以上)。
- 重试规则:不建议对致命错误(如Error、ClassNotFoundException等)设置重试规则。
- 幂等性:在配置自动重试规则时,确保操作具有幂等性,避免重复执行导致数据不一致。
通过以上步骤,您可以完成AHAS的配置并有效提升应用的高可用性和稳定性。