View a markdown version of this page

多区域金丝雀 - Amazon CloudWatch

多区域金丝雀

Amazon CloudWatch Synthetics 允许您从单一管理点跨多个 AWS 区域同时运行同一个金丝雀。这些称为多区域金丝雀。您在一个区域(主区域)创建和管理金丝雀,CloudWatch Synthetics 会自动将其复制到您选择的其他区域(副本区域)。所有运行、指标和构件都会整合到主区域,为您提供全球范围内应用程序性能和可用性的统一视图。

使用多区域金丝雀可获得以下优势:

  • 确保一致的用户体验:从世界不同区域运行金丝雀,验证您各地的用户都能获得一致的高质量体验。

  • 建立特定区域的基准:由于网络延迟和数据中心邻近度等因素,每个区域可能具有不同的性能特征。从多个区域运行金丝雀可为每个区域创建性能基准,帮助您区分正常波动与异常情况。

  • 识别区域性能问题:由于网络延迟、ISP 节流或区域中断,各区域的性能和可用性可能存在显著差异。从全球不同区域进行测试有助于精确定位区域特定的瓶颈,而这些瓶颈可能无法从单一区域发现。

  • 验证第三方服务和 CDN:验证第三方依赖项(例如支付处理器、内容分发网络和广告服务)是否在所有区域正常工作。您可以利用这些数据,依据其 SLA 对供应商进行问责。

  • 减少误报:配置仅当从多个区域检测到问题时才触发的警报。这种方法可以避免因孤立的瞬态网络故障而产生不必要的通知,使您的团队能够专注于关键问题。

多区域金丝雀的工作原理

多区域金丝雀采用主模型和副本模型。主区域的金丝雀充当配置的事实来源。CloudWatch Synthetics 会在您选择的区域自动创建副本,每个副本使用相同的脚本、计划和环境变量独立运行。所有变更操作(创建、更新、启动、停止、删除)均在主区域执行,并异步传播到副本。所有区域的运行数据都会整合到主区域。

先决条件

在创建多区域金丝雀之前,请考虑以下要求:

  • 多区域金丝雀需要运行时版本 syn-nodejs-puppeteer-16.0 或更高版本,或 syn-nodejs-playwright-7.0 或更高版本。

  • 在所有 AWS 商业区域提供。在 AWS GovCloud(美国)区域或中国区域不可用。

  • 最多可添加 50 个副本区域。

  • 标签不会复制到副本区域。要向副本添加标签,请导航到副本区域并直接添加标签。

  • 主金丝雀中的环境变量将应用于所有副本。

  • 所有区域都使用相同的脚本和计划。

  • 如果需要 VPC 连接,每个副本都需要自己的 VPC 配置。VPC 设置不会从主区域继承。

  • 成本随副本数量线性增长。每个副本产生的费用与独立金丝雀相同。