SQL Server Dienste automatisieren mit PowerShell - SSIS, SSRS, SSAS und TSM Backup konfigurieren

7 PowerShell-Funktionen fuer die vollautomatische Konfiguration aller SQL Server Begleitdienste: SSIS Integration Services, SSRS Reporting Services, SSAS Analysis Services und TSM Spectrum Protect Backup - ohne manuelle Wizards und ohne Zeitverlust.

7 Funktionen SSIS / SSRS / SSAS TSM / Spectrum Protect

SQL Server Dienste - Funktionen im Ueberblick

Invoke-sqmSsisConfiguration - SSIS SQL Server Integration Services vollautomatisch konfigurieren PowerShell

Was macht die Funktion?

Konfiguriert SQL Server Integration Services (SSIS) vollautomatisch: Service Account setzen, SSISDB-Katalog erstellen, Firewall-Regel fuer SSIS-Port oeffnen und Verzeichnisberechtigungen fuer Package-Speicher konfigurieren. Unterstuetzt sowohl SSIS im Package-Deployment-Modell als auch das Projekt-Deployment-Modell mit SSISDB.

Wann nutzt man sie?

Bei der Ersteinrichtung eines neuen SSIS-Servers als Teil des standardisierten Onboarding-Prozesses. Nach einem SQL Server Upgrade wenn SSIS neu konfiguriert werden muss. Wenn ein bestehender SSIS-Server migriert und neu aufgebaut wird.

Typische Probleme

  • SSISDB-Katalog nicht erstellt - Projekt-Deployment-Modus funktioniert nicht
  • Fehlende Firewall-Regel blockiert SSIS-Zugriff von ETL-Clients
  • Falscher Service Account ohne ausreichende Berechtigungen auf Quell-/Ziel-Systemen

Vorteile

  • Vollstaendige SSIS-Einrichtung in einem Befehl statt mehrerer manueller Konfigurationsschritte
  • Automatische Erstellung des SSISDB-Katalogs mit korrekten Verschluesselungseinstellungen
  • Verifikation nach der Konfiguration: SSIS-Dienst laeuft und Katalog ist erreichbar
# SSIS vollautomatisch konfigurieren
Invoke-sqmSsisConfiguration -SqlInstance "SQL01" -ServiceAccount "DOMAIN\ssis_svc"

# SSIS mit SSISDB-Katalog und benutzerdefinierter Verschluesselung
Invoke-sqmSsisConfiguration -SqlInstance "SQL01" -CreateSsisdb -SsisdbPassword "CatalogPass123"

Install-sqmSsrsReportServer - SSRS SQL Server Reporting Services vollautomatisch installieren PowerShell ohne Wizard

Was macht die Funktion?

Installiert SQL Server Reporting Services (SSRS) vollautomatisch ohne den manuellen Konfigurations-Wizard. Laedt das SSRS-Installationspaket aus dem konfigurierten Pfad, fuehrt die Installation durch und uebergibt danach die Kontrolle an Set-sqmSsrsConfiguration fuer die vollstaendige Konfiguration. Protokolliert alle Installationsschritte.

Wann nutzt man sie?

Bei der Bereitstellung neuer SSRS-Instanzen als Teil automatisierter Server-Provisionierung. Wenn SSRS auf einem Server installiert werden muss der keinen interaktiven Desktop-Zugang hat. Bei der Replikation einer SSRS-Konfiguration auf mehrere Server.

Typische Probleme

  • SSRS-Installationspaket nicht am konfigurierten Pfad - Installation schlaegt fehl
  • Fehlende Windows-Features als Voraussetzung fuer SSRS werden nicht automatisch installiert
  • SSRS-Installation ohne anschliessende Konfiguration - Report Server nicht erreichbar

Vorteile

  • Vollautomatische Installation ohne interaktiven Wizard-Dialog
  • Automatische Pruefung und Installation von Windows-Voraussetzungen
  • Nahtloser Uebergang zur Set-sqmSsrsConfiguration fuer Gesamtkonfiguration
# SSRS installieren (Installer-Pfad aus Set-sqmConfig)
Install-sqmSsrsReportServer -ComputerName "SSRS01"

# SSRS installieren und sofort konfigurieren
Install-sqmSsrsReportServer -ComputerName "SSRS01" -SqlInstance "SQL01" -ConfigureAfterInstall

Set-sqmSsrsConfiguration - SSRS Report Server vollautomatisch konfigurieren PowerShell: URL, Datenbank, Subscriptions

Was macht die Funktion?

