EC2没有外网权限时该如何监控

0

因我开启的EC2实例没有外网权限(在安全组的出站规则取消了0.0.0.0的策略),CloudWatch就无法进行监控。 在这种情况下,对EC2实例的监控如要如果进行?

  1. 在安全组的出站规则放行指定IP地址和端(CloudWatch需要放行那些IP和端口)?
  2. 或者有没有其他方案可以实现?
已提问 2 个月前379 查看次数
2 回答
0

在没有外网的情况下需要使用 VPC Endpoint.

profile pictureAWS
专家
已回答 2 个月前
  • 是否可以讲得详细点,或提供操作流程,谢谢。 因我新手不太懂。

0

AWS EC2 如果需要上报日志 或者 上报监控指标数据点 到 CloudWatch 需要透过公网将日志内容上报到 CloudWatch Logs 或 CloudWatch 的外部接口,因此他需要依赖您的 0.0.0.0/0 安全组规则访问公网。现在您把这个规则移除之后,您的 EC2 无法继续上报 CloudWatch Logs 日志是预期的结果。

Enter image description here

目前您可以透过 AWS PrivateLink (VPC Endpoint) 在您的 VPC 内网创建一个 CloudWatch Logs PrivateLink 的私有接口。如此一来,您的 EC2 可以直接透过内网将日志上报到这个 CW Logs 的 VPC Endpoint。 架构将如下方的图片。

Enter image description here

具体操作步骤是:

  1. 开启 VPC 控制台。
  2. 选择 “终端节点” 然后点击 “创建终端节点” 。
  3. 选择 CloudWatch(监控或日志)相关的服务名称,例如:com.amazonaws.<region>.cloudwatch(监控数据) 或 com.amazonaws.<region>.logs(日志)。
  4. 选择适当的 VPC 以及要在其中创建终端节点的子网。
  5. 配置安全组以允许从你的 EC2 实例到终端节点的流量。
  6. 创建终端节点。

创建完毕之后,等候 PrivateLink 状态部署完成后,在您的 VPC 指定的子网内会产生专用的 Network Interface。您需要确保 EC2 的 Egress 规则可以访问这些接口的地址。 之后您就可以测试您的 EC2 是否可以成功上报 CloudWatch 指标数据点 或者 日志。

请您留意 AWS PrivateLink 将会有额外的固定费用,使用之前请您务必打开 [3] 的文件了解。

关于 AWS PrivateLink 请您参考下方的文件:

[1] 官方技术文件:https://docs.aws.amazon.com/zh_cn/vpc/latest/privatelink/privatelink-access-aws-services.html

[2] 官方博客:https://aws.amazon.com/blogs/aws/new-aws-privatelink-endpoints-kinesis-ec2-systems-manager-and-elb-apis-in-your-vpc/

[3] AWS PrivateLink 定价费用:https://aws.amazon.com/cn/privatelink/pricing/

profile picture
已回答 1 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则