Bash-Monitoring und Alarmierung per SMS

vorhergehende Artikel in: Java Linux Android
07.02.2016

Wie bereits in früheren Artikeln beschrieben, suchte ich aus verschiedenen Gründen nach einer Möglichkeit, IT-Infrastruktur zu überwachen. Ich stelle hier nun die Möglichkeit vor, diese Lösung kostengünstig um eine Alarmierungskomponente zu erweitern.

Die Alarmierung über Abweichungen im Rechenzentrumsbetrieb stellt verschiedene Anforderungen, von denen zwei durch die Eigenentwicklung auf jeden Fall adressiert werden sollten: Die Alarmierung sollte auf jeden Fall auch dann funktionieren, wenn das Rechenzentrum von einem Stromausfall betroffen wäre und wenn die Internetanbindung ausfiele.

Anforderung Nummer eins wäre durch eine irgendwie geartete unterbrechungsfreie Stromversirgung der Alarmierungskomponente zu gewährleisten. Mit Anforderung twei fällt die Alarmierung mittels EMails weg - bei Internet-Ausfall würden ja auch keine EMails mehr versendet werden...

Daher habe ich mich dafür entschieden, die heute kleinsten Computer mit zwei unabhängigen Kommunikationsschnittstellen einzusetzen: Ein Smartphone mit Android-Betriebssystem ist heutzutage sogar schon für 60 Euro zu haben, wenn man ein wenig sucht. Damit kann sich auch kein Kleinunternehmer mehr auf die Kosten rausreden, die eine Alarmierungsappliance verursachen würde. Ein netter Nebeneffekt dieser Hardwarewahl ist die Tatsache, dass damit auch eine unterbrechungsfreie Stromversorgung gewährleistet ist - jedes Smartphone verfügt über ein Akku. Die Alarmierung erfolgt über SMS. Damit ist es auch dann noch möglich, Botschaften und Statusmeldungen zu versenden, wenn Internet und Stromversorgung gestört sind.

Dazu musste dann noch eine kleine App geschrieben werden, die nur wenige Aufgaben hat: Sie holt die Ergebnisdatei vom Server ab und parst sie: Steht darin kein Datum, dessen Zeitstempel weniger als eine konfigurierbare Anzahl von Minuten von der Smartphone-Uhrzeit abweicht, wird eine Alarm-SMS abgesendet - entweder mit der originalen Fehlermeldung oder der Meldung, dass die Ergebnisdatei zu alt ist. Wurde eine Alarm-SMS abgesendet, wird so lange keine weitere gesendet, bis die gesendete am Gerät in der App quittiert wurde - wir wollen ja keine Gebührenexplosion, nur weil das Beheben des Fehlers zwei Stunden dauert...

Weiterhin sendet die App Alarmierungen, wenn der Akkustand unter einen kritischen Wert absinkt. Die Alarmierungen per SMS werden über eine entsprechende Activity konfiguriert: Diese zeigt alle im Telefonbuch hinterlegten Kontakte mit Mobilfunknummern an. Hier kann man die selektieren, an die die SMS versendet werden sollen. So ist es auch möglich, gleichzeitig mehr als nur eine Person über Probleme zu informieren.

Darüber hinaus bietet die App auch die Möglichkeit, Test-SMS zu versenden. Diese Funktion kann man zum Beispiel benutzen, nachdem man einen weiteren Empfänger hinzugefügt hat, um die Korrektheit der Telefonnummer zu prüfen.

Mit einem rückspeisefähigen Hub wären noch weitere Funktionalitäten denkbar - so könnte man in einem Unternehmen, in dem mindestens ein Administrator tagsüber vor Ort ist, das Versenden zusätzlich zeitlich steuern - wenn der Admin sowieso da ist, wäre es Geldverschwendung, SMS zu senden. Alternativ könnte man über den USB-Anschluss des Smartphones in dieser Zeit Hardware ansteuern, die über das Problem informiert (Signallampe, Geräusch,...).

Außerdem ist es möglich, die App dahingehend zu erweitern, Rufgruppen einzurichten. Diese könnten sogar mehrdimensional sein: einmal könnten bei Problemen die jeweils kompetenten Fachkräfte informiert werden - bei einem Admin-Team von beispielsweise 5 Leuten würden dann immer nur die zwei informiert, die sich mit Hardware oder Diensten oder ... auskennen. Zum anderen ist es auch möglich eine Hierarchie aufzubauen: Wird ein Fehler nicht innerhalb einer Stunde quittiert, wird der Manager/die Geschäftsführung,... darüber informiert.

Sicher lassen sich noch weitere Ideen formulieren. ich möchte es an dieser Stelle erst einmal dabei bewenden lassen.

Artikel, die hierher verlinken

Roadmap I Alarmmonitoring

12.10.2016

Der Alarmmonitor wird erweitert: Die Benachrichtigung erfolgt jetzt nicht mehr allein über SMS, sondern zusätzlich über Jabber (XMPP). Weiterhin wird das System mit einer Wissensdatenbank integriert.

Alarmierung per SMS um Rufgruppen erweitert

11.09.2016

Die Lösung zur Überwachung von IT-Technik, die im Fehlerfall per SMS alarmieren kann, habe ich in früheren Artikeln bereits aus verschiedenen Blickwinkeln beleuchtet - sie wurde nunmehr um Rufgruppen erweitert.

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Vorhaben 2020

    03.01.2020

    Genau wie letztes Jahr habe ich auch dieses Jahr wieder ein "Listche" verfasst, um mir all die interessanten Vorhaben zu notieren, die ich mit mittlerem zeitlichen Horizont anzugehen gedenke.

    Weiterlesen...

Neueste Artikel

  • Migration der Webseite und aller OpenSource Projekte

    In eigener Sache...

    Weiterlesen...
  • 38c3 - Nachlese

    Nach dem ersten Teil von mir als interessant eingestufter Vorträge des Chaos Communication Congress 2024 hier nun die Nachlese

    Weiterlesen...
  • 38c3 - Empfehlungen

    Nach dem So - wie auch im letzten Jahr: Meine Empfehlungen für Vorträge vom Chaos Communication Congress 2024 - vulgo: 38c3:

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.