Translations of this page:

Windows Shutdown-Script (VBS)

Die Problematik

Tools wie Nagios werden von Aussenstehenden oft danach bewertet, wie viele „Fehlalarme“ sie generieren. Eine häufige Ursache für Fehlalarme ist, wenn ein Server mal eben durchgebootet wird und der Nagios-Server das merkt. Prompt geht eine Meldung raus, die über einen nicht erreichbaren Host berichtet. Natürlich ist es so gedacht, dass der Admin, der einen Server durchbootet eine Downtime im Nagios einträgt, die Realität sieht aber leider anders aus.

Der Lösungsansatz

Ein Ansatz um der Problematik entgegen zu wirken ist ein automatisches Shutdown-Script. In Windows lassen sich Startup-,Shutdown-,Logon- und Logoff-Scripte per Policy einbinden. Eine schöne Methode ist es, das Shutdown-Script per Group Policy den Servern zu zuweisen, vor jedem regulären Shutdown wird dann dieses Script ausgeführt und benachtichtigt den Nagios-Server über die geplante Downtime des Servers. Um die Group-Policy wirklich nur auf die überwachten Server anzuwenden, ist es von Vorteil, wenn man alle zu überwachenden Server, die im Active Directory existieren in einer Berechtigungsgruppe zu sammeln und diese Berechtigungsgruppe als Filterkriterium für die Group Policy zu benutzen. Um die Wartung des Scriptes einfacher zu gestalten, empfiehlt es sich, dieses Script auf einem zentralen Share bereit zu stellen, die Berechtigungen für diesen Share können anhand der o.G. Berechtigungsgruppe vergeben werden.

Das Script kann ohne Startparameter eine Host-Downtime für den Host anlegen, auf dem es ausgeführt wird.

Weitere Anwendungsgebiete

Im Rahmen eines Backups müssen oft Dienste heruntergefahren und anschließend neu gestartet werden. Backup-Programme wie Legato erledigen das über Scripte, die vor und nach dem Backup ausgeführt werden. Um auch hier die Benachrichtigung durch Nagios zu unterbinden, kann das Downtime-Script eingebunden werden.

Mit 3 Startparametern kann eine Service-Downtime an Nagios gesendet werden:

wscript nagios_downtime.vbs /H <Hostname> /S <Servicename> /T <Downtime>
  • <Hostname>: Der Hostname, wie er im Nagios eingetragen ist. Kann auch, durch zwei Anführungszeichen, weggelassen werden und durch das Script ermittelt werden
  • <Servicename>: Der Name des Dienstes, wie er im Nagios eingetragen ist. Kann auch, durch zwei Anführungszeichen, weggelassen werden, dann wird aber eine Host-Downtime anstatt einer Service-Downtime eingetragen
  • <Downtime>: Dauer der Scheduled Downtime in Minuten vom Zeitpunkt der Erstellung an

Das Script (nagios_downtime.vbs)

Hier findet ihr das Nagios Downtime Script script.

Schlusswort

Bei Fragen und Problemen mit dem Script, meldet euch am Besten im Nagios-Portal.

nagios/howtos/shutdown_script_vbs.txt · Zuletzt geändert: 2009/12/14 23:30 von lami
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0