Skripting prüfung, automatisierung und funktionserweiterung - Sebastian-Nicolae Matei

Post on 02-Jul-2015

80 views 0 download

description

Skripting prüfung, automatisierung und funktionserweiterung - Sebastian-Nicolae Matei

transcript

Skripting

Sebastian-Nicolae Matei, Technischer Consultant

acmeo cloud-distribution

Prüfung, Automatisierung und Funktionserweiterung

Agenda

»Wozu Skripten?

»Remote Management Interaktion

»Powershell

»Typische Fehler

»Beispiele

»fixitscripts.com

Wozu skripten?

“Simplizität für Wettbewerbsfähigkeit”

Ziel des Dashboards ist einfache Bedienung, zweckseffektiver Nutzung. Berücksichtigt man dies, so gelangt man immer in die Situation das es einbesonderes Bedürfnis gibt, für das keine Funktionexistiert.

Würden alle Wünsche erfüllt, würde MAX Remote Management an Funktionen erdrücken. Um Komplexität zu vermeiden, gibt es die Möglichkeitder Skriptprüfungen und automatisierten Aufgaben.

Skripte können von Superusern und Administratorenim Dashboard angewendet werden um Aufgaben in kleineren oder größeren Umgebungen zubewältigen.

Was kann mit Skripten erreicht werden?

» Dateien und Ordner manipulieren

» Systembereinigung

» Lokalisierte Aufgaben

» Netzlaufwerke

» Informationsausgabe

» Download von Anwendungen

…und, und, und…

Remote Management Interaktion

Script Writing Guidelines in der Hilfe:

https://dashboard.systemmonitor.us/helpcontents/script_guide.htm

Wenn ein Check im Dashboard alarmiert:

Wenn ein Check im Dashboard erfolgreich ist:

Text wird mit dem Standard-Ausgabebefehl der jeweiligen Skriptsprache an das Dashboard zurückgegeben.

» Beispiele für DOS Batch, VBScript und Powershell:

Pass Fail

DOS Batch echo “Success Message” echo “Error Message”

exit 0 exit 1001

VBScript wscript.echo( “Success Message” ) wscript.echo( “Error Message” )

wscript.Quit(0) wscript.Quit(1001)

PowerShell Write-Host “Success Message” Write-Host “Error Message”

Exit 0 Exit 1001

» Unter Windows werden folgende Skriptsprachen unterstützt, sofern Interpreter installiert: DOS Batch, JavaScript, Perl, PHP, PowerShell, Python, Ruby, VBS and CMD.

» Der Agent für Linux und OS X unterstützt Shell Skripte und interpretierte Sprachen, sofernInterpreter installiert, wie: Perl, PHP, Python, Ruby

» Eine Alarmierung im Dashboard geschieht mittels der Exit-Werte des Skriptes. Eine 0 bedeutetErfolg, alle anderen Zahlen ein Fehlschlagen.

Die Exit-Werte 1 – 999 sind vom System reserviert. Um Darstellungsprobleme des Ausgabetextes zuvermeiden, zur Alarmierung immer Werte außerhalb dieses Bereiches nutzen.

Exit Code Result

0 Pass

>0 Fail

1 - 999 Reserved exit codes

>1000 Displays text output in DashBoard

PowerShell

Grundlagen

» Release mit Exchange 2007

» Ab Windows 7 / Server 2008 vorinstalliert

» Windows XP, Vista und Server 2003 max. Version 2.0

» Aktuelle Version: 4.0 (WMF 5.0 Preview verfügbar)

» CMDLets

» .NET-Framework

» Kommandozeile oder Skript

» Erweiterung durch Snap-Ins

Besonderheiten

Datentypzuweisung

» Automatische Zuweisung des Datentyps an Variable

.NET-Framework

» Zugriff auf Methoden des .NET-Frameworks

Pipelines

» Pipes können gesamtes Objekt inkl. Methoden zurückliefern

Snap-Ins

» Erweiterung der CMDLets (VMware, Exchange, …)

Systemnähe

» Zugriff auf Registry, WMI und COM-Objekte

Typische Probleme

Berechtigungen

Sobald ein Skript im Dashboard hochgeladen wurde und hinzugefügt wird als:

» Skriptprüfung

oder

» automatisierte Aufgabe

…wird das Skript unter den Berechtigungen des Dienstes “Advanced Monitoring Agent” betrieben.

Vermeiden von Eingabe

Die Skripte, die man betreibt, sollten keine Benutzereingabe erfordern oder andereInteraktion durch den Benutzer.

Sollte das Skript eine Eingabe oder Rückmeldung erwarten, wird es an dieser Stellestehen bleiben und nicht bis zum Ende ausgeführt.

Berechtigungen

Skript funktioniert lokal einwandfrei:

» Prüfung des Accounts mit dem man eingeloggt ist

» Setzen der selben Berechtigungen für den Dienst “Advanced Monitoring Agent”

“Mein Skript läuft wie erwartet wenn ich es lokal ausführe. Warum funktioniert es nichtüber den Agenten?”

Umlaute

Das Dashboard hat Probleme mit der Interpretation von Umlauten.Umlaute werden nichtkorrekt dargestellt und das Skript wird falsch interpretiert.

Umlaute sollten ersetzt werden, wenn nicht vermieden.

Ausführungszeit

Die standard Ausführungszeit für Skripte beträgt 10 Sekunden. Nutzt man Skripte die in ein Netz kommunizieren, verzögert dies die Ausführung und kann zum Time-Out führen.

Bei der Ausführungszeit kann ein Maximalwert von 150 Sekunden gesetzt werden. VieleSkripte können zu Uploadverzögerung des Agenten führen.

Beispiele

Hyper-V Monitoring

» Prüfung des Ereignisprotokolles nicht möglich

» Leistungsdaten des Hosts

» Leistungsdaten der VMs

» Prüfung der Snapshots

» Automatisierung über Dashboard

Monitoring des vermeintlichen Hosts ist kein Monitoring!

Patch Management Automatisierung

» Abfrage der API nach aktuellem Patchstand

» Prüfung ob Patch für Installation, der gesperrt werden soll

» Notiz am Gerät hinterlegen über Aktionen

Patches sollen mittels Produktname oder Patchtitel gesperrt warden.

Managed Online Backup Berichte

» Abfrage der API zu den Backupsitzungen

» Ermitteln der Informationen zur letzten Sicherung

» Dynamische Erstellung der Nachricht über vorgegebene Textblöcke

» Versand der Nachricht aus dem Skript

Der Kunde wünscht Tagesberichte über seine Backups.

Leistungsüberwachung - Analyse

» Skript wird durch Fehlschlag der Leistungsüberwachung gestartet

» Skript ermittelt aktuelle Auslastung über Leistungsindikatoren

» Daten werden per E-Mail verschickt

Die Leistungsüberwachung alarmiert. Was hat den Alarm ausgelöst?

Downloadgeschwindigkeit

» Download einer Datei aus übergebenem Pfad

» Ermittlung der Geschwindigkeit zu gesetzten Intervallen

» Berechnung des Durchschnitts und Vergleich mit Grenzwert

» Ausgabe an das Dashboard

Messung der Internetgeschwindigkeit ohne SNMP.

FixITScripts.com

Fragen ?