Ausführen von Amazon Linux AMI. Es scheint, dass CloudWatch nicht nach freiem Speicherplatz sucht. Ich habe eine Reihe von Servern und möchte im Idealfall nicht jeden mit einem Mailserver, Skript zum Überprüfen des Speicherplatzes usw. konfigurieren müssen.
Gibt es einen einfacheren Weg, dies zu tun?
linux
amazon-ec2
disk-space-utilization
DaBeeeenster
quelle
quelle
Die Steuerungs- und Überwachungstools von EC2 können Ihnen diese Daten nicht zur Verfügung stellen, da das Dateisystem Ihrer Instanzen NUR für die Instanz selbst zugänglich ist . Sowohl die grundlegende Architektur der Hardware als auch das Sicherheitsmodell erfordern diese Einschränkung. Überlegen Sie, wie schlimm es wäre, wenn Software außerhalb Ihres Computers die Dateien auf Ihren Festplatten durchsuchen könnte!
Hier ist eine einfache Möglichkeit, cron (ohnehin auf den meisten Systemen installiert) dazu zu bringen, diese Daten regelmäßig auf Ihre Fehler zu überprüfen. Ihre Systeme sollten ohnehin die Mindestanforderungen für die Verarbeitung von Benachrichtigungen über Root-E-Mails erfüllen. Ich empfehle, mindestens einen materialistischen Agent für ausgehende E-Mails zu haben und den Root- oder Administrator-Alias so zu konfigurieren, dass er auf allen von Ihnen verwalteten Systemen an Sie weitergeleitet wird. Viele Programme einschließlich
cron
erwarten diese Konfiguration.Sie könnten dies zu Ihrer Crontab hinzufügen:
Um das zu brechen, das hier
test
Befehl erstellt einen einfachen Shell-Vergleich mit dem-lt
Operator less than und einem festen Wert, der 1 GB freiem Speicherplatz entspricht.df
Befehl testet den freien Speicherplatz im/
Dateisystemgrep
bekommt man nur die Linie der Ausgabe , die Sie brauchen statt der Headerdf
enthält.awk
Get ist nur die vierte Spalte in der Ausgabe, die Nummer des freien Speicherplatzes.&&
sagt, dass der nächste Befehl nur ausgeführt werden soll, wenn der erste (dertest x -lt y
) true zurückgibt.quelle
Ich habe ein Skript geschrieben, um mehrere Server in meiner EC2-Gruppe zu überprüfen. Es wird eine Datei mit einer Liste aller Server-IP- / Domänennamen in einer einzelnen Zeile benötigt.
quelle
Schrittweise Anleitung zum Einrichten auf einer EC2-Instanz mit CloudWatch:
http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/mon-scripts.html
quelle
Ich verwende dieses Skript: http://nixcraft.com/shell-scripting/3238-shell-script-check-disk-space-remote-systems.html
quelle
Cron ist dein Freund. Legen Sie diese Datei in Ihr Verzeichnis /etc/cron.daily und sie wird einmal pro Tag ausgeführt:
HINWEIS: In diesem Skript wird angegeben, dass bereitgestellte CD-ROMs voll sind.
quelle
Dies ist ein kurzes, von mir geschriebenes PowerShell-Skript, das auf unserem DC in AWS ausgeführt wird und eine E-Mail an eine Gruppe von Empfängern sendet, wenn ein Laufwerk voll ist. Es wird eine CSV mit 2 Spalten benötigt - ein Name mit dem Titel und ein Laufwerk mit dem Titel und einem Laufwerksbuchstaben. Wir haben keinen Mail-Server in unserer AWS-Umgebung, daher habe ich ihn so konfiguriert, dass er über SES gesendet wird. Sie können das Skript auch leicht modifizieren, um nur von Zeit zu Zeit einen Bericht über die Laufwerksauslastung zu senden, wenn Sie möchten. Ich dachte nur, dass ich das hier posten würde, da alle Lösungen, die ich gefunden habe, für Linux-Instanzen waren.
quelle