

# 将 CloudWatch、CloudWatch Synthetics 和 CloudWatch 网络监控与接口 VPC 端点结合使用
<a name="cloudwatch-and-interface-VPC"></a>

如果使用 Amazon Virtual Private Cloud (Amazon VPC) 托管 AWS 资源，则可以在您的 VPC、CloudWatch、CloudWatch Synthetics 和 CloudWatch 网络监控之间建立私有连接。您可以使用这些连接使这些服务无需通过公共互联网即可与您的 VPC 中的资源进行通信。

Amazon VPC 是一项 AWS 服务，可用来启动在虚拟网络中定义的 AWS 资源。借助 VPC，您可以控制您的网络设置，如 IP 地址范围、子网、路由表和网络网关。要将 VPC 连接到 CloudWatch 服务，请为 VPC 定义一个*接口 VPC 端点*。该端点提供到 CloudWatch 和支持的 CloudWatch 服务的可靠、可扩展的连接，无需互联网网关、网络地址转换 (NATI) 实例或 VPN 连接。有关更多信息，请参阅 *Amazon VPC 用户指南*中的[什么是 Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/)。

接口 VPC 端点由 AWS PrivateLink 提供支持，后者是一种 AWS 技术，可将弹性网络接口与私有 IP 地址结合使用来支持 AWS 服务之间的私有通信。有关更多信息，请参阅以下博客文章：[New – AWS PrivateLink for AWS Services](https://aws.amazon.com/blogs/aws/new-aws-privatelink-endpoints-kinesis-ec2-systems-manager-and-elb-apis-in-your-vpc/)

以下步骤适用于 Amazon VPC 的用户。有关更多信息，请参阅 *Amazon VPC 用户指南*中的[入门](https://docs.aws.amazon.com/vpc/latest/userguide/GetStarted.html)。

## CloudWatch VPC 端点
<a name="cloudwatch-interface-VPC-availability"></a>

CloudWatch 目前支持在所有 AWS 区域 [包括 AWS GovCloud（美国）区域] 使用 VPC 端点，包括“仅 IPv6”端点和双栈端点。有关端点 URL 的信息，请参阅 [ CloudWatch endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/cw_region.html)。

### 为 CloudWatch 创建 VPC 终端节点
<a name="create-VPC-endpoint-for-CloudWatch"></a>

要开始使用 CloudWatch 与 VPC，请为 CloudWatch 创建一个接口 VPC 终端节点。要选择的服务名称为 `com.amazonaws.region.monitoring`。有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Creating an interface endpoint](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint.html)。

您不需要更改 CloudWatch 的设置。CloudWatch 使用公有端点或私有接口 VPC 终端节点（二者中在使用中的那个）调用其他 AWS 服务。例如，如果为 CloudWatch 创建接口 VPC 终端节点，并且您已拥有从位于 VPC 上的资源流向 CloudWatch 的指标，默认情况下，这些指标将开始流过接口 VPC 终端节点。

### 控制对 CloudWatch VPC 终端节点的访问
<a name="CloudWatch-VPC-endpoint-policy"></a>

VPC 端点策略是一种 IAM 资源策略，您在创建或修改端点时可将它附加到端点。如果您在创建端点时未附加策略，Amazon VPC 会为您附加一个默认策略，该策略允许对服务的完全访问。端点策略不会覆盖或替换用户策略或服务特定的策略。这是一个单独的策略，用于控制从端点中对指定服务进行的访问。

端点策略必须采用 JSON 格式编写。

有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Controlling access to services with VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html)。

下面是用于 CloudWatch 的端点策略示例。该策略允许通过 VPC 连接到 CloudWatch 的用户将指标数据发送到 CloudWatch，并禁止他们执行其他 CloudWatch 操作。

```
{
  "Statement": [
    {
      "Sid": "PutOnly",
      "Principal": "*",
      "Action": [
        "cloudwatch:PutMetricData"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
```

