

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 描述和管理 AWS Resilience Hub 应用程序
<a name="applications"></a>

 AWS Resilience Hub 应用程序是一组 AWS 资源，其结构旨在防止和恢复 AWS 应用程序中断。

要描述 AWS Resilience Hub 应用程序，您需要提供应用程序名称、来自一个或多个 CloudFormation 堆栈的资源以及相应的弹性策略。您也可以使用任何现有的 AWS Resilience Hub 应用程序作为模板来描述您的应用程序。

描述 AWS Resilience Hub 应用程序后，必须发布该应用程序，这样才能对其进行弹性评估。然后，您可以使用评估建议来提高弹性，方法是运行另一项评估，将两项评估的结果进行比较，然后重复该流程，直到估计的工作负载 RTO 和估计的工作负载 RPO 达到 RTO 和 RPO 目标为止。

要查看 “**应用程序**” 页面，请从导航窗格中选择 “**应用程序**”。您可以通过以下方式在 “**应用程序**” 页面中识别您的应用程序：
+ **名称** — 您在 AWS Resilience Hub中指定应用程序名称时所提供的名称。
+ **描述** — 您在 AWS Resilience Hub中指定应用程序描述时所提供的描述。
+ **合规性状态**- AWS Resilience Hub 将应用程序状态设置为 “已**评估**”、“**未评估**”、“**违反策略**” 或 “**检测到更改**”。
  + 已@@ **评估**- AWS Resilience Hub 已评估您的申请。
  + **未评估**- AWS Resilience Hub 尚未评估您的申请。
  + **违反策略**- AWS Resilience Hub 已确定您的应用程序未达到弹性策略的恢复时间目标 (RTO) 和恢复点目标 (RPO) 目标。在重新评估您的弹性申请 AWS Resilience Hub 之前，请查看并使用提供的建议。有关建议的更多信息，请参阅 [将应用程序添加到 AWS Resilience Hub](describe-applicationlication.md)。
  + **检测到的更改**- AWS Resilience Hub 已检测到对与您的应用程序关联的弹性策略所做的更改。您必须重新评估您的应用程序 AWS Resilience Hub ，以确定您的应用程序是否符合弹性策略的目标。
+ **按时间表评估** — 资源类型标识了应用程序的组件资源。有关按时间表评估的更多信息，请参阅 [应用程序弹性](view-app-summary.md)。
  + **处于活动状态** — 表示 AWS Resilience Hub每天自动评估您的应用程序。
  + **已禁用**-这表示不会每天自动评估您的应用程序 AWS Resilience Hub ，您必须手动评估您的应用程序。
+ **偏移状态** - 指示您的应用程序是否偏离了上一次成功的评测，并设置以下状态之一：
  + **已偏差** — 表示应用程序在之前的成功评估中符合其弹性策略，但现在已经违反了弹性策略，该应用程序目前存在风险。此外，它还表明是否添加或移除了当前应用程序版本中包含的输入源中的资源。
  + **未偏差** — 表示预计应用程序仍能达到策略中定义的 RTO 和 RPO 目标。此外，它还表明未添加或移除当前应用程序版本中包含的输入源中的资源。
