为什么我的ELB cloudwatch指标HealthyHostCount设置为900?

时间:2017-05-17 08:22:06

标签: amazon-web-services amazon-cloudwatch

我在AWS中的ELB下运行了三个实例,每个实例位于3个不同的可用区域中。当我在Per LB-metrics下检查ELB的cloudwatch指标时,HealthyHostCount的值为900.

这怎么可能?我试图弄明白,但没有找到任何可能的解决方案。

问题的屏幕截图:

Screenshot of the issue

1 个答案:

答案 0 :(得分:1)

要从ELB指标中获取有意义数量的健康主机,您必须绘制平均值,最小值或最大值(请参阅ELB指标doc:http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-cloudwatch-metrics.html

总和统计对此没有用,因为有多个因素会影响它:

  • ELB中的主机数量。
  • AZs ELB联合号码
  • 健康检查的频率
  • 您绘制指标时选择的时间段
  • 可能是我没想到的其他东西

要让ELB确定健康主机的数量,它必须执行健康检查。您可以在ELB设置中配置运行状况检查的频率。如果健康检查通过,ELB将公布值1。因此,如果您每5秒运行一次健康检查,那么您每分钟最终会得到12个样本。如果你绘制Sum,那么你将获得12分钟。

此外,每个AZ也会进行健康检查,因此,如果您拥有2个AZ的主机,则上面的数字为12 * 2 = 24。

最重要的是,当您绘制指标时,您必须选择一个期间。在上面的示例中,您每分钟都会进行24次检查,因此如果您使用“期间”为1h进行绘图,则会得到24 * 60 = 1440.

查看上面提到的参数所包含的数字,并试着看看它们总结为900。