7

Uygulamam için AWS CloudFormation kullanıyorum ve ilgili bir şablon aracılığıyla bir alarm isteği isteği yapmaya çalışıyorum. Elastic Load Balancer için doğrudan istek alarmını başarılı bir şekilde yapabilirim, ancak bir CloudFormation şablonu aracılığıyla aynı şeyi elde etmeye çalıştığımda Amazon CloudWatch içindeki alarm durumu "yetersiz veri" dir.CloudFormation aracılığıyla oluşturulan CloudWatch istek sayısı alarmı neden "Yetersiz Veri" veriyor?

Benim elb JSON olup:

"ElasticLoadBalancer": { 
    "Type": "AWS::ElasticLoadBalancing::LoadBalancer", 
    "Properties": { 
    "AvailabilityZones": { 
     "Fn::GetAZs": "" 
    }, 
    "Listeners": [ 
     { 
     "LoadBalancerPort": "80", 
     "InstancePort": { 
      "Ref": "WebServerPort" 
     }, 
     "Protocol": "HTTP" 
     } 
    ], 
    "HealthCheck": { 
     "Target": { 
     "Fn::Join": [ 
      "", 
      [ 
      "HTTP:", 
      { 
       "Ref": "WebServerPort" 
      }, 
      "/" 
      ] 
     ] 
     }, 
     "HealthyThreshold": "3", 
     "UnhealthyThreshold": "5", 
     "Interval": "30", 
     "Timeout": "5" 
    } 
    } 
}, 

My alarmı JSON olup:

"StatisticAlarmLow": { 
    "Type": "AWS::CloudWatch::Alarm", 
    "Properties": { 
    "AlarmDescription": "Alarm if there are too many unhealthy hosts.", 
    "MetricName": "RequestCount", 
    "Namespace": "AWS/ELB", 
    "Statistic": "Sum", 
    "Period": "60", 
    "EvaluationPeriods": "2", 
    "ComparisonOperator": "LessThanThreshold", 
    "Threshold": "1500", 
    "AlarmActions": [ 
     { 
     "Ref": "WebServerScaleUpPolicy" 
     } 
    ], 
    "Unit": "Count", 
    "Dimensions": [ 
     { 
     "Name": "AutoScalingGroupName", 
     "Value": { 
      "Ref": "WebServerGroup" 
     } 
     } 
    ] 
    } 
}, 

"StatisticAlarmHigh": { 
    "Type": "AWS::CloudWatch::Alarm", 
    "Properties": { 
    "AlarmDescription": "Alarm if there are too many unhealthy hosts.", 
    "MetricName": "RequestCount", 
    "Namespace": "AWS/ELB", 
    "Statistic": "Sum", 
    "Period": "60", 
    "EvaluationPeriods": "2", 
    "ComparisonOperator": "GreaterThanThreshold", 
    "Threshold": "4000", 
    "AlarmActions": [ 
     { 
     "Ref": "WebServerScaleUpPolicy" 
     } 
    ], 
    "Unit": "Count", 
    "Dimensions": [ 
     { 
     "Name": "AutoScalingGroupName", 
     "Value": { 
      "Ref": "WebServerGroup" 
     } 
     } 
    ] 
    } 
}, 

üzerinde bir durum olarak "yetersiz veri" alarmı oluşturur kaynaktan. Herkes bana bunun nedeninin ne olabileceğini söyleyebilir mi? Ve ELB'de istek sayımı alarmı kullanmak için mevcut herhangi bir örnek/örnek şablonu varsa, takdir edilecektir.

cevap

6

sizin Amazon CloudFormation şablonun Elastic Load Balancing (ELB) parçası alarmı parçası tamam görünüyor, ama bir AutoScalingGroupName başvuran ölçüde sizin Amazon CloudWatch parçası, bir muhtemelen yanlış boyut içerir adlı WebServerGroup - Bu değil bölüm Boyutlar başına gibi desteklenen boyut

    : Elastik Yükü Dengeleme verilerini belirten sayfa Monitoring Your Load Balancer Using CloudWatch tarihinde Metrikleri'ni Dengeleme Elastik Yük, için aşağıdaki boyutlara herhangi boyunca toplanmış olabilir
  • LoadBalancerName - Metrik verilerini belirtilen yük dengeleyiciye bağlı Amazon EC2 örnekleriyle sınırlar.
  • AvailabilityZone - Metrik verilerini belirtilen Kullanılabilirlik Alanı'nda yük dengeleyecek şekilde sınırlar.
+0

Teşekkürler, Steffen Opel. Boyutları değiştirdim ve işe yarıyor. –