+ **估计的工作负载 RTO** — 表示应用程序可能的最大估计的工作负载 RTO。此值是自上次成功评估以来所有中断类型的最大估计的工作负载 RTO。
+ **估计的工作负载 RPO** — 表示应用程序可能的最大估计的工作负载 RPO。此值是自上次成功评估以来所有中断类型的最大估计的工作负载 RTO。
+ **上次评估时间** — 指示上次成功评估您的应用程序的日期和时间。
+ **创建时间** — 创建应用程序的日期和时间。
+ **ARN** — 应用程序的 Amazon 资源名称（ARN）。有关更多信息 ARNs，请参阅《*AWS 一般参考*》中的 [Amazon 资源名称 (ARNs)](https://docs.aws.amazon.com//general/latest/gr/aws-arns-and-namespaces.html)。

**注意**  
AWS Resilience Hub 只有当您将 Amazon ECR 用于映像存储库时，才能全面评估跨区域 Amazon ECS 资源的弹性。

此外，您还可以使用**应用程序**页面中的以下选项之一来筛选应用程序列表：
+ **查找应用程序** — 输入您的应用程序名称，以按应用程序名称筛选结果。
+ **按日期和时间范围筛选上次评估时间** — 要应用此筛选条件，请选择日历图标并选择以下选项之一，以按与时间范围匹配的结果进行筛选：
  + **相对范围** — 选择可用选项之一，然后选择**应用**。

    如果选择**自定义范围**选项，请在**输入持续时间**框中输入持续时间，然后从**时间单位**下拉列表中选择相应的时间单位，然后选择**应用**。
  + **绝对范围** — 要指定日期和时间范围，请提供开始时间和结束时间，然后选择**应用**。

以下主题显示了描述 AWS Resilience Hub 应用程序的不同方法以及如何管理它们。

**Topics**
+ [查看 AWS Resilience Hub 应用程序摘要](view-app-summary.md)
+ [编辑 AWS Resilience Hub 应用程序资源](application-resources.md)
+ [管理应用程序组件](AppComponent.md)
+ [发布新的 AWS Resilience Hub 应用程序版本](applications-publish.md)
+ [查看所有 AWS Resilience Hub 应用程序版本](view-application-version.md)
+ [查看 AWS Resilience Hub 应用程序的资源](view-resources.md)
+ [删除 AWS Resilience Hub 应用程序](applications-delete.md)
+ [应用程序配置参数](app-config.md)

# 查看 AWS Resilience Hub 应用程序摘要
<a name="view-app-summary"></a>

 AWS Resilience Hub 控制台中的应用程序摘要页面概述了您的应用程序信息和弹性运行状况。

**查看应用程序摘要**

1. 从导航窗格中选择 “**应用程序**”。

1. 在**应用程序**页面上，选择要查看的应用程序的名称。

应用程序摘要页面包含以下部分。

**Topics**
+ [评估摘要](#view-assessment-summary-resiliency)
+ [摘要](#view-app-summary-resiliency)
+ [应用程序弹性](#view-app-resiliency)
+ [已实施的警报](#view-app-alarms)
+ [已实施的实验](#view-app-experiments)

## 评估摘要
<a name="view-assessment-summary-resiliency"></a>

本节概述了上次成功的评估，并重点介绍了作为可操作见解的关键建议。 AWS Resilience Hub 使用 Amazon Bedrock 生成式 AI 功能来帮助用户将注意力集中在由 AWS Resilience Hub提供的最关键的弹性建议上。通过关注关键项目，您可以专注于提高应用程序弹性状况的最关键建议。选择一项建议以查看其摘要，然后选择**查看详细**信息以在评估报告的相关部分中查看有关建议的更多详细信息。有关审阅评估报告的更多信息，请参阅[查看评估报告](review-assessment.md)。

**注意**  
此评估摘要仅在美国东部（弗吉尼亚北部）地区提供。
由 Amazon Bedrock 上的大型语言模型 (LLMs) 生成的评估摘要只是建议。当前的生成式人工智能技术水平并不完美，也不是万无一失 LLMs 的。偏见和错误答案虽然很少见，但应该预料到。在使用法学硕士的输出之前，请先查看**评估摘要**中的每项建议。

## 摘要
<a name="view-app-summary-resiliency"></a>

本节在以下各节中提供了所选应用程序的摘要：
+ **应用程序信息**-本节提供有关所选应用程序的以下信息：
  + **应用程序状态**-表示应用程序的状态。
  + **描述**-应用程序的描述。
  + **版本**-表示应用程序当前评估的版本。
  + **弹性策略**-表示附加到应用程序的弹性策略。有关弹性策略的更多信息，请参阅 [管理弹性策略](resiliency-policies.md)。
+ **应用程序漂移** — 本节重点介绍在对所选应用程序进行评估以检查其是否符合其弹性策略时检测到的偏差。此外，它还会检查自上次发布应用程序版本以来是否添加或删除了任何资源。此部分显示以下信息：
  + **政策偏差** — 选择下面的数字可查看在上一次评估中符合政策但在当前评估中未符合政策的所有应用程序组件。
  + **资源漂移** — 选择下面的数字以查看最新评估中的所有漂移资源。

## 应用程序弹性
<a name="view-app-resiliency"></a>

**弹性分数**部分中显示的指标来自该应用程序的最新弹性评估。

**弹性得分**

弹性得分可帮助您对是否准备好应对潜在中断进行量化。该分数反映了您的应用程序对满足应用程序弹性策略、警报、标准操作程序 (SOPs) 和测试的 AWS Resilience Hub 建议的遵守程度。

您的应用程序可以达到的最大弹性得分为 100%。评分代表了预定义的时间段内运行的所有建议测试。它表示测试正在启动正确的警报，并且警报启动了正确的 SOP。

例如，假设 AWS Resilience Hub 建议使用一个警报和一个 SOP 进行一次测试。当测试运行时，警报会启动关联的 SOP，则表示运行成功。有关弹性得分的更多信息，请参阅 [了解弹性分数](resil-score.md)。

## 已实施的警报
<a name="view-app-alarms"></a>

应用程序摘要**已实施警报**部分列出了您在 Amazon 中 CloudWatch 为监控应用程序而设置的警报。有关警报的更多信息，请参阅 [管理警报](alarms.md)。

## 已实施的实验
<a name="view-app-experiments"></a>

应用程序摘要中的**错误注入实验**部分显示了错误注入实验的列表。有关错误注入实验的更多信息，请参阅 [管理 AWS Fault Injection Service 实验](testing.md)。

# 编辑 AWS Resilience Hub 应用程序资源
<a name="application-resources"></a>

要获得准确而有用的弹性评估，请确保更新您的应用程序描述并与您的实际 AWS 应用程序和资源相匹配。评测报告、验证和建议均基于列出的资源。如果您在 AWS 应用程序中添加或移除资源，则应在中反映这些更改 AWS Resilience Hub。

AWS Resilience Hub 提供有关应用程序来源的透明度。您可以识别和编辑应用程序中的资源和应用程序源。

**注意**  
编辑资源只会修改应用程序的 AWS Resilience Hub 引用。不会对您的实际资源进行任何更改。

您可以添加缺失的资源、修改现有资源或移除不需要的资源。资源分组为逻辑应用程序组件 (AppComponents)。您可以编辑 AppComponents 以更好地反映应用程序的结构。

通过编辑应用程序的草稿版本并将更改发布到新（发布）版本来添加或更新您的应用程序资源。 AWS Resilience Hub 使用应用程序的发布版本（包括更新的资源）来运行弹性评估。

**评测应用程序的弹性**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择您要编辑的应用程序的名称。

1. 从**操作**菜单中选择**评测弹性**。

1. 在**运行弹性评测**对话框中，输入报告的唯一名称或使用**报告名称**框中生成的名称。

1. 选择**运行**。

1. 收到评测报告已生成的通知后，选择**评测**选项卡和您的评测以查看报告。

1. 选择**查看**选项卡以查看您的应用程序的评测报告。

**启用预设评估**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择要为其启用预设评估的应用程序。

1. 打开 “**每天自动评估**”。

**禁用预设评估**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择要为其启用预设评估的应用程序。

1. 关闭 “**每天自动评估**”。
**注意**  
禁用预定评估将禁用偏差通知。

1. 选择**关闭**。

**为您的应用程序启用漂移通知**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择要为其启用偏差通知或编辑漂移通知设置的应用程序。

1. 您可以通过选择以下选项之一来编辑漂移通知：
   + 从 “**操作**” 中选择 “**启用偏移通知**”。
   + 在 “**应用程序漂移**” 部分中选择 “**启用通知**”。

1. 完成中的步骤[设置预定评测和偏移通知](scheduled-assessment.md)，然后返回此过程。

1. 请选择**启用**。

   启用漂移通知也将启用预定评估。

**编辑应用程序的偏移通知**
**注意**  
如果您启用了计划评估（开启了**每日自动评估**）和偏差通知，则此程序适用。

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择要为其启用偏差通知或编辑漂移通知设置的应用程序。

1. 您可以通过选择以下选项之一来编辑漂移通知：
   + 在**操作**中，选择**编辑偏移通知**。
   + 在 “**应用程序漂移**” 部分中选择 **“编辑通知**”。

1. 完成中的步骤[设置预定评测和偏移通知](scheduled-assessment.md)，然后返回此过程。

1. 选择**保存**。

**更新应用程序的安全权限**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择要更新其安全权限的应用程序。

1. 从**操作**中，选择**更新权限**。

1. 要更新安全权限，请完成 [设置权限](setup-permissions.md) 中的步骤，然后返回到此过程。

1. 选择**保存并更新**。

**要将弹性策略附加到您的应用程序**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择您要编辑的应用程序的名称。

1. 从**操作**菜单中，选择**附加弹性策略**。

1. 在**附加策略**对话框中，从**选择弹性策略**下拉列表中选择弹性策略。

1. 选择 **附加**。

**编辑输入源、资源和应用程序 AppComponents 的输入源**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择您要编辑的应用程序的名称。

1. 选择**应用程序结构**选项卡。

1. 在**版本**前选择加号 **\$1**，然后选择处于**草稿**状态的应用程序版本。

1. 要编辑输入源、资源和应用程序 AppComponents 的输入源，请完成以下过程中的步骤。

**要编辑应用程序的输入源**

1. 要编辑应用程序的输入源，请选择**输入源**选项卡。

   **输入源**部分列出了您的应用程序资源的所有输入源。您可以通过以下方式识别输入源：
   + **源名称** – 输入源的名称。选择源名称以在相应的应用程序中查看其详细信息。对于手动添加的输入源，该链接将不可用。例如，如果您选择从 AWS CloudFormation 堆栈导入的源名称，您将被重定向到 AWS CloudFormation 控制台上的堆栈详细信息页面。
   + **源 ARN** – 输入源的 Amazon 资源名称（ARN）。选择 ARN 以在相应的应用程序中查看其详细信息。对于手动添加的输入源，该链接将不可用。例如，如果您选择从 AWS CloudFormation 堆栈导入的 ARN，您将被重定向到 AWS CloudFormation 控制台上的堆栈详情页面。
   + **源类型** - 输入源的类型。输入源包括 Amazon EKS 集群、 AWS CloudFormation 堆栈、MyApplications 应用程序 AWS Resource Groups、Terraform 状态文件和手动添加的资源。
   + **关联资源** - 与输入源关联的资源数量。在**资源**选项卡中选择一个数字，即可查看输入源的所有关联资源。

1. 要向应用程序添加输入源，请从**输入源**部分中选择**添加输入源**。有关添加社交 IdP 的更多信息，请参阅[添加资源集合](discover-structure.md)。

1. 要编辑输入源，请选择“输入源”，然后从**操作**中选择以下选项之一：
   + **重新导入输入源（最多 5 个）** - 最多重新导入五个选定的输入源。
   + **删除输入源** - 删除选定的输入源。

     要发布应用程序，则应用程序必须至少包含一个输入源。如果删除所有输入源，则将禁用**发布新版本**。

**编辑应用程序的资源**

1. 要编辑应用程序的资源，请选择**资源**选项卡。
**注意**  
要查看未评测的资源列表，请选择**查看未评测的资源**。

   **资源**部分列出了您选择用作应用程序描述模板的应用程序资源。为了增强您的搜索体验，我们根据多个搜索条件对资源 AWS Resilience Hub 进行了分组。这些搜索条件包括 AppComponent 类型、**不支持的**资源和**排除**的资源。要根据资源表中的搜索条件筛选**资源**，请选择每个搜索条件下方的数字。

   您可以按前缀识别这些资源：
   + **逻辑 ID** — 逻辑 ID 是用于识别 AWS CloudFormation 堆栈、Terraform 状态文件、手动添加的应用程序、MyApplications 应用程序或中的资源的名称。 AWS Resource Groups
**注意**  
Terraform 允许您对不同的资源类型使用相同的名称。因此，对于共享相同名称的资源，您会在逻辑 ID 的末尾看到“*- 资源类型*”。
要查看所有应用程序资源的实例，请选择**逻辑 ID** 前的加号（**\$1**）。要查看应用程序资源的所有实例，请选择每个资源的“逻辑 ID”前的加号（**\$1**）。  
有关支持的资源类型的更多信息，请参阅 [AWS Resilience Hub 支持的资源](supported-resources.md)。
   + **资源类型** - 资源类型标识应用程序的组件资源。例如，`AWS::EC2::Instance`声明一个 Amazon EC2 实例。有关对 AppComponent 资源进行分组的更多信息，请参阅[在应用程序组件中对资源进行分组](AppComponent.grouping.md)。
   + **源名称** – 输入源的名称。选择源名称以在相应的应用程序中查看其详细信息。对于手动添加的输入源，该链接将不可用。例如，如果您选择从 AWS CloudFormation 堆栈导入的源名称，则系统会将您重定向到上的堆栈详细信息页面 AWS CloudFormation。
   + **源类型** - 输入源的类型。输入源包括 AWS CloudFormation 堆栈、MyApplications 应用程序 AWS Resource Groups、Terraform 状态文件和手动添加的资源。
**注意**  
要编辑您的 Amazon EKS 集群，请完成**要编辑 AWS Resilience Hub 应用程序的输入源**过程中的步骤。
   + **源堆栈**-包含资源的 AWS CloudFormation 堆栈。此列取决于您选择的应用程序结构的类型。
   + **物理 ID** — 为该资源实际分配的标识符，例如 Amazon EC2 实例 ID 或 S3 存储桶名称。
   + **已包含** — 指示 AWS Resilience Hub 是否将这些资源包含在应用程序中。
   + **可评测** – 这表示 AWS Resilience Hub 是否会评测您的资源的弹性。
   + **AppComponents**— 在发现该资源的应用程序结构时分配给该资源的 AWS Resilience Hub 组件。
   + **名称** — 应用程序资源的名称。
   + **帐户**-拥有物理资源的 AWS 帐户。

1. 要查找未列出的资源，请在搜索框中输入资源逻辑 ID。

1. 要从应用程序中删除资源，请选择该资源，然后从**操作**中选择**排除资源**。

1. 要解析应用程序上的资源，请选择**刷新资源**。

1. 要修改现有的应用程序资源，请完成以下步骤：

   1. 选择资源，然后从**操作**中选择**更新堆栈**。

   1. 在**更新堆栈**页面中，要更新您的资源，请完成 [添加资源集合](discover-structure.md) 中的相应步骤，然后返回到此过程。

   1. 选择**保存**。

1. 要向应用程序添加资源，请从**操作**中选择**添加资源**，然后完成以下步骤：

   1. 从**资源类型**下拉列表中，选择至少一种资源类型。

   1.  AppComponent 从下**AppComponent**拉列表中选择一个。

   1. 在**资源名称**框中输入资源逻辑 ID。

   1. 在**资源标识符**框中输入物理资源 ID、资源名称或资源 ARN。

   1. 选择 **添加**。

1. 要编辑资源名称，请选择一个资源，从**操作**中选择**编辑资源名称**，然后完成以下步骤：

   1. 在**资源名称**框中输入资源逻辑 ID。

   1. 选择**保存**。

1. 要编辑资源标识符，请选择一个资源，从**操作**中选择**编辑资源标识符**，然后完成以下步骤：

   1. 在**资源标识符**框中输入物理资源 ID、资源名称或资源 ARN。

   1. 选择**保存**。

1. 要更改 AppComponent，请选择资源， AppComponent从 “**操作**” 中选择 “**更改**”，然后完成以下步骤：

   1.  AppComponent 从下**AppComponent**拉列表中选择一个。

   1. 选择 **添加**。

1. 要删除资源，请选择一个资源，然后从**操作**中选择**删除资源**。

1. 要包含资源，请选择资源，然后从**操作**中选择**包含资源**。

**编辑您的应用程序的 AppComponents**

1. 要编辑您的应用程序，请选择该**AppComponents**选项卡。 AppComponents 
**注意**  
有关对 AppComponent 资源进行分组的更多信息，请参阅[在应用程序组件中对资源进行分组](AppComponent.grouping.md)。

   该**AppComponents**部分列出了资源归入的所有逻辑组件。您可以 AppComponents 通过以下方式识别：
   + **AppComponent nam** e — 在发现该资源的应用程序结构时分配给该资源的 AWS Resilience Hub 组件的名称。
   + **AppComponent t** ype — AWS Resilience Hub 组件的类型。
   + **源名称** – 输入源的名称。选择源名称以在相应的应用程序中查看其详细信息。例如，如果您选择了从 AWS CloudFormation 堆栈导入的源名称，系统会将您重定向到 AWS CloudFormation上的堆栈详细信息页面。
   + **资源计数** - 与输入源关联的资源数量。在**资源**选项卡中选择一个数字，即可查看输入源的所有关联资源。

1. 要创建 AppComponent，请从 “**操作**” 菜单中选择 “**新建**”， AppComponent然后完成以下步骤：

   1. 在名称框 AppComponent 中输入的**AppComponent名称**。作为参考，我们在此字段中预先填充了示例名称。

   1. 从 “类型” 下拉列表中选择**AppComponent类型**。 AppComponent 

   1. 选择**保存**。

1. 要编辑 AppComponent，请选择一个 AppComponent，然后 AppComponent从 “**操作**” 中选择 **“编辑”**。

1. 要删除 AppComponent，请选择一个 AppComponent，然后选择 AppComponent从**操作**中**删除**。

对资源列表进行更改后，您将收到一条警报，表明已对您的应用程序的草稿版本进行了更改。要运行准确的弹性评测，您必须发布新版本的应用程序。有关如何发布新版本的更多信息，请参阅 [发布新的 AWS Resilience Hub 应用程序版本](applications-publish.md)。

# 管理应用程序组件
<a name="AppComponent"></a>

应用程序组件 (AppComponent) 是一组相关 AWS 资源，它们作为一个单元起作用和失败。例如，如果您有主数据库和副本数据库，则这两个数据库属于同一个数据库 AppComponent。 AWS Resilience Hub 有管理哪些 AWS 资源可以属于哪 AppComponent 种类型的规则。例如，`DBInstance`可以属于`AWS::ResilienceHub::DatabaseAppComponent`而不是`AWS::ResilienceHub::ComputeAppComponent`。

它们 AWS Resilience Hub AppComponents 支持以下资源：
+ `AWS::ResilienceHub::ComputeAppComponent`
  + `AWS::ApiGateway::RestApi`
  + `AWS::ApiGatewayV2::Api`
  + `AWS::AutoScaling::AutoScalingGroup`
  + `AWS::EC2::Instance`
  + `AWS::ECS::Service`
  + `AWS::EKS::Deployment`
  + `AWS::EKS::ReplicaSet`
  + `AWS::EKS::Pod`
  + `AWS::Lambda::Function`
  + `AWS::StepFunctions::StateMachine`
+ `AWS::ResilienceHub::DatabaseAppComponent`
  + `AWS::DocDB::DBCluster`
  + `AWS::DynamoDB::Table`
  + `AWS::ElastiCache::CacheCluster`
  + `AWS::ElastiCache::GlobalReplicationGroup`
  + `AWS::ElastiCache::ReplicationGroup`
  + `AWS::ElastiCache::ServerlessCache`
  + `AWS::RDS::DBCluster`
  + `AWS::RDS::DBInstance`
+ `AWS::ResilienceHub::NetworkingAppComponent`
  + `AWS::EC2::NatGateway`
  + `AWS::ElasticLoadBalancing::LoadBalancer`
  + `AWS::ElasticLoadBalancingV2::LoadBalancer`
  + `AWS::Route53::RecordSet`
+ `AWS:ResilienceHub::NotificationAppComponent`
  + `AWS::SNS::Topic`
+ `AWS::ResilienceHub::QueueAppComponent`
  + `AWS::SQS::Queue`
+ `AWS::ResilienceHub::StorageAppComponent`
  + `AWS::Backup::BackupPlan`
  + `AWS::EC2::Volume`
  + `AWS::EFS::FileSystem`
  + `AWS::FSx::FileSystem`
**注意**  
目前，仅 AWS Resilience Hub 支持 Amazon FSx for Windows 文件服务器。
  + `AWS::S3::Bucket`

**Topics**
+ [在应用程序组件中对资源进行分组](AppComponent.grouping.md)

# 在应用程序组件中对资源进行分组
<a name="AppComponent.grouping"></a>

将应用程序及其资源导入 AWS Resilience Hub 时，在导入应用程序 AppComponent 时 AWS Resilience Hub 会尽最大努力将相关资源分组为相同的资源，但是分组可能并不总是百分之百准确。由于这些服务具有严格的依赖关系，需要特定的分组配置，因此某些资源会被阻止进行手动分组，因此在适用时会自动进行分组。有关被阻止进行手动分组的服务的完整列表，请参阅[已屏蔽用于手动分组的服务](blocked-services-for-manual-grouping.md)。

AWS Resilience Hub 成功导入应用程序及其资源后，将执行以下活动：
+ 扫描您的资源以检查是否可以将其重新分组为新资源 AppComponents以提高评估的准确性。
+ 如果 AWS Resilience Hub 确定了可以重新分组为新资源的资源 AppComponents，则它会显示与推荐相同的资源，并允许您接受或拒绝相同的资源。在中 AWS Resilience Hub，分配给分组建议的置信度表示应根据资源的属性和元数据对资源进行分组的确定程度。**高置信度**表示 AWS Resilience Hub 置信度为 90% 或以上，表示该组中的资源是相关的，应组合在一起。中**等置信度表示 AWS Resilience Hub 置信度介**于 70% 和 90% 之间，表示该组中的资源是相关的，应组合在一起。

**注意**  
AWS Resilience Hub 需要正确的分组，以便它可以计算估计的工作负载 RTO 和估计的工作负载 RPO 以生成建议。

以下是正确分组的示例：
+ 将主数据库和副本分组到一个 AppComponent数据库下。
+ 将运行相同应用程序的 Amazon EC2 实例分组到一个实例下 AppComponent。
+ 将一个区域的 Amazon ECS 服务分组到一个区域，将另一个区域的 Amazon ECS 服务故障转移到一个区域下 AppComponent。

有关通过查看和包括资源分组建议的更多信息 AWS Resilience Hub，请参阅以下主题：
+ [AWS Resilience Hub 资源分组建议](grouping-recommendation.md)
+ [手动将资源分组为 AppComponent](AppComponent-manual-grouping.md)

# 已屏蔽用于手动分组的服务
<a name="blocked-services-for-manual-grouping"></a>

AWS Resilience Hub 阻止您手动对某些 AWS 服务的资源进行分组，以防止出现可能影响应用程序弹性评估和建议的配置错误。这些服务会根据其依赖关系和配置自动分组。当您定义包含这些资源的应用程序时 AWS Resilience Hub，它会分析它们的关系、依赖关系和弹性要求，以创建最佳分组，从而确保准确的评估结果。

因手动分组而被屏蔽的 AWS 服务列表：
+ Amazon API Gateway
+ Amazon DocumentDB
+ Amazon DynamoDB
+ Amazon Elastic Block Store
+ Amazon Elastic File System
+ Amazon Relational Database Service
+ Amazon S3
+ Amazon Simple Queue Service
+ FSx 适用于 Windows 文件服务器
+ NAT 网关

# AWS Resilience Hub 资源分组建议
<a name="grouping-recommendation"></a>

本节介绍如何在中生成和查看资源分组建议 AWS Resilience Hub。

**注意**  
您可以使用`AWSResilienceHubAsssessmentExecutionPolicy` AWS 托管策略授予使用所需的必要 IAM 权限。 AWS Resilience Hub 有关 AWS 托管策略的更多信息，请参阅[AWSResilienceHubAsssessmentExecutionPolicy](security-iam-awsmanpol.md#security_iam_aws-assessment-policy)。<a name="view-resource-grouping"></a>

**查看资源分组建议**

1. 在导航窗格中，选择 **应用程序**。

1. 选择**添加应用程序**页面，选择要查看其资源分组建议的应用程序名称。

1. 选择**应用程序结构**选项卡。

1. 如果 AWS Resilience Hub 显示信息提醒，请选择**查看建议**以查看所有资源分组建议。否则，请完成以下步骤以手动生成资源分组建议：

   1. 选择**资源**。

   1. 从 “**操作**” 菜单中选择 “**获取分组建议**”。

      AWS Resilience Hub 扫描您的资源，以检查如何以最佳方式将其分组为相关资源 AppComponents ，从而提高评估的准确性。如果 AWS Resilience Hub 得知您的资源可以分组在一起，则会显示相同资源的信息提醒。

   1. 如果显示信息警报，请选择**查看建议**以查看所有资源分组建议。

   您可以使用以下方法 AppComponents 在 “**查看资源分组建议**” 部分中标识：
   + **AppComponent 名称**-将在其中 AppComponent 对资源进行分组的名称。
   + **置信度** — 表示分组建议中 AWS Resilience Hub 的置信度。
   + **资源计数**-表示将在中分组的资源数量 AppComponent。
   + **AppComponent t** ype — 表示的类型 AppComponent。

**查看将要分组的资源 AppComponents**

1. 完成**[查看资源分组建议](#view-resource-grouping)**过程中的步骤，然后返回到此过程。

1. 在 “**查看资源分组建议**” 部分，选中复选框（**AppComponent 名称**旁边）以查看将在选定资源内分组的所有资源 AppComponent。如果选中多个复选框，则 AWS Resilience Hub 会显示动态生成的**已选推荐部分，该部分将所选建议** AppComponents 按各自的 AppComponent类型进行分组。选择每 AppComponent 种类型下方的数字，以查看将在所选类型中组合在一起的所有资源 AppComponent。

   您可以使用以下方法确定将在 “资源” 部分所选**资源 AppComponent **中进行分组的资源：
   + **逻辑 ID** - 指示资源的逻辑 ID。逻辑 ID 是用于识别 AWS CloudFormation 堆栈、Terraform 状态文件、MyApplications 应用程序或中的资源的名称。 AWS Resource Groups
   + **物理 ID** — 为资源分配的实际标识符，例如 Amazon EC2 实例 ID 或 Amazon S3 存储桶名称。
   + **类型**-表示资源的类型。
   + ** AWS 区域**-资源所在的区域。

**接受资源分组建议**

1. 完成**[查看资源分组建议](#view-resource-grouping)**过程中的步骤，然后返回到此过程。

1. 在 “**查看资源分组建议**” 部分，选中**AppComponent名称**旁边的所有复选框。要查找特定的 AppComponent，请在 “**查找 AppComponents**” 框中输入 AppComponent名称。
**注意**  
默认情况下， AWS Resilience Hub 显示所有资源分组建议。要使用以前拒绝的资源分组建议筛选表格，请从 “**查找**” AppComponents 框旁边的下拉菜单中选择 “**以前已拒绝**”。

1. 选择 **Accept (接受)**。

1. 在 “**接受****资源分组建议**” 对话框中选择 “接受”。

   AWS Resilience Hub 如果资源分组成功，则会显示信息警报。如果您只接受了资源分组建议的子集，则**查看资源分组建议**部分会显示您尚未接受的所有资源分组建议。

**拒绝资源分组建议**

1. 完成**[查看资源分组建议](#view-resource-grouping)**过程中的步骤，然后返回到此过程。

1. 在 “**查看资源分组建议**” 部分，选中**AppComponent名称**旁边的所有复选框。要查找特定的 AppComponent，请在 “**查找 AppComponents**” 框中输入 AppComponent名称。
**注意**  
默认情况下， AWS Resilience Hub 显示所有资源分组建议。要使用以前拒绝的资源分组建议筛选表格，请从 “**查找**” AppComponents 框旁边的下拉菜单中选择 “**以前已拒绝**”。

1. 选择 **Reject (拒绝)**。

1. 选择拒绝资源分组建议的原因之一，然后在 “**拒绝**资源分**组建议” 对话框中选择 “拒绝**”。

   AWS Resilience Hub 显示确认相同内容的信息警报。如果您只拒绝了资源分组建议的子集，则**查看资源分组建议**部分会显示您尚未接受的所有资源分组建议。

# 手动将资源分组为 AppComponent
<a name="AppComponent-manual-grouping"></a>

本节介绍如何手动将资源分组到中， AppComponent 并 AppComponent 向中的资源分配不同的资源 AWS Resilience Hub。

**对资源进行分组**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择包含要分组的资源的应用程序名称。

1. 选择**应用程序结构**选项卡。

1. 在**版本**选项卡下，选择处于**草稿**状态的应用程序版本。

1. 选择**资源**选项卡。

1. 选中 “**逻辑 ID**” 旁边的复选框以选择要分组的所有资源。
**注意**  
您不能选择手动添加的资源。

1. 选择**操作**，然后选择**对资源进行分组**。

1.  AppComponent 从 “选择**” AppComponent** 下拉列表中选择要对资源进行分组的。

1. 选择**保存**。

1. 选择 **새 버전 발행**。

1. 选择**应用程序结构**选项卡。

1. 要查看应用程序的已发布版本，请完成以下步骤：

   1. 在**版本**选项卡下，选择处于**当前版本**状态的应用程序版本。

   1. 选择**资源**选项卡。

**将资源分配给 AppComponent**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择含有要重新分组的资源的应用程序名称。

1. 选择**应用程序结构**选项卡。

1. 在**版本**下，选择处于**草稿**状态的应用程序版本。

1. 选择**资源**选项卡。

1. 选中**逻辑 ID** 旁边的复选框以选择资源。

1.  AppComponent从 “**操作**” 菜单中选择 “**更改**”。

1. 要 AppComponent 从分**AppComponent**区中删除当前，请在显示您当前 AppComponent 姓名的标签的右上角选择 **X**。

1. 要将资源分组为不同的资源 AppComponent，请 AppComponent从 “选择” AppComponent 下拉列表**中选择**不同的资源。

1. 选择**添加**。

1.  AppComponents 从**AppComponents**选项卡中删除所有空白。

1. 选择 **새 버전 발행**。

1. 选择**应用程序结构**选项卡。

1. 要查看应用程序的已发布版本，请完成以下步骤：

   1. 在**版本**选项卡下，选择处于**当前版本**状态的应用程序版本。

   1. 选择**资源**选项卡。

# 发布新的 AWS Resilience Hub 应用程序版本
<a name="applications-publish"></a>

按照中所述对 AWS Resilience Hub 应用程序资源进行更改后[编辑 AWS Resilience Hub 应用程序资源](application-resources.md)，必须发布应用程序的新版本才能进行准确的弹性评估。此外，如果您在应用程序中添加了新的推荐警报和测试 SOPs，则可能需要发布应用程序的新版本。

**发布应用程序的新版本**

1.  在导航窗格中，选择 **应用程序**。

1.  在**应用程序**页面上，选择应用程序名称。

1. 选择**应用程序结构**选项卡。

1. 选择 **새 버전 발행**。

1. 在 “**发布版本**” 对话框的 “**名称**” 框中，输入应用程序版本的名称，也可以使用建议的默认名称 AWS Resilience Hub。

1. 选择**发布**。

   在发布应用程序的新版本时，该版本将成为您运行弹性评估时所评估的版本。此外，在您进行任何更改之前，草稿版本将与已发布版本相同。

在您发布应用程序的新版本后，我们建议您运行新的弹性评估报告，以确认您的应用程序仍然符合您的弹性策略。有关运行评估的信息，请参阅 [在中运行和管理弹性评估 AWS Resilience Hub](resil-assessments.md)。

# 查看所有 AWS Resilience Hub 应用程序版本
<a name="view-application-version"></a>

为了帮助跟踪应用程序的更改， AWS Resilience Hub 显示应用程序自创建之日起的先前版本 AWS Resilience Hub。

**查看应用程序的所有版本**

1.  在导航窗格中，选择 **应用程序**。

1.  在**应用程序**页面上，选择应用程序名称。

1. 选择**应用程序结构**选项卡。

1. 要查看应用程序的所有先前版本，请在**查看所有版本**之前选择加号 (**\$1**)。 AWS Resilience Hub 分别使用 “草稿” 和 “**当前版本” 状态表示应用程序的**草**稿**版本和最近发布的版本。您可以选择应用程序的任何版本来查看其资源 AppComponent、输入源和其他相关信息。

   此外，您还可以使用以下选项之一来筛选列表：
   + **按版本名称筛选** — 输入名称以按应用程序版本名称筛选结果。
   + **按日期和时间范围筛选** — 要应用此筛选条件，请选择日历图标并选择以下选项之一，以按与时间范围匹配的结果进行筛选：
     + **相对范围** — 选择可用选项之一，然后选择**应用**。

       如果选择**自定义范围**选项，请在**输入持续时间**框中输入持续时间，然后从**时间单位**下拉列表中选择相应的时间单位，然后选择**应用**。
     + **相对范围** — 要指定日期和时间范围，请提供开始时间和结束时间，然后选择**应用**。

# 查看 AWS Resilience Hub 应用程序的资源
<a name="view-resources"></a>

**查看应用程序资源**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择要更新其安全权限的应用程序。

1. 从**操作**中选择**查看资源**。

   在**资源**选项卡中，您可以通过以下方式在**资源**表中标识资源：
   + **逻辑 ID** — 逻辑 ID 是用于识别 AWS CloudFormation 堆栈、Terraform 状态文件、MyApplications 应用程序或中的资源的名称。 AWS Resource Groups
**注意**  
Terraform 允许您对不同的资源类型使用相同的名称。因此，对于共享相同名称的资源，您会在逻辑 ID 的末尾看到“*- 资源类型*”。
要查看所有应用程序资源的实例，请选择**逻辑 ID** 前的加号（**\$1**）。要查看应用程序资源的所有实例，请选择每个资源的“逻辑 ID”前的加号（**\$1**）。  
有关支持的资源类型的更多信息，请参阅 [AWS Resilience Hub 支持的资源](supported-resources.md)。
   + **状态** — 指示 AWS Resilience Hub 是否会评估您的资源弹性。
   + **资源类型** - 资源类型标识应用程序的组件资源。例如，`AWS::EC2::Instance` 声明 Amazon EC2 实例。有关对 AppComponent 资源进行分组的更多信息，请参阅[在应用程序组件中对资源进行分组](AppComponent.grouping.md)。
   + **源名称** – 输入源的名称。选择源名称以在相应的应用程序中查看其详细信息。对于手动添加的输入源，该链接将不可用。例如，如果您选择从 AWS CloudFormation 堆栈导入的源名称，则系统会将您重定向到上的堆栈详细信息页面 AWS CloudFormation。
   + **源类型** — 输入源的类型。
   + **AppComponent t** ype — 输入源的类型。输入源包括 AWS CloudFormation 堆栈、MyApplications 应用程序 AWS Resource Groups、Terraform 状态文件和手动添加的资源。
**注意**  
要编辑您的 Amazon EKS 集群，请完成**要编辑 AWS Resilience Hub 应用程序的输入源**过程中的步骤。
   + **物理 ID** — 分配给资源的实际标识符，如 Amazon EC2 实例 ID 或 S3 存储桶名称。
   + **已包含** — 指示 AWS Resilience Hub 是否将这些资源包含在应用程序中。
   + **AppComponents**— 在发现该资源的应用程序结构时分配给该资源的 AWS Resilience Hub 组件。
   + **名称** — 应用程序资源的名称。
   + **帐户**-拥有物理资源的 AWS 帐户。

1. 选择**保存并更新**。

# 删除 AWS Resilience Hub 应用程序
<a name="applications-delete"></a>

在达到 50 个应用程序的最大限制后，必须先删除一个或多个应用程序，然后才能添加更多应用程序。

**删除 应用程序**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择要删除的应用程序。

1. 选择 **Actions （操作)**，然后选择 **Delete application （删除应用程序)**。

1. 要确认删除，请在**删除**框中输入**删除**，然后选择**删除**。

# 应用程序配置参数
<a name="app-config"></a>

AWS Resilience Hub 提供了一种输入机制，用于收集有关与您的应用程序关联的资源的其他信息。利用这些信息， AWS Resilience Hub 将更深入地了解您的资源并提供更好的弹性建议。

**应用程序配置参数**章节列出了对 AWS Elastic Disaster Recovery提供跨区域失效转移支持的所有配置参数。您可以通过以下方式标识配置参数：
+ **主题** — 指出已配置的应用程序区域。例如，故障转移配置。
+ **目的**-指明 AWS Resilience Hub 要求提供信息的原因。
+ **参数**-表示特定于应用领域的详细信息，这些详细信息 AWS Resilience Hub 将用于为您的应用程序提供建议。当前，此参数仅使用一个故障转移区域和一个关联账户的键值。

# 更新应用程序配置参数
<a name="update-app-config"></a>

本部分允许您更新您的配置参数 AWS Elastic Disaster Recovery 并发布应用程序，以包含更新的弹性评估参数。

**更新应用程序配置参数**

1. 在导航窗格中，选择 **应用程序**。

1. 在**应用程序**页面上，选择您要编辑的应用程序的名称。

1. 选择**应用程序配置参数**选项卡。

1. 选择**更新**。

1. 在**帐户 ID** 框中输入失效转移帐户 ID。

1. 从**区域**下拉列表中选择失效转移区域。
**注意**  
如果要禁用此功能，请从下拉列表中选择“**-**”。

1. 选择**更新并发布**。