Sie haben einen Dienst, der ständig ausgeht oder sonstige wiederkehrende Probleme die sich partout dauerhaft nicht lösen lassen und nur eine einfache Aktion benötigen zum Normalzustand? Dann zeige ich Ihnen in diesen Artikel, wie genau Sie so etwas umsetzen können in servereye mit unseren PowerShell Helpers.

 

Softwareprodukte weisen Fehler auf. Das ist aufgrund der Vielzahl an Konfigurationsmöglichkeiten von Hardware und Software unumgänglich. Schlimmer ist es aber , wenn es Probleme gibt die sich nicht direkt lösen lassen. Sei es, dass man auf ein Update angewiesen ist (oder keines mehr kommt) oder sonstige zeitrelevante Punkte vorliegen. Wenn die Lösung dann so etwas einfaches ist wie das Neustarten eines Dienstes oder Prozesses ist, ist dies umso ärgerlicher und man will hierfür einen Automatismus schaffen.

 

Voraussetzungen

Zuallererst müssen wir jedoch prüfen, ob die Voraussetzungen erfüllt sind um eine solche Aktion in servereye zu definieren.

 

Mit dem Befehl „Install-Module -Name ServerEye.Powershell.Helper -Scope CurrentUser“ können Sie die Helpers installieren.

Automatisierung - PowerShell Helpers

Ob alles korrekt installiert wurde können Sie nochmal überprüfen mittels Get-Module -ListAvailable.

Automatisierung - Get-Module

Bevor ich mich nun um das Skript kümmere, benötige ich noch die ID des Sensors, welcher für die Aktion relevant ist. Wenn dieser Sensor in einen Fehlerzustand geht, wird die entsprechende Aktion ausgelöst.

Die ID finde ich dabei direkt im OCC, in dem ich auf das „i“Symbol klicke und das Feld aId betrachte.

Automatisierung - Sensor-ID

 

Die Aktion durchführen

Nun haben wir alles was wir benötigen um das Skript-Template anzupassen und zu nutzen. Am besten macht man dies mit der in Windows integrieren ISE für die PowerShell.

Automatisierung - PowerShell-ISE

Nun scrollen wir einfach zu Zeile 62, wo die Aktion definiert werden kann, die ich durchführen möchte. Es gibt dort bereits ein paar auskommentierte Beispiele, aber Sie können an dieser Stelle natürlich tun was Sie wollen. Das heißt Logdateien löschen, Dienste bereinigen, Prozesse abschießen, Backups pausieren. Die Möglichkeiten sind vielfältig und nur durch das .NET Framework und die PowerShell begrenzt.

Sie können sich auch gerne an den Beispielen in diesem älteren Blogbeitrag  (Aktionen dank PowerShell) bedienen.

 

Automatisierung - Aktion

 

Nach der Änderung sollten Sie das Skript einmal testen, ob die gewünschte Funktion gegeben ist.

 

Automatisierung - Test-Skript

Automation mit der Windows Aufgabenplanung

Nun bringt uns ein Test alleine herzlich wenig. Wir wollen das ganze natürlich automatisch und regelmässig prüfen lassen. Deswegen macht es Sinn ein kleines Boardmittel von Windows zu nutzen, die Aufgabenplanung.

Dort erstellen wir einfach einen neuen Task:

Automation - Aufgabenplaner1

Stellen Sie den zeitlichen Rahmen ein, wie oft die Abfrage durchgeführt werden soll:

Automation - Aufgabenplanung2

Und das allerwichtigste, die eigentliche Aktion. Geben Sie hier bei Programm den vollen Pfad zur PowerShell.exe an, C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe. 

Als Argument übergeben Sie -file „PfadzumSkript“. Den Startpfad können Sie weglassen oder mit dem Verzeichnis angeben, in welchem das Skript ausgeführt wird.

Automatisierung - Aufgabenplanung3

Nun sind Sie fertig und haben ein Problem weniger! Durch diese Methode ergeben sich viele Möglichkeiten. Haben Sie bekannte Probleme, die Sie mit uns teilen möchten? Dann immer her mit dem Feedback an unser Support-Team unter support.server-eye.de. Wir freuen uns 🙂

5/5 - (3 votes)