Konfiguriert einen SSRS Report Server vollautomatisch: Service-Account setzen, Report Server URL und Report Manager URL konfigurieren, Report Server Datenbank erstellen oder verbinden, SSL-Zertifikat binden und E-Mail-Subscription-Einstellungen konfigurieren. Alle Schritte gemaess WMI-Konfiguration ohne Report Server Configuration Manager.

Wann nutzt man sie?

Direkt nach der Installation von SSRS um den Report Server in Betrieb zu nehmen. Bei der Migration des Report Servers auf einen neuen SQL Server (Report Server DB). Wenn die SSRS-Konfiguration standardisiert und reproduzierbar auf mehreren Servern ausgerollt werden soll.

Typische Probleme

  • Report Server URL nicht konfiguriert - Report Manager nicht erreichbar
  • Falscher Service Account ohne Rechte auf die Report Server Datenbank
  • SSL-Zertifikat nicht gebunden - nur unverschluesselte HTTP-Verbindungen moeglich

Vorteile

  • Vollstaendige SSRS-Konfiguration ohne manuellen Report Server Configuration Manager
  • Idempotent: kann sicher mehrfach ausgefuehrt werden - bestehende Konfiguration wird geprueft
  • Automatisches SSL-Zertifikat-Binding falls Zertifikat konfiguriert ist
# SSRS vollstaendig konfigurieren
Set-sqmSsrsConfiguration -ComputerName "SSRS01" -SqlInstance "SQL01" -ServiceAccount "DOMAIN\ssrs_svc"

# Mit SSL-Zertifikat und SMTP fuer Subscriptions
Set-sqmSsrsConfiguration -ComputerName "SSRS01" -SqlInstance "SQL01" -SmtpServer "mail.firma.de" -BindSslCert

Test-sqmSsasDirectoryPermissions - SSAS NTFS-Verzeichnisrechte pruefen und korrigieren PowerShell

Was macht die Funktion?

Prueft die NTFS-Verzeichnisberechtigungen fuer SQL Server Analysis Services (SSAS): Daten-Verzeichnis, Backup-Verzeichnis, Log-Verzeichnis und Temp-Verzeichnis. Vergleicht die vorhandenen Rechte mit den erforderlichen Mindestrechten fuer den SSAS Service Account. Bei Abweichungen koennen diese optional automatisch korrigiert werden.

Wann nutzt man sie?

Bei SSAS-Startproblemen nach einem Service Account Wechsel zur Diagnose fehlender NTFS-Rechte. Als Verifikationsschritt nach der SSAS-Installation um korrekte Verzeichnisberechtigungen zu bestaetigen. Bei periodischen Compliance-Checks in sicherheitssensiblen Umgebungen.

Typische Probleme

  • SSAS-Dienst startet nicht nach Service Account Wechsel - Rechte auf Verzeichnisse fehlen
  • SSAS-Backup schlaegt fehl weil Service Account kein Schreibrecht auf Backup-Verzeichnis hat
  • Zu grosszuegige NTFS-Rechte auf SSAS-Daten-Verzeichnis - Sicherheitsrisiko

Vorteile

  • Schnelle Diagnose von NTFS-Rechteproblemen ohne manuelles Klicken durch Explorer
  • Automatische Korrektur mit detailliertem Protokoll der Aenderungen
  • Mindest-Rechte-Pruefung unterstuetzt Least-Privilege-Sicherheitsprinzip
# SSAS Verzeichnis-Rechte pruefen
Test-sqmSsasDirectoryPermissions -ComputerName "SSAS01"

# Rechte pruefen und bei Abweichung automatisch korrigieren
Test-sqmSsasDirectoryPermissions -ComputerName "SSAS01" -AutoFix

Invoke-sqmTsmConfiguration - TSM IBM Spectrum Protect Client PowerShell konfigurieren: dsm.opt, Backup-Klassen, Scheduler

Was macht die Funktion?

Konfiguriert den TSM (IBM Spectrum Protect) Client auf einem SQL Server: erstellt oder aktualisiert die dsm.opt Optionsdatei mit TSM-Server-Adresse, Node-Name, Backup-Klassen fuer SQL Server Dateien und TSM Scheduler Konfiguration. Unterstuetzt sowohl lokale als auch Remote-Konfiguration per AD-OU oder Computerliste.

Wann nutzt man sie?

Bei der Ersteinrichtung neuer SQL Server Instanzen die per TSM gesichert werden sollen. Bei Aenderungen der TSM-Server-Konfiguration die auf alle SQL Server ausgerollt werden muessen. Bei der Migration von SQL Server Daten auf neue Verzeichnisse wenn Backup-Klassen angepasst werden muessen.

