

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

# 设置 Amazon DevOps Guru
<a name="setting-up"></a>

完成本节中的任务，首次设置 Amazon DevOps Guru。如果您已经有一个 AWS 账户，知道要分析哪个 AWS 或多个账户，并且有亚马逊简单通知服务主题可用于洞察通知，则可以直接跳到[DevOpsGuru 入门](getting-started.md)。

或者，您可以使用快速设置（一项功能）来设置 DevOps Guru 并快速配置其选项。 AWS Systems Manager您可以使用快速设置为独立账户或组织设置 DevOps Guru。要使用 Systems Manager 中的快速设置为组织设置 DevOps Guru，必须具备以下先决条件：
+ 一个拥有 AWS Organizations. 有关更多信息，请参阅《*AWS Organizations 用户指南》[中的AWS Organizations术语和概念](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html)*。
+ 两个或多个组织单位 (OUs)。
+ 每个 OU 中有一个或多个目标 AWS 账户。
+ 一个具有管理目标账户权限的管理员账户。

要了解如何使用快速设置来设置 DevOps Guru，请参阅《*AWS Systems Manager 用户*指南》中的 “[使用快速设置配置 DevOps Guru](https://docs.aws.amazon.com/systems-manager/latest/userguide/quick-setup-devops.html)”。

使用以下步骤在不使用快速设置的情况下设置 DevOps Guru。
+ [第 1 步 — 注册 AWS](#setting-up-aws-sign-up)
+ [第 2 步 — 确定 DevOps Guru 的覆盖范围](#setting-up-determine-coverage)
+ [步骤 3 - 确定您的 Amazon SNS 通知主题](#setting-up-notifications)

## 第 1 步 — 注册 AWS
<a name="setting-up-aws-sign-up"></a>

### 注册获取 AWS 账户
<a name="sign-up-for-aws"></a>

如果您没有 AWS 账户，请完成以下步骤来创建一个。

**报名参加 AWS 账户**

1. 打开[https://portal.aws.amazon.com/billing/注册。](https://portal.aws.amazon.com/billing/signup)

1. 按照屏幕上的说明操作。

   在注册时，将接到电话或收到短信，要求使用电话键盘输入一个验证码。

   当您注册时 AWS 账户，就会创建*AWS 账户根用户*一个。根用户有权访问该账户中的所有 AWS 服务 和资源。作为最佳安全实践，请为用户分配管理访问权限，并且只使用根用户来执行[需要根用户访问权限的任务](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)。

AWS 注册过程完成后会向您发送一封确认电子邮件。您可以随时前往 [https://aws.amazon.com/](https://aws.amazon.com/)并选择 “**我的账户”，查看您当前的账户活动并管理您的账户**。

### 创建具有管理访问权限的用户
<a name="create-an-admin"></a>

注册后，请保护您的安全 AWS 账户 AWS 账户根用户 AWS IAM Identity Center，启用并创建管理用户，这样您就不会使用 root 用户执行日常任务。

**保护你的 AWS 账户根用户**

1.  选择 **Root 用户**并输入您的 AWS 账户 电子邮件地址，以账户所有者的身份登录。[AWS 管理控制台](https://console.aws.amazon.com/)在下一页上，输入您的密码。

   要获取使用根用户登录方面的帮助，请参阅《AWS 登录 用户指南》**中的 [Signing in as the root user](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial)。

1. 为您的根用户启用多重身份验证（MFA）。

   有关说明，请参阅 I [A *M* 用户指南中的为 AWS 账户 根用户启用虚拟 MFA 设备（控制台）](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html)。

**创建具有管理访问权限的用户**

1. 启用 IAM Identity Center。

   有关说明，请参阅**《AWS IAM Identity Center 用户指南》中的[启用 AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html)。

1. 在 IAM Identity Center 中，为用户授予管理访问权限。

   有关使用 IAM Identity Center 目录 作为身份源的教程，请参阅《[用户*指南》 IAM Identity Center 目录中的使用默认设置配置AWS IAM Identity Center 用户*访问权限](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html)。

**以具有管理访问权限的用户身份登录**
+ 要使用您的 IAM Identity Center 用户身份登录，请使用您在创建 IAM Identity Center 用户时发送到您的电子邮件地址的登录 URL。

  有关使用 IAM Identity Center 用户[登录的帮助，请参阅*AWS 登录 用户指南*中的登录 AWS 访问门户](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html)。

**将访问权限分配给其他用户**

1. 在 IAM Identity Center 中，创建一个权限集，该权限集遵循应用最低权限的最佳做法。

   有关说明，请参阅《AWS IAM Identity Center 用户指南》**中的 [Create a permission set](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html)。

1. 将用户分配到一个组，然后为该组分配单点登录访问权限。

   有关说明，请参阅《AWS IAM Identity Center 用户指南》**中的 [Add groups](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html)。

## 第 2 步 — 确定 DevOps Guru 的覆盖范围
<a name="setting-up-determine-coverage"></a>

您的边界覆盖范围决定了 Amazon DevOps Guru 对哪些 AWS 资源进行异常行为分析。我们建议您将资源分组到操作应用程序中。资源边界中的所有资源都应构成您的一个或多个应用程序。如果您有一个操作解决方案，那么您的覆盖范围应包括其所有资源。如果您有多个应用程序，请选择构成每个解决方案的资源，然后使用 CloudFormation 堆栈或 AWS 标签将它们分组在一起。您指定的所有组合资源，无论它们定义了一个还是多个应用程序，都将由 DevOps Guru 进行分析并构成其覆盖范围。

使用以下方法之一指定操作解决方案中的资源。
+ 选择让您的 AWS 地区和账户定义您的覆盖范围。使用此选项， DevOps Guru 可以分析您账户和地区中的所有资源。如果您只将自己的账户用于一个应用程序，那么这是一个不错的选择。
+ 使用 CloudFormation 堆栈来定义操作应用程序中的资源。 CloudFormation 模板为您定义和生成资源。在配置 DevOps Guru 时，请指定用于创建应用程序资源的堆栈。您可以随时更新堆栈。您选择的堆栈中的所有资源都定义了边界覆盖范围。有关更多信息，请参阅 [使用 CloudFormation 堆栈来识别 DevOps Guru 应用程序中的资源](working-with-cfn-stacks.md)。
+ 使用 AWS 标签来指定应用程序中的 AWS 资源。 DevOpsGuru 仅分析包含您选择的标签的资源。这些资源构成了您的边界。

   AWS 标签由标签*键*和标签*值*组成。您可以指定一个标签*键*，也可以使用该*键*指定一个或多个*值*。对其中一个应用程序中的所有资源使用同一个*值*。如果您有多个应用程序，则对所有应用程序使用具有相同*键*的标签，并使用标签的*值*将资源分组到您的应用程序中。带有您选择的标签的所有资源构成了 DevOps Guru 的覆盖范围。有关更多信息，请参阅 [使用标签来识别 DevOps Guru 应用程序中的资源](working-with-resource-tags.md)。

如果您的边界覆盖范围包括构成多个应用程序的资源，则可以使用标签筛选您的见解，逐个应用程序查看见解。有关更多信息，请参阅[查看 DevOps Guru 见解](working-with-insights.md#view-insights)中的步骤 4。

有关更多信息，请参阅 [使用 AWS 资源定义应用程序](working-with-resource-collections.md)。有关支持的服务和资源的更多信息，请参阅 [Amazon DevOps Guru 定价](https://aws.amazon.com/devops-guru/pricing/)。

## 步骤 3 - 确定您的 Amazon SNS 通知主题
<a name="setting-up-notifications"></a>

您可以使用一两个 Amazon SNS 主题来生成有关重要的 DevOps Guru 事件的通知，例如何时创建见解。这样可以确保您尽快了解 DevOps Guru 发现的问题。设置 DevOps Guru 时，请准备好话题。使用 DevOps Guru 控制台设置 DevOps Guru 时，您可以使用通知主题的名称或其亚马逊资源名称 (ARN) 来指定通知主题。有关更多信息，请参阅[启用 DevOps Guru](https://docs.aws.amazon.com/devops-guru/latest/userguide/getting-started-enable-service.html)。您可以使用 Amazon SNS 控制台查看每个主题的名称和 ARN。如果您没有主题，则可以在使用 Guru 控制台启用 DevOps Guru 时创建一个。 DevOps有关更多信息，请参阅《Amazon Simple Notification Service 开发人员指南》**中的[创建主题](https://docs.aws.amazon.com/sns/latest/dg/sns-tutorial-create-topic.html)。

### 添加到 Amazon SNS 主题的权限
<a name="permissions-added-to-sns-topic"></a>

Amazon SNS 主题是一种包含 AWS Identity and Access Management (IAM) 资源策略的资源。当您在此处指定主题时， DevOpsGuru 会将以下权限附加到其资源策略中。

```
{
    "Sid": "DevOpsGuru-added-SNS-topic-permissions",
    "Effect": "Allow",
    "Principal": {
        "Service": "region-id.devops-guru.amazonaws.com"
    },
    "Action": "sns:Publish",
    "Resource": "arn:aws:sns:region-id:topic-owner-account-id:my-topic-name",
    "Condition" : {
      "StringEquals" : {
        "AWS:SourceArn": "arn:aws:devops-guru:region-id:topic-owner-account-id:channel/devops-guru-channel-id",
        "AWS:SourceAccount": "topic-owner-account-id"
    }
  }
}
```

 DevOpsGuru 需要这些权限才能使用主题发布通知。如果您不想拥有该主题的这些权限，则可以放心地将其删除，主题将继续按照您选择之前的方式运行。但是，如果删除了这些附加权限， DevOpsGuru 将无法使用该主题生成通知。