

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

# 将警报与 Amazon Managed Grafana 或开源 Grafana 集成
<a name="integrating-grafana"></a>

您在 Amazon Managed Service for Prometheus 的 Alertmanager 中创建的警报规则可以在 [Amazon Managed Grafana](https://aws.amazon.com/grafana/) 和 [Grafana](https://grafana.com) 中转发和查看，从而在一个环境中统一您的警报规则和警报。在 Amazon Managed Grafana 中，您可以查看您的警报规则和生成的警报。

## 先决条件
<a name="grafana-prereqs"></a>

在开始将 Amazon Managed Service for Prometheus 集成到 Amazon Managed Grafana 之前，您必须满足以下先决条件：
+ 您必须拥有现有 AWS 账户 和 IAM 证书，才能以编程方式创建适用于 Prometheus 的亚马逊托管服务和 IAM 角色。

  有关创建 AWS 账户 和 IAM 证书的更多信息，请参阅[设置AWS](AMP-setting-up.md)。
+ 您必须拥有 Amazon Managed Service for Prometheus 工作区，并且要向其中摄取数据。要设置新的工作区，请参阅[创建 Amazon Managed Service for Prometheus 工作区](AMP-onboard-create-workspace.md)。您还应该熟悉 Prometheus 的概念，例如 Alertmanager 和 Ruler。有关这些主题的更多信息，请参阅 [Prometheus 文档](https://prometheus.io/docs/introduction/overview/)。
+ 您已经在 Amazon Managed Service for Prometheus 中配置了 Alertmanager 配置和规则文件。有关 Amazon Managed Service for Prometheus 中的 Alertmanager 的更多信息，请参阅[使用警报管理器在 Amazon Managed Service for Prometheus 中管理和转发警报](AMP-alert-manager.md)。有关规则的更多信息，请参阅 [使用规则修改或监控收到的指标](AMP-Ruler.md)。
+ 您必须设置 Amazon Managed Grafana，或者运行开源版本的 Grafana。
  + 如果您使用的是 Amazon Managed Grafana，则必须使用 Grafana 警报。有关更多信息，请参阅[将旧版控制面板警报迁移到 Grafana 警报](https://docs.aws.amazon.com/grafana/latest/userguide/alert-opt-in.html)。
  + 如果您使用的是开源版本的 Grafana，则必须运行版本 9.1 或更高版本。
**注意**  
您可以使用早期版本的 Grafana，但[必须启用统一警报](https://grafana.com/docs/grafana/v8.4/alerting/unified-alerting/opt-in/)（Grafana 警报）功能，并且可能需要设置 [sigv4 代理](https://github.com/awslabs/aws-sigv4-proxy)才能从 Grafana 调用 Amazon Managed Service for Prometheus。有关更多信息，请参阅 [设置 Grafana 开源或 Grafana Enterprise 以与 Amazon Managed Service for Prometheus 配合使用](AMP-onboard-query-standalone-grafana.md)。
+ Amazon Managed Grafana 必须具有以下权限才能访问您的 Prometheus 资源。您必须将其添加到 [https://docs.aws.amazon.com/grafana/latest/userguide/AMG-manage-permissions.html](https://docs.aws.amazon.com/grafana/latest/userguide/AMG-manage-permissions.html) 中所述的服务管理策略或客户管理策略中。
  + `aps:ListRules`
  + `aps:ListAlertManagerSilences`
  + `aps:ListAlertManagerAlerts`
  + `aps:GetAlertManagerStatus`
  + `aps:ListAlertManagerAlertGroups`
  + `aps:PutAlertManagerSilences`
  + `aps:DeleteAlertManagerSilence`

## 设置 Amazon Managed Grafana
<a name="grafana-set-up-grafana"></a>

如果您已经在 Amazon Managed Service for Prometheus 实例中设置了规则和警报，则使用 Amazon Managed Grafana 作为这些警报控制面板的配置完全在 Amazon Managed Grafana 中完成。

**将 Amazon Managed Grafana 配置为警报控制面板**

1. 打开工作区的 Grafana 控制台。

1. 在**配置**下，选择**数据来源**。

1. 创建或打开您的 Prometheus 数据来源。如果您之前未设置 Prometheus 数据来源，请参见[步骤 2：在 Grafana 中添加 Prometheus 数据来源](AMP-onboard-query-standalone-grafana.md#AMP-onboard-query-standalone-grafana-datasource)以获取更多信息。

1. 在 Prometheus 数据来源中，选择**通过 Alertmanager UI 管理警报**。

1. 返回**数据来源**界面。

1. 创建新的 Alertmanager 数据来源。

1. 在 Alertmanager 数据来源配置页面中，添加以下设置：
   + 将**实施**设置为 `Prometheus`。
   + 对于 **URL** 设置，请使用您的 Prometheus 工作区的 URL，删除工作区 ID 之后的所有内容，然后在末尾附加 `/alertmanager`。在以下示例中，*variables*用您自己的（特定于账户的）信息替换：

     ```
     https://aps-workspaces.US East (N. Virginia).amazonaws.com/workspaces/ws-example-1234-5678-abcd-xyz00000001/alertmanager.
     ```
   + 在**身份验证**下，开启 **SigV4Auth**。这会告诉 Grafana 对请求使用 [AWS 身份验证](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)。
   + 例如，在 **Sigv4Auth 详细信息**下的**默认区域**中，提供您的 Prometheus 实例所在的区域，例如 `us-east-1`。
   + 将**默认**选项设置为 `true`。

1. 选择**保存并测试**。

1. 现在，您的 Amazon Managed Service for Prometheus 警报应配置为与您的 Grafana 实例配合使用。确认您可以在 Grafana **警报**页面的 Amazon Managed Service for Prometheus 实例中看到所有**警报规则**、**警报组**（包括活动警报）和**静默**。