本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS 服务的弹性检查
本章详细介绍了 AWS Resilience Hub 为支持的 AWS 服务执行的各种弹性检查,以确保应用程序的弹性状态不受影响。这些检查根据每个应用程序组件()的弹性策略中定义的值来估算恢复时间目标 (RTO) 和恢复点目标 (RPOAppComponent)。评估涵盖不同类型的中断,即应用程序故障、基础设施故障、可用区中断和区域故障。但是,要运行这些检查,您必须向提供相关的 IAM 权限, AWS Resilience Hub 以允许其访问您的资源。要详细了解本章中 AWS Resilience Hub 允许访问您的资源和执行弹性检查所需的 IAM 权限,请参阅AWS 的托管策略 AWS Resilience Hub。
AWS 服务
Amazon Elastic File System
本部分列出了专门针对 Amazon Elastic File System 的所有弹性检查和建议。有关亚马逊弹性文件系统的更多信息,请参阅亚马逊弹性文件系统文档。
文件系统类型
AWS Resilience Hub 检查文件系统类型:区域或单区域。如果基础设施或可用区中断,文件系统类型会影响其弹性。有关文件系统类型的更多信息,请参阅 Amazon EFS 文件系统的可用性和持久性。
文件系统备份
AWS Resilience Hub 检查是否为已部署的文件系统定义了 AWS Backup 计划。此外,它还会验证Cross-Region
备份选项是否已启用,从而确保在您的政策要求时覆盖区域级别的中断。
数据复制
AWS Resilience Hub 检查是否为已部署的文件系统定义了区域内或跨区域 Amazon EFS 数据复制。Amazon EFS 数据复制有助于提高应用程序、基础架构、可用区和区域级别的估计 RTO 和估计 RPO。此外,还 AWS Resilience Hub 会检查它是否与区域内配置相结合 AWS Backup ,以便在应用程序中断时实现文件系统的弹性。
亚马逊 Relational Database Service 和亚马逊 Aurora
本部分列出了专门针对亚马逊关系数据库服务和亚马逊 Aurora 的所有弹性检查和建议。有关亚马逊关系数据库服务和亚马逊 Aurora 的更多信息,请参阅亚马逊关系数据库服务文档。
单可用区部署
AWS Resilience Hub 检查数据库是否作为单个实例部署,如果确定,则表示它不支持辅助实例和只读副本。
多可用区部署
AWS Resilience Hub 检查数据库是使用辅助实例还是只读副本部署。如果数据库使用只读副本部署,则 AWS Resilience Hub 验证数据库是否部署在不同的可用区中,以便在可用区中断时进行故障转移。
备份
AWS Resilience Hub 检查是否在已部署的数据库实例上应用了以下备份功能。
-
AWS Backup 使用自动备份选项进行计划
-
AWS Backup 如果您的政策要求使用跨区域备份副本,则使用跨区域备份副本进行规划
-
第三方备份系统的手动快照
跨区域故障转移
AWS Resilience Hub 检查弹性策略中定义的 RTO 和 RPO 目标,以从区域中断中恢复。此外, AWS Resilience Hub 还可以确定以下跨区域架构以应对区域中断:
-
包含跨区域快照副本的区域内备份
-
另一个区域的只读副本
-
一个 Amazon Aurora 全球数据库,辅助集群位于另一个区域
-
Amazon Aurora 全球数据库,其无头辅助集群位于另一个区域
更快的区域内故障转移
AWS Resilience Hub 在基础设施或可用区中断期间,检查弹性策略中定义的 RTO 和 RPO 目标。此外, AWS Resilience Hub 还可以确定以下区域内架构,以应对应用程序、基础设施和可用区中断:
-
区域内备份
不同可用区中的只读副本
在另一个可用区中具有只读副本的 Aurora 集群
亚马逊关系数据库服务 (Amazon RDS) 的多可用区实例
Amazon RDS 多可用区集群
Amazon RDS 的单个 Amazon RDS 实例,其只读副本位于另一个可用区
Amazon Simple Storage Service
本部分列出了专门针对亚马逊简单存储服务 (Amazon S3) 的所有弹性检查和建议。有关亚马逊 S3 的更多信息,请参阅亚马逊 S3 文档。
版本控制
AWS Resilience Hub 验证 Amazon S3 存储桶是否已配置为启用版本控制。
定时备份
AWS Resilience Hub 检查是否为已部署的亚马逊简单存储服务 (Amazon S3) 存储桶定义了 AWS Backup 计划。此外,如果您的保单要求为区域级中断提供保障,它还会检查是否启用了跨区域备份选项。
Point-in-time 恢复
AWS Resilience Hub 检查弹性策略的 RPO 目标是否需要 point-in-time恢复 (PITR)。但是,PITR 不支持跨区域备份。因此,您可以使用启用跨区域备份选项的现有 AWS Backup 计划计划,或者创建一个新的计划。
数据复制
AWS Resilience Hub 检查是否为已部署的 Amazon S3 存储桶定义了同区域复制 (SRR) 和跨区域复制 (CRR)。Amazon S3 数据复制可改善应用程序、基础设施、可用区和区域级别的估计工作负载 RTO 和估计的工作负载 RPO。此外,它还可以防止对对象进行物理删除,因为删除对象版本不会复制到目标 Amazon S3 存储桶。此外,根据弹性策略中定义的 RTO 目标, AWS Resilience Hub 检查是否应启用 Amazon S3 复制时间控制 (S3 RTC)。此计费功能可在 15 分钟内复制 99.99% 的源存储桶对象。
-
AWS Backup 使用自动备份选项进行计划
-
AWS Backup 如果您的政策要求使用跨区域备份副本,则使用跨区域备份副本进行规划
-
第三方备份系统的手动快照
Amazon DynamoDB
本部分列出了专门针对 Amazon DynamoDB 的所有弹性检查和建议。有关亚马逊 DynamoDB 的更多信息,请参阅亚马逊 Dynam o DB 文档。
定时备份
AWS Resilience Hub 检查是否已经为已部署的表定义了备份。此外,如果您的策略需要覆盖区域级中断,它还会检查是否应为其配置跨区域备份。
Point-in-time 恢复
AWS Resilience Hub 根据弹性策略的 RPO 目标检查是否需要 point-in-time恢复 (PITR)。但是,PITR 不支持跨区域备份。因此,您可以使用启用跨区域备份选项的现有 AWS Backup 计划计划,或者创建一个新的计划。
全局表
AWS Resilience Hub 检查已部署的 Amazon DynamoDB 表是否被定义为在其他区域有一个或多个副本的全局表。设置全局表可以提高区域级别的估计工作负载 RTO 和估计的工作负载 RPO,还可以提供在主动-主动或主动-被动多区域模式下工作的能力。 AWS Backup 或者可以在其中一个区域使用 Amazon DynamoDB PITR 来处理应用程序中断。
Amazon Elastic Compute Cloud
本部分列出了所有针对亚马逊弹性计算云的弹性检查和建议。有关亚马逊弹性计算云的更多信息,请参阅亚马逊弹性计算云文档。
有状态的实例
AWS Resilience Hub 如果满足以下条件之一,则将 Amazon EC2 实例标识为有状态实例:
-
如果至少有一个附加到此实例的亚马逊弹性区块存储 (Amazon EBS) 卷的
DeleteOnTermination
属性设置为 false。 -
如果亚马逊数据生命周期管理器或 AWS Backup 计划已附加到亚马逊 EC2 实例或至少一个亚马逊 EBS 卷。
-
AWS Elastic Disaster Recovery 它用于复制您的 Amazon EC2 实例存储卷。
注意
如果某个 Amazon EC2 实例不符合上述任何标准,则将其 AWS Resilience Hub 视为无状态的 Amazon EC2 实例。
自动扩缩组
AWS Resilience Hub 检查一组无状态的 Amazon EC2 实例。如果发现,建议使用带有多可用区配置的 Auto Scaling 组 (ASG) 进行编排。如果识别出现有 ASG,ARH 将验证它是否已跨多个可用区域进行配置。如果仅使用竞价型 Amazon EC2 实例定义 ASG,则建议使用按需 Amazon EC2 实例来扩充其容量,以提高竞价 Amazon EC2 实例不可用时的弹性。
亚马逊 EC2 舰队
AWS Resilience Hub 识别 Amazon EC2 Fleet 并验证其是否被定义为多可用区部署,以及它是否仅使用 Spot Amazon EC2 实例。将 Amazon EC2 舰队定义为多可用区部署将提高其在可用区中断时的弹性。在竞价型实例不可用时,使用按需实例扩充 Amazon EC2 队列将提高其弹性。
Amazon EBS
本部分列出了专门针对 Amazon EBS 的所有弹性检查和建议。有关亚马逊 EBS 的更多信息,请参阅亚马逊 EBS 文档。
定时备份
AWS Resilience Hub 检查是否为您的 Amazon EBS 卷定义了以下任一或两项。
-
附加到您的亚马逊 EC2实例的特定 Amazon EBS 卷的备份规则。
-
用于为您的亚马逊实例创建由亚马逊 EBS 支持的 AMI 的备份规则。 EC2
-
第三方备份系统的手动快照。
此外,如果您的保单要求为区域级别的中断提供保障,请 AWS Resilience Hub 检查您的备份规则是否启用了跨区域备份选项。
数据备份和复制
AWS Resilience Hub 确定如果满足以下条件之一,则 Amazon EBS 卷被视为有状态卷:
-
如果此亚马逊 EBS 卷的
DeleteOnTermination
属性设置为 false。 -
如果 Amazon Data Lif AWS Backup ecycle Manager 或计划与该亚马逊 EBS 卷或它所连接的亚马逊 EC2 实例相关联。
-
AWS Elastic Disaster Recovery 它用于复制您的 Amazon EC2 实例存储卷。
AWS Lambda
本节列出了所有针对的弹性检查和建议 AWS Lambda。有关的更多信息 AWS Lambda,请参阅AWS Lambda 文档。
客户亚马逊 VPC 访问权限
AWS Resilience Hub 标识连接到 VPC 的 AWS Lambda 函数。 AWS Lambda 连接到不同 AZs 的 Amazon VPC 中的子网,可以在可用区中断时保持功能弹性。
死信队列
AWS Resilience Hub 检查 AWS Lambda 函数是否附加了用于存储失败请求的死信队列 (DLQ)。将 DLQ 附加到 AWS Lambda 函数可以防止请求的数据丢失,并在稍后阶段重试处理失败的请求。
Amazon Elastic Kubernetes Service
本节列出了专门针对亚马逊 Elastic Kubernetes Service(亚马逊 EKS)的所有弹性检查和建议。有关亚马逊 EKS 的更多信息,请参阅亚马逊 EKS 文档。
多可用区部署
AWS Resilience Hub 标识 Pod 部署是否在多个工作节点上运行 AZs。如果您的弹性政策要求在发生区域中断时提供保障,则需要在另一个区域再建一个 Amazon EKS 集群。这个额外的 Amazon EKS 集群还针对在多个工作节点之间分布的 pod 部署进行了验证 AZs。
部署 vs. ReplicaSet
AWS Resilience Hub 检查你是否使用 ReplicaSets 或 pod 对象而不是部署。使用部署替换 ReplicaSets 或 pod 对象可简化软件新版本的 pod 更新,并包含其他有用的功能。
部署维护
AWS Resilience Hub 检查部署中是否使用了以下最佳实践:
-
使用 Pod 中断预算 (PDB) — 使用 PDB 可以对工作负载中可在任何给定时间中断的 pod 数量设置限制,从而提高可用性。
-
用 Amazon EKS 托管节点组替换自我管理的节点组 — 这种替代方案简化了维护期间的工作节点映像更新。
-
支持每次部署的动态 CPU 和内存请求 — 这些请求可帮助 Kubernetes 选择符合 Pod 需求的节点。
-
为所有容器配置存活和就绪探测器 — 配置活跃探测器有助于通过重启无法正常运行的 pod 来提高弹性。配置就绪探测器可以将流量从繁忙的 pod 中转移出来,从而提高可用性。
-
配置 Karpenter、Cluster Autoscaler 或 AWS Fargate — 这些配置允许 Amazon EKS 集群的基础设施增长并满足工作负载需求。
-
配置横向 Pod 自动扩缩器 — 此配置可帮助 Amazon EKS 集群自动扩展工作负载以满足请求处理需求。
Amazon Simple Notification Service
本部分列出了针对亚马逊简单通知服务 (Amazon SNS) Simple Notification Service 的所有弹性检查和建议。有关亚马逊 SNS 的更多信息,请参阅亚马逊 SN S 文档。
主题订阅
AWS Resilience Hub 检查 Amazon SNS 主题是否附有至少 1 个订阅,以确保传入的消息不会丢失。
Amazon Simple Queue Service
本部分列出了针对亚马逊简单队列服务 (Amazon SQS) 的所有弹性检查和建议。有关亚马逊 SQS 的更多信息,请参阅亚马逊 SQ S 文档。
死信队列
AWS Resilience Hub 检查 Amazon SQS 队列是否有与之关联的 DLQ,用于处理无法成功发送给订阅者的消息。
Amazon Elastic Container Service
本部分列出了针对亚马逊弹性容器服务 (Amazon ECS) 的所有弹性检查和建议。有关 Amazon ECS 的更多信息,请参阅亚马逊 ECS 文档。
多可用区部署
AWS Resilience Hub AZs 根据亚马逊或 AWS Fargate 启动类型检查 Amazon ECS 任务 EC2 或服务是否以多个方式运行。如果您的保单需要为区域中断提供保障,则需要在另一个区域再建一个 Amazon ECS 集群。此外,还会验证附加集群是否能够以多个方式执行任务或服务 AZs。
Elastic Load Balancing
本节列出了所有针对 Elastic Load Balancing 的弹性检查和建议。有关 Elastic Load Balancing 的更多信息,请参阅 Elastic Load Balancing 文档。
多可用区部署
AWS Resilience Hub 检查 Elastic Load Balancing 是否以多个模式运行 AZs。
如果您的保单需要为区域中断提供保障,则需要在其他地区额外购买 Elastic Load Balancing。位于不同区域的额外 Elastic Load Balancing 也经过了多重部署的验证 AZs。
Amazon API Gateway
本部分列出了专门针对 Amazon API Gateway 的所有弹性检查和建议。有关亚马逊 API Gateway 的更多信息,请参阅亚马逊 API Gateway 文档。
跨区域部署
如果您的政策需要考虑区域中断, AWS Resilience Hub 将检查是否在其他地区额外部署了 Amazon API Gateway API 资源。
私有 API 多可用区部署
AWS Resilience Hub 检查您的 API 是否在 Amazon API Gateway 中被定义为私有。Private APIs 应通过部署到多个的 Amazon VPC 接口终端节点接收流量 AZs。
Amazon DocumentDB
本部分列出了专门针对亚马逊 DocumentDB 的所有检查和建议。有关亚马逊 DocumentDB 的更多信息,请参阅亚马逊 Document DB 文档。
多可用区部署
AWS Resilience Hub 检查 Amazon DocumentDB 集群是否以多个方式部署。 AZs如果您的保单要求为区域中断提供保障,则需要在其他地区增加辅助的 Amazon DocumentDB 集群。位于不同区域的其他 Amazon DocumentDB 集群也经过了多重执行验证。 AZs
弹性集群和多可用区部署
AWS Resilience Hub 检查 Amazon DocumentDB 弹性集群分片是否使用部署在不同环境中的只读副本。 AZs
弹性集群和手动快照
AWS Resilience Hub 检查是否定期为 Amazon DocumentDB 弹性集群创建手动快照。手动快照允许更长的持续时间,并且可以灵活地设置快照频率以满足您的业务需求。
NAT 网关
本部分列出了特定于 NAT 网关的所有检查和建议。有关 NAT 网关的更多信息,请参阅 NAT 网关。
多可用区部署
AWS Resilience Hub 检查 NAT 网关是否以多个方式部署 AZs。如果您的保单要求为区域中断提供保障,则需要在其他区域部署额外的 NAT 网关。位于不同区域的其他 NAT 网关也经过验证,可以将其部署在多个区域 AZs。
Amazon Route 53
本部分列出了专门针对 Amazon Route 53 的所有检查和建议。有关亚马逊 Route 53 的更多信息,请参阅亚马逊 Route 53 文档。
多可用区部署
AWS Resilience Hub 检查 Amazon Route 53 托管区域记录是否在同一区域中定义了多个目标,以及这些目标是否部署在多个目标中 AZs。如果您的政策要求覆盖区域中断,请 AWS Resilience Hub 检查 Amazon Route 53 托管区域记录是否在多个区域中定义,每个区域都有多个目标,以及这些目标是否部署在多个中 AZs。
Amazon 应用程序恢复控制器 (ARC)
本部分列出了针对亚马逊应用程序恢复控制器 (ARC) (ARC) 的所有检查和建议。有关 ARC 的更多信息,请参阅 ARC 文档。
多可用区部署
AWS Resilience Hub 检查是否在多个区域部署了类似的资源,并建议将定义 ARC 准备情况检查作为最佳实践,以在区域中断时提高其可用性和就绪性。您将收到通知,您将产生额外的每小时费用。
FSx 适用于 Windows 文件服务器的亚马逊
本部分列出了 FSx 针对亚马逊 Windows 文件服务器的所有检查和建议。有关亚马逊 Windows 文件服务器版 FSx 的更多信息,请参阅亚马逊 FSx Windows 文件服务器版文档。
文件系统类型
AWS Resilience Hub 检查文件系统类型:Regional
或One Zone
。如果基础设施或可用区中断,文件系统类型会影响其弹性。有关文件系统类型的更多信息,请参阅 Amazon EFS。
文件系统备份
AWS Resilience Hub 检查是否 AWS Backup 为已部署的文件系统定义了。此外,如果您的保单要求为地区级别的中断提供保障,它还会检查该cross-Region backup
选项是否已启用。
数据复制
AWS Resilience Hub 检查是否为已部署的文件系统定义了区域内或跨区域定时 AWS DataSync 数据复制任务。
AWS DataSync 计划的数据复制任务可以改善基础设施、可用区和区域级别的估计工作负载 RTO 和估计的工作负载 RPO。此外,它可以与区域内结合使用 AWS Backup ,以便在应用程序中断时进行恢复。
AWS Step Functions
本部分列出了特定于的所有检查和建议 AWS Step Functions。有关的更多信息 AWS Step Functions,请参阅AWS Step Functions 文档。
版本控制和别名
AWS Resilience Hub 检查 AWS Step Functions 工作流是否使用版本控制和别名来缩短重新部署时间。
跨区域部署
AWS Resilience Hub 检查是否 AWS Step Functions 将相同工作流程类型的工作流部署在不同的区域,以便在区域中断时恢复。
亚马逊 ElastiCache (Redis OSS)
本部分列出了针对亚马逊 ElastiCache (Redis OSS)的所有检查和建议。
有关亚马逊 ElastiCache (Redis OSS)的更多信息,请参阅亚马逊 ElastiCache 文档。
单可用区部署
AWS Resilience Hub 检查 Amazon ElastiCache (Redis OSS) 集群是作为单个节点部署还是将其所有节点部署在单个可用区中。
单可用区部署
AWS Resilience Hub 验证是否将 Amazon ElastiCache (Redis OSS) 集群部署为跨多个可用区的复制组(启用集群模式和已禁用集群模式的集群),以便在可用区中断时进行故障转移。
跨区域故障转移
AWS Resilience Hub 检查弹性策略中定义的 RTO 和 RPO 目标,以从区域中断中恢复。此外, AWS Resilience Hub 还可以识别部署在多个区域的亚马逊 ElastiCache (Redis OSS) 全球数据存储集群。
备份
AWS Resilience Hub 检查以下备份功能是否应用于已部署的 Amazon ElastiCache (Redis OSS) 或自行设计的集群:
-
自动备份
-
第三方备份系统的手动备份
AWS Resilience Hub 如果您不使用备份,则不建议将备份作为恢复方法。但是,如果数据不一致,则可以重置缓存层,并从主存储中重新创建数据。
更快的区域内故障转移
AWS Resilience Hub 在基础设施或可用区中断期间,检查弹性策略中定义的 RTO 和 RPO 目标。此外, AWS Resilience Hub 还可以识别以下区域内架构,以便从基础设施和可用区中断中恢复:
-
集群模式不同可用区中的辅助备用节点实例禁用类型的 Amazon ElastiCache (Redis OSS) 集群。
-
对于启用集群模式的 Amazon ElastiCache (Redis OSS) 集群,每个分片在不同的可用区中的辅助备用节点实例。