Veeam Backup for Microsoft 365 - Dienste beenden und starten TapeJob Bandsicherung
Aus znilwiki
Changelog:
- 20.02.2025 erste Version
Vorwort
Bei meiner Arbeit haben praktisch alle meine Kunden mindestens einen separaten Bare-Metal-Backupserver mit ausreichend lokalen Speicherplatz. Auf diesem ist zumeist Veeam Backup & Replication installiert. Zudem verfügen die Mehrzahl über eine Tape-Libray.
Es wird also zunächst ein Backup-2-Disk vorgenommen und im Anschluss auf Band / Tape geschrieben.
Kunden die Microsoft 365 nutzen haben dann zusätzlich auf dem Backupserver Veeam Backup for Microsoft 365 installiert. Das läuft parallel vor sich hin, kein Problem.
Die Daten hätte man aber natürlich gerne ebenfalls mit auf Band.
Die Festplatten werden immer größer - und dabei ist ein Problem aufgetaucht was ich bisher auch noch nicht kannte:
Failed to create a VSS snapshot for D: Details: Insufficient storage
sowie diverse Fehler beim Zugriff auf die Dateien des Microsoft 365 Backups.
Der Grund in diesem Fall ist das die Festplatte auf der die Backupdaten liegen, größer als 64TiB ist:
Und das Microsoft VSS funktioniert nur bis 64TiB - keine Chance im Moment das bei größeren Laufwerken zu verwenden.
Lösungen
Lösung A wäre die Festplatte in mindestens 2 Partitionen aufzuteilen. Das verschwendet aber natürlich unnötig Platz und rächt sich ggf. irgendwann wenn diese zu klein werden sollte.
Der BackupJob von Veeam Backup for Microsoft 365 läuft aber ja nicht die ganze Zeit. Bei dem Kunden mit dem Problem werden sogar 2 Organisationen mit einigen Terrabyte Umfang gesichert - Trotzdem beträgt die tägliche Laufzeit nur wenige Minuten.
Die Lösung war in diesem Fall die Dienste für Veeam Backup for Microsoft 365 für den Zeitraum der Bandsicherung zu stoppen (ja ganz so wie früher in den 90er bis 2000er Jahren).
Skripte
Die Dienste für Veeam Backup for Microsoft 365 sind in der Dienste-Übersicht schon einheitlich vom Namen her gekennzeichnet:
Darauf stützen sich auch meine Skripte. Nach dem Erstellen probiert Ihr die beiden Skripte am besten einmal aus.
Stop-Skript
Dateiname: VeeamBackupforMicrosoft365_stop_services.ps1
Pfad: C:\Skripte
# Alle "Veeam Backup for Microsoft 365" Dienste stoppen:
Get-Service -DisplayName "Veeam Backup for Microsoft 365*" | Where-Object Status -Like "Run*" | Stop-Service
Das Skript stoppt alle Dienste deren Anzeigename mit Veeam Backup for Microsoft 365* beginnt (man beachte den * und die gerade gestartet sind.
Start-Skript
Dateiname: VeeamBackupforMicrosoft365_start_services.ps1
Pfad: C:\Skripte
# Alle "Veeam Backup for Microsoft 365" Dienste starten die auf Automatisch stehen:
Get-Service -DisplayName "Veeam Backup for Microsoft 365*" | Where-Object StartType -Like "Auto*" | Start-Service
Das Skript startet alle Dienste deren Anzeigename mit Veeam Backup for Microsoft 365* beginnt (man beachte den * und die auf Starttyp Automatisch oder Automatisch (Verzögerter Start stehen.
Einbindung in den TapeJob
Die Pfade der beiden Skripte sind nun:
C:\Skripte\VeeamBackupforMicrosoft365_stop_services.ps1 C:\Skripte\VeeamBackupforMicrosoft365_start_services.ps1
Dies fügen wir im TapeJob unter Options => Advanced... => Advanced hinzu:
Der Aufruf ist wie folgt:
Run the following script before the job:
powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -WindowStyle Hidden -File C:\Skripte\VeeamBackupforMicrosoft365_stop_services.ps1
Run the following script after the job:
powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -WindowStyle Hidden -File C:\Skripte\VeeamBackupforMicrosoft365_start_services.ps1
Die Parameter haben sich über die Jahre bewährt und haben folgende Bedeutung:
powershell.exe : Starte die PowerShell -ExecutionPolicy Bypass : Keine Warnung/Verhinderung von unsignierten Skripten -NoLogo : Keinen PowerShell Header ausgeben -NonInteractive : Keine Interaktiven Abfragen / Nachfragen -NoProfile : Kein Windows Profil laden -WindowStyle Hidden : Eventuelles Fenster verstecken -File C:\...\..es.ps1 : Skript das gestartet werden soll
Testen
Wenn der TapeJob nun das nächste mal läuft, sollte dieser ohne Fehler sichern können. Im Anschluss sollten die Veeam Backup for Microsoft 365 wieder laufen (in der Regel 2 von 4)