Typische Probleme

  • Falsche Backup-Klassen in dsm.opt - SQL Server Dateien werden nicht korrekt gesichert
  • TSM Scheduler nicht konfiguriert - geplante Backups laufen nicht
  • Node-Name falsch konfiguriert - Backup-Daten landen unter falschem Knoten im TSM-Server

Vorteile

  • Standardisierte dsm.opt-Konfiguration fuer alle SQL Server in einer Umgebung
  • Massenausrollbar per AD-OU oder Computerliste ohne manuelles Remote-Einloggen
  • WhatIf-Modus zeigt Aenderungen ohne Ausfuehrung fuer sicheres Testen
# TSM-Client auf SQL01 konfigurieren
Invoke-sqmTsmConfiguration -ComputerName "SQL01" -TsmServer "TSM01" -NodeName "SQL01_NODE"

# TSM auf alle SQL Server einer AD-OU ausrollen (WhatIf)
Invoke-sqmTsmConfiguration -OU "OU=SQLServer,DC=firma,DC=de" -TsmServer "TSM01" -WhatIf

Get-sqmTsmConfiguration - Aktuelle TSM-Konfiguration aus dsm.opt PowerShell auslesen und strukturiert ausgeben

Was macht die Funktion?

Liest die aktuelle TSM-Client-Konfiguration aus der dsm.opt Datei und gibt sie als strukturiertes PowerShell-Objekt aus: TSM-Server-Adresse, Node-Name, Backup-Klassen, Scheduler-Einstellungen und alle weiteren Optionen. Unterstuetzt Remote-Lesezugriff auf mehrere Server gleichzeitig.

Wann nutzt man sie?

Zur Inventarisierung der TSM-Konfiguration aller SQL Server in der Umgebung. Bei der Fehlersuche wenn ein SQL Server nicht korrekt per TSM gesichert wird. Als Verifikationsschritt nach Invoke-sqmTsmConfiguration um die Aenderungen zu bestaetigen.

Typische Probleme

  • Kein Ueberblick welche TSM-Konfiguration auf welchem Server aktiv ist
  • Manuelle Lektuere der dsm.opt-Datei bei vielen Servern sehr zeitaufwandig
  • Konfigurationsunterschiede zwischen Servern ohne Vergleichsmoeglichkeit schwer zu finden

Vorteile

  • Strukturierte Ausgabe statt roher Textdatei fuer einfachere Verarbeitung
  • Farm-weiter Konfigurationsueberblick aller TSM-Clients in einer Ausgabe
  • Pipeline-faehig: direkte Weiterverarbeitung fuer Vergleiche und Berichte
# TSM-Konfiguration von SQL01 auslesen
Get-sqmTsmConfiguration -ComputerName "SQL01"

# TSM-Konfiguration aller Server vergleichen
@("SQL01","SQL02","SQL03") | Get-sqmTsmConfiguration | Format-Table -AutoSize

Test-sqmTsmConnection - TSM-Serververbindung testen und Backup-Node-Status pruefen PowerShell

Was macht die Funktion?

Testet die Verbindung zum TSM-Server und prueft den Backup-Node-Status: Erreichbarkeit des TSM-Servers, Authentifizierung des Nodes, letzter erfolgreicher Backup-Zeitstempel und Backup-Statistiken. Gibt klare Fehlermeldungen bei Verbindungs- oder Authentifizierungsproblemen zurueck.

Wann nutzt man sie?

Bei Verdacht dass TSM-Backups nicht laufen - schneller Verbindungstest statt Analyse der TSM-Logs. Nach Netzwerkaenderungen zwischen SQL Server und TSM-Server um Erreichbarkeit zu bestaetigen. Als regelmaessiger Monitoring-Check ob alle SQL Server erfolgreich per TSM gesichert werden.

Typische Probleme

  • TSM-Server nicht erreichbar durch Firewall-Aenderungen ohne sofortige Benachrichtigung
  • Node-Passwort abgelaufen - TSM-Backups schlagen fehl ohne erkennbaren Grund
  • Backups laufen aber Daten landen in falscher Management-Klasse ohne Retentions-Policy

Vorteile

  • Schneller Verbindungstest ohne manuellen dsmc-Aufruf und Log-Analyse
  • Zeigt letzten Backup-Zeitstempel fuer sofortige Verifikation der Backup-Aktualitaet
  • Klare Fehlermeldungen differenzieren zwischen Netzwerk-, Authentifizierungs- und Konfigurationsfehlern
# TSM-Verbindung von SQL01 zum TSM-Server testen
Test-sqmTsmConnection -ComputerName "SQL01"

# TSM-Verbindung aller Server pruefen, nur Fehler anzeigen
@("SQL01","SQL02","SQL03") | Test-sqmTsmConnection | Where-Object {$_.Status -ne "OK"}
Zurueck zum Index