awe*_*ndt 10 metrics amazon-ec2 amazon-web-services amazon-elb amazon-cloudwatch
我们有三个EC2实例 - 在eu-west-1区域的每个可用区(AZ)中有一个.它们使用ELB进行负载平衡.我们想要使用CloudWatch监控在负载均衡器上注册的实例数量.问题是:我真的不了解HealthyHostCount指标.
对于部署,我们希望能够在不通知的情况下取消注册单个实例(从LB中取出).因此警报将是:通知负载均衡器后面是否只有1个健康实例持续5分钟.
据我所知,HealthyHostCount(HHC)是在给定的ELB中注册的健康实例的数量,在所有AZ上平均.如果一切正常,HHC应该是1(无论在什么时间段内),因为每个AZ中有1个实例.
几天前,有人在没有重新注册实例的情况下部署,因此只有一个实例是平衡的.当我们注意到这一点时,我们创建了一个警报,当5分钟后平均HHC低于0.6时,通知我们.(如果在ELB中只注册了1个实例,则HHC在任何时间段内应平均为0.33.)但是,警报从未更改为"ALARM"状态.
当我在CloudWatch中检查HHC时,HHC是没有意义的数字(5分钟间隔的总和为现在我记得的全部).
这对我来说都是一团糟.每当我认为我理解该指标时,CloudWatch图表对我来说都是胡言乱语.
有人可以解释如何只注册一个实例时如何使用HHC来发出警报?平均HHC是走的路还是我应该使用其他指标?
在HealthyHostCount对每个可用性区域可用主机的计数度量记录一个数据值,每次健康检查被执行.您的ELB运行状况检查有一个Interval参数,用于定义每分钟执行的运行状况检查数.
如果您正在观看具有Interval10秒健康检查的每个AZ指标,并且该AZ中有2个健康主机,您将看到每分钟6个数据点(60/10),其值为2.平均值,最大值和最小值将为2,但总和将是6*2=12.
如果您有3个AZ,每个主机有2个主机,同样Interval= = 10,但是您正在查看Per-LB指标,您将看到3*6=18每分钟数据点,每个数据点的值为2.平均值,最大值和最小值将为是2,但总和将是18*2=36
我建议你设置一个可以分为60秒(5,6,10,15,20,30或60秒)的间隔值.
在您的情况下,如果您的间隔为30秒,并且每个AZ有3个AZ和1个服务器:每个AZ每分钟应该有2个数据点,因此设置一个警报Per-LB,Period1分钟,Sum of HealthyHostCount当值低于等于2时触发,(2 data values * 1 Healthy AZ * 1 healthy server = 2不健康的AZ的其他4个数据值应为0,因此它们不会影响总和).
更新:
它原来也执行健康检查的数量取决于塑形ELB(每AZ ussually之一)内部实例的数量,因此,如果您正遭受流量高峰,或足够的负荷饱和单ELB内部实例,ELB内部服务器的数量将增加,您将意外地拥有更多数据点.sum仅当您有大量流量时,这可能会影响该值.我没有看到这个问题,在3个AZ中分配了6k RPM的峰值负载.如果这是你的情况,那么使用average是一个更安全的赌注,但我建议你使用LowerThan 0.65作为你的门槛.
该链接还让我想知道该Cross-Zone Load Balancing功能如何影响数据点的数量......
| 归档时间: |
|
| 查看次数: |
11531 次 |
| 最近记录: |