Wir verwenden einige grundlegende CloudWatch-Alarme auf unseren EC2-Instanzen, um Benachrichtigungen über hohe CPU-Auslastung usw. über SNS durchzuführen. Gibt es eine gute Möglichkeit, unsere Standardalarmkonfiguration automatisch auf neue EC2-Instanzen anzuwenden, die von einer Auto-Scaling-Gruppe gestartet werden?
Antwort1
Viele der gängigen CloudWatch-Metriken werden auch basierend auf ihrem Auto Scaling-Gruppennamen aggregiert.
Sie können also Alarme basierend auf der CPU-Metrik der Auto Scaling-Gruppe erstellen. Sie sehen die Metriken der einzelnen Instanzen nicht, können aber mit Maxima, Minima, Durchschnittswerten usw. arbeiten.
Antwort2
Sie könnenGesamtwolkezur automatischen Alarmerstellung. Sie haben kürzlich eine ähnliche Lösung veröffentlicht. Es gibt eine kostenlose Stufe, die Sie verwenden können.
Antwort3
Es gibt nichts, was AWS sofort einsatzbereit hat, um dies zu ermöglichen. Sie könnten mit AWS Lambda etwas ad hoc verkabeln, um nach neuen Instanzen zu suchen und die Alarme hinzuzufügen.
Bei Setfive haben wir gerade veröffentlichtCloudwatch AutowatchDadurch werden Alarme automatisch zu EC2s hinzugefügt. Sie können das einfach in einem Cron-Job ausführen und es kümmert sich darum, Alarme zu neuen Autoscale-Instanzen hinzuzufügen.
Antwort4
Wenn Sie OpsWorks verwenden, können Sie ein Konfigurationsrezept schreiben, um jeder erstellten Instanz beim Start CloudWatch-Alarme hinzuzufügen. Verwenden Sie Folgendes, um die Instanz-ID aus dem Konfigurationsrezept abzurufen.
Rezept: erfordert „Rubygems“, erfordert „aws-sdk“, erfordert „net/http“
Metadatenendpunkt = 'http://169.254.169.254/latest/meta-data/' Instanz-ID = Net::HTTP.get( URI.parse( Metadatenendpunkt + 'Instanz-ID' ) )
ec2 = AWS::EC2.new() Instanz = ec2.instances[Instanz-ID]