**编辑 CloudWatch 的 VPC 终端节点策略**

1. 通过 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 打开 Amazon VPC 控制台。

1. 在导航窗格中，选择**端点**。

1. 如果还没有为 CloudWatch 创建端点，请选择**创建端点**。接下来，选择 **com.amazonaws.*region*.monitoring**，然后选择 **Create Endpoint (创建终端节点)**。

1. 选择 **com.amazonaws.*region*.monitoring** 终端节点，然后选择 **Policy (策略)** 选项卡。

1. 选择**编辑策略**，然后进行更改。

## CloudWatch Synthetics VPC 终端节点
<a name="cloudwatch-synthetics-interface-VPC"></a>

CloudWatch Synthetics 当前在以下 AWS 区域中支持 VPC 终端节点：
+ 美国东部（俄亥俄州）
+ 美国东部（弗吉尼亚州北部）
+ 美国西部（北加利福尼亚）
+ 美国西部（俄勒冈州）
+ 亚太地区（香港）
+ 亚太地区（孟买）
+ 亚太地区（首尔）
+ 亚太地区（新加坡）
+ 亚太地区（悉尼）
+ 亚太地区（东京）
+ 加拿大（中部）
+ 欧洲地区（法兰克福）
+ 欧洲地区（爱尔兰）
+ 欧洲地区（伦敦）
+ 欧洲（巴黎）
+ 南美洲（圣保罗）

### 为 CloudWatch Synthetics 创建 VPC 终端节点
<a name="create-VPC-endpoint-for-CloudWatch-Synthetics"></a>

要开始将 CloudWatch Synthetics 与您的 VPC 结合使用，请为 CloudWatch Synthetics 创建一个接口 VPC 终端节点。要选择的服务名称为 `com.amazonaws.region.synthetics`。有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Creating an interface endpoint](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint.html)。

您不需要更改 CloudWatch Synthetics 的设置。CloudWatch Synthetics 使用公有终端节点或私有接口 VPC 终端节点（二者中在使用的那个）与其他 AWS 服务通信。例如，如果您为 CloudWatch Synthetics 创建了接口 VPC 终端节点，并且您已有 Amazon S3 的接口端点，则默认情况下，CloudWatch Synthetics 通过接口 VPC 终端节点开始与 Amazon S3 通信。

### 控制对您的 CloudWatch Synthetics VPC 终端节点的访问
<a name="CloudWatch-Synthetics-VPC-endpoint-policy"></a>

VPC 终端节点策略是一种 IAM 资源策略，您在创建或修改端点时可将它附加到端点。如果在创建端点时未附加策略，我们将为您附加默认策略以允许对服务进行完全访问。端点策略不会覆盖或替换用户策略或服务特定的策略。这是一个单独的策略，用于控制从端点中对指定服务进行的访问。

端点策略会影响由 VPC 私有托管的 canary。在私有子网上运行的 Canary 不需要这些策略。

端点策略必须采用 JSON 格式编写。

有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Controlling access to services with VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html)。

以下是 CloudWatch Synthetics 的端点策略示例。此策略允许通过 VPC 连接到 CloudWatch Synthetics 的用户查看有关 Canary 及其运行的信息，但不能创建、修改或删除 Canary。

```
{
    "Statement": [
        {
            "Action": [
                "synthetics:DescribeCanaries",
                "synthetics:GetCanaryRuns"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Principal": "*"
        }
    ]
}
```

**编辑 CloudWatch Synthetics 的 VPC 终端节点策略**

1. 通过 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 打开 Amazon VPC 控制台。

1. 在导航窗格中，选择**端点**。

1. 如果还没有为 CloudWatch Synthetics 创建端点，请选择**创建端点**。选择 **com.amazonaws.*region*.synthetics**，然后选择 **Create endpoint (创建终端节点)**。

1. 选择 **com.amazonaws.*region*.synthetics** 端点，然后选择**策略**选项卡。

1. 选择**编辑策略**，然后进行更改。

