【发布时间】:2019-03-09 14:17:15
【问题描述】:
我正在尝试查看 ASG 中 EC2 实例的 CPU 利用率等指标。正如我在 ASG -> Metrics -> EC2 上看到的,有一些指标,但不清楚是按实例测量还是某个平均值? 在 ASG(即 CPU 或内存)中查看实例状态的最佳方式是什么?
【问题讨论】:
标签: amazon-web-services amazon-ec2 amazon-cloudwatch
我正在尝试查看 ASG 中 EC2 实例的 CPU 利用率等指标。正如我在 ASG -> Metrics -> EC2 上看到的,有一些指标,但不清楚是按实例测量还是某个平均值? 在 ASG(即 CPU 或内存)中查看实例状态的最佳方式是什么?
【问题讨论】:
标签: amazon-web-services amazon-ec2 amazon-cloudwatch
根据AWS documentation,自动缩放平均值可用:
ASGAverageCPUUtilization - Auto Scaling 的平均 CPU 利用率 组
由于您只看到一个值,因此很可能是平均值。
现在回答您的问题是基于 CPU 还是内存进行扩展更好,没有神奇的公式,您应该首先对单个实例进行负载测试以确定哪个是限制因素。 ab (Apache Bench) 和 vegeta 都是很棒的 Web 应用程序负载测试工具。
请注意,默认情况下,内存指标不会推送到 cloudwatch,因此您需要为此设置一个自定义工具。
【讨论】:
我为具有类似架构的案例所做的工作。 我正在使用应用程序负载均衡器,因此我正在扩展每个目标的请求数。 所以现在的问题是我如何确定每个目标的最佳请求数是多少? 我运行负载测试并试图找出我的 EC2 开始中断的请求计数。根据我的负载测试结果,我计算了我的最佳请求计数并将其添加到我的 ASG 扩展策略中。
【讨论】: