CloudWatch Agent
部署 CloudWatch agent
CloudWatch agent 可以作为单次安装进行部署,使用分布式配置文件、分层多个配置文件或完全通过自动化来完成。哪种方法适合您取决于您的需求。1
Windows 和 Linux 主机的部署都能够将配置存储和检索到 Systems Manager Parameter Store。通过这种自动化机制来处理 CloudWatch agent 配置的部署是最佳实践。
在 AWS 之外部署
CloudWatch agent 的使用不限于 AWS 内部,它在本地环境和其他云环境中也受支持。在 AWS 之外使用 CloudWatch agent 时需要注意两个额外事项:
- 设置 IAM 凭证2以允许 agent 进行所需的 API 调用。即使在 EC2 中,对 CloudWatch API 也没有未经身份验证的访问3。
- 确保 agent 能够连接到 CloudWatch、CloudWatch Logs 和其他 AWS 端点4,使用满足您要求的路由。这可以通过互联网、使用 AWS Direct Connect 或通过私有端点(通常称为 VPC endpoint)实现。
您的环境与 CloudWatch 之间的传输需要符合您的治理和安全要求。广义而言,对于 AWS 之外的工作负载使用私有端点甚至能满足监管最严格行业客户的需求。然而,大多数客户通过我们的公共端点即可得到良好服务。
使用私有端点
为了推送 metrics 和 logs,CloudWatch agent 必须能够连接到 CloudWatch 和 CloudWatch Logs 端点。根据 agent 的安装位置,有几种方法可以实现。
从 VPC
a. 您可以利用 VPC Endpoints(用于 CloudWatch 和 CloudWatch Logs)在您的 VPC 和 CloudWatch 之间建立完全私有和安全的连接,使运行在 EC2 上的 agent 的流量永远不经过互联网。
b. 另一种替代方案是拥有一个公共 NAT 网关,私有子网可以通过它连接到互联网,但不能接收来自互联网的主动入站连接。
请注意,使用这种方法 agent 流量将逻辑上通过互联网路由。
c. 如果您没有在现有 TLS 和 Sigv4 机制之外建立私有或安全连接的要求,最简单的选择是使用 Internet Gateway 来提供到我们端点的连接。
从本地或其他云环境
a. 在 AWS 之外运行的 agent 可以通过互联网(通过其自身的网络设置)或 Direct Connect Public VIF 建立到 CloudWatch 公共端点的连接。
b. 如果您要求 agent 流量不通过互联网路由,您可以利用由 AWS PrivateLink 支持的 VPC Interface endpoints,通过 Direct Connect Private VIF 或 VPN 将私有连接扩展到您的本地网络。您的流量不会暴露在互联网上,从而消除了威胁向量。
您可以使用从 AWS Systems Manager agent 获取的凭证,为 CloudWatch agent 添加临时 AWS 访问令牌。
Footnotes
-
参见 Getting started with open source Amazon CloudWatch Agent 获取 CloudWatch agent 使用和部署指导的博客。 ↩
-
所有与可观测性相关的 AWS API 的使用通常通过实例配置文件来完成——这是一种向在 AWS 中运行的实例和容器授予临时访问凭证的机制。 ↩