## CloudWatch 网络监测功能 VPC 端点
<a name="cloudwatch-network-monitoring-interface-VPC-availability"></a>

CloudWatch 网络监测仪包括以下功能：网络流量监测仪、网络监测仪和网络综合监测仪。这些功能均支持支持网络监控功能的 AWS 区域中的 VPC 端点。

要查看每项网络监控功能支持的区域列表，请参阅以下主题：
+ **网络流量监测仪：**[网络流量监测仪支持的 AWS 区域](CloudWatch-NetworkFlowMonitor-Regions.md)
+ **网络监测仪：**[支持网络监测仪的 AWS 区域](CloudWatch-InternetMonitor.Regions.md)
+ **网络综合监测仪：**[网络综合监测仪支持的 AWS 区域](nw-monitor-regions.md)

### 为 CloudWatch 网络监控功能创建 VPC 端点
<a name="cloudwatch-network-monitoring-create-VPC-endpoint"></a>

要开始将 CloudWatch 网络监控功能与 VPC 结合使用，请为要使用的功能创建接口 VPC 端点。对于网络监控，可用的服务名称如下：
+ `com.amazonaws.region.networkflowmonitor`
+ `com.amazonaws.region.networkflowmonitorreports`
+ `com.amazonaws.region.internetmonitor`
+ `com.amazonaws.region.internetmonitor-fips`
+ `com.amazonaws.region.networkmonitor`

有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Creating an interface endpoint](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint.html)。

您不需要更改网络监控服务的设置。网络监控服务使用公有端点或私有接口 VPC 端点（二者中在使用的那个）与其他 AWS 服务进行通信。例如，如果为网络监测服务创建接口 VPC 端点，并且已经拥有从位于 VPC 上的资源流向该服务的指标，则指标默认会开始流经接口 VPC 端点。

### 控制对 CloudWatch 网络监控功能 VPC 端点的访问
<a name="cloudwatch-network-monitoring-VPC-endpoint-policy"></a>

VPC 端点策略是一种 IAM 资源策略，您在创建或修改端点时可将它附加到端点。端点策略不会覆盖或替换用户策略或服务特定的策略。这是一个单独的策略，用于控制从端点中对指定服务进行的访问。

如果您在创建端点时未附加策略，则 Amazon VPC 将为您附加一个默认策略，该策略允许完全访问并且不限制对特定服务的访问。为了提高安全性，您可以将策略附加到端点以专门限制对该功能的访问。例如，对于网络监测仪，您可以通过附加允许完全访问该功能的 AWS 托管式策略 [CloudWatchInternetMonitorFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/CloudWatchInternetMonitorFullAccess.html) 来允许仅完全访问网络监测仪。或者，您可以进一步将权限限制为仅针对端点的特定操作。

有关更多信息，请参阅《Amazon VPC User Guide》**中的 [Controlling access to services with VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html)。

下面是您可以为网络流量监测仪创建的用于限制端点操作的端点策略示例。此策略允许通过 VPC 对网络流量监测仪的请求仅使用 `Publish` 操作，这使得请求能够将指标发布到网络流量监测仪后端摄取。

```
{
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "networkflowmonitor:Publish",
            "Resource": "*"
        }
    ]
}
```

如果想要将具有接口 VPC 端点的特定 VPC 端点策略用于网络监控功能，请使用与以下示例类似的步骤来为网络流量监测仪添加策略。

**编辑网络流量监测仪的 VPC 端点策略**

1. 通过 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 打开 Amazon VPC 控制台。

1. 在导航窗格中，选择**端点**。

1. 如果还没有为网络监测仪创建端点，请选择**创建端点**。

1. 选择 **com.amazonaws.*region*.networkflowmonitor**，然后选择**创建端点**。

1. 选择 **com.amazonaws.*region*.networkflowmonitor** 端点，然后选择**策略**选项卡。

1. 选择**编辑策略**，然后进行更改。