Aktionen

Veeam Tape Library Bänder aus Mailslot automatisch importieren: Unterschied zwischen den Versionen

Aus znilwiki

(Die Seite wurde neu angelegt: „==Ausgangslage== Wir haben eine Tape Library in Veeam mit Mailslots. Das Exportieren innerhalb des Backup-to-Tapes Jobs klappt ganz wunderbar.<br> Cool wäre d…“)
 
 
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 6: Zeile 6:
<br>
<br>
----
----
==Lösung==
==Lösung 1==
Das geht - Stand 11.01.2021 mit Veeam 10 - nur per Powershell.<br>
Das geht - Stand 11.01.2021 mit Veeam 10 / 11 / 12 - nur per Powershell.<br>
===Das Skript==
 
===Das Skript===
Wir erstellen folgende Datei<br>
Wir erstellen folgende Datei<br>
  C:\Scripts\VeeamTapeImport.ps1
  C:\Scripts\VeeamTapeImport.ps1
Zeile 14: Zeile 15:
<source lang="powershell">
<source lang="powershell">
# Load Veeam Powershell Extensions
# Load Veeam Powershell Extensions
Add-PSSnapin VeeamPSSnapin
# In neueren Veeam Versionen (11 und höher) nicht mehr notwendig und deshalb auskommentiert
# Add-PSSnapin VeeamPSSnapin
# Connect to local Server
# Connect to local Server
Connect-VBRServer
Connect-VBRServer
Zeile 26: Zeile 28:
Der Parameter {{Key|-Name}} - dort müsst Ihr den Namen der Library eintragen wie er auch in der Veeam Console angezeigt wird (markieren, {{Key|F2}} drücken und kopieren)<br>
Der Parameter {{Key|-Name}} - dort müsst Ihr den Namen der Library eintragen wie er auch in der Veeam Console angezeigt wird (markieren, {{Key|F2}} drücken und kopieren)<br>
<br>
<br>
Alternativ: Hier eine Version die nur Wochentags importiert, nicht am Wochenende:<br>
<source lang="powershell">
$Wochentag = Get-Date -Format "dddd"
If (($Wochentag -notlike "Samstag") -And ($Wochentag -notlike "Sonntag")) {
    # Connect to local Server
    Connect-VBRServer
    # Wait a Moment
    timeout 5
    # Get TapeLibrary and Import Tapes from Mediaslots
    Get-VBRTapeLibrary -Name "IBM 3573-TL 1400" | Import-VBRTapeMedium
    # Disconnect
    Disconnect-VBRServer
}
</source>
Auf einem englischen System solltet Ihr die Bezeichnungen für Samstag und Sonntag entsprechend anpassen.<br>
----
===Die Aufgabe===
===Die Aufgabe===
In der Aufgabenplanung erstellen wir einen neue Aufgabe per {{Key|Aufgabe erstellen}}<br>
In der Aufgabenplanung erstellen wir einen neue Aufgabe per {{Key|Aufgabe erstellen}}<br>
Zeile 39: Zeile 58:
<br>
<br>
----
----
==Lösung 2: bei MFA etc.==
Das mit dem PowerShell-Skript funktioniert.<br>
Jedoch hatte ich mit dem Ausführen Bauchschmerzen. Denn inzwischen ist bei vielen Kunden der Zugriff zu Veeam eingeschränkt. Der Benutzer Administrator darf nicht mehr dran, die Benutzer haben alle MFA aktiviert und jeder Admin sein eigenes Konto.<br>
Man kann zwar ein Dienstkonto in Veeam definieren bei dem man MFA deaktiviert. Das muss aber auch die Administratoren-Rolle haben, sonst ist der PowerShell-Zugriff nicht erlaubt. Das Konto darf also alles, inklusive Anmeldung an der Managementkonsole.<br>
Die Lösung: Wir hängen das Skript einfach an einen Backup-Job:<br>
:[[Datei:ClipCapIt-250219-140658.PNG]]<br>
In einem Job unter
Storage => Advanced Settings => Scripts
lassen wir das Skript vor oder nach einem beliebigen Job laufen.<br>
Als Befehlszeile die gleiche wie man diese auch in Lösung 1 in der Aufgabenplanung eingerichtet hätte:<br>
powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -WindowStyle Hidden -File C:\Scripts\VeeamTapeImport.ps1
:[[Datei:ClipCapIt-250219-141043.PNG]]<br>
:[[Datei:ClipCapIt-250219-141250.PNG]]<br>
----
==Testen==
==Testen==
Startet die Aufgabe einmal von Hand oder das PowerShell-Skript per Doppelklick oder aus der Shell heraus.<br>
Startet die Aufgabe einmal von Hand oder das PowerShell-Skript per Doppelklick oder aus der Shell heraus.<br>
Zeile 45: Zeile 80:
<br>
<br>
----
----
==Kommentare==
==Kommentare==
<comments />
<comments />

Aktuelle Version vom 19. Februar 2025, 15:39 Uhr

Ausgangslage

Wir haben eine Tape Library in Veeam mit Mailslots. Das Exportieren innerhalb des Backup-to-Tapes Jobs klappt ganz wunderbar.
Cool wäre das er beim entnehmen der Bänder aus dem Mailslots einfach dort die neuen wieder einlegt und diese dann auch automatisch wieder importiert.
Das ist die Tape Library in Veeam:

ClipCapIt-210111-151625.PNG



Lösung 1

Das geht - Stand 11.01.2021 mit Veeam 10 / 11 / 12 - nur per Powershell.

Das Skript

Wir erstellen folgende Datei

C:\Scripts\VeeamTapeImport.ps1

mit folgendem Inhalt:

# Load Veeam Powershell Extensions
# In neueren Veeam Versionen (11 und höher) nicht mehr notwendig und deshalb auskommentiert
# Add-PSSnapin VeeamPSSnapin
# Connect to local Server
Connect-VBRServer
# Wait a Moment
timeout 5
# Get TapeLibrary and Import Tapes from Mediaslots
Get-VBRTapeLibrary -Name "IBM 3573-TL 1400" | Import-VBRTapeMedium
# Disconnect
Disconnect-VBRServer

Der Parameter -Name - dort müsst Ihr den Namen der Library eintragen wie er auch in der Veeam Console angezeigt wird (markieren, F2 drücken und kopieren)

Alternativ: Hier eine Version die nur Wochentags importiert, nicht am Wochenende:

$Wochentag = Get-Date -Format "dddd"
If (($Wochentag -notlike "Samstag") -And ($Wochentag -notlike "Sonntag")) {
    # Connect to local Server
    Connect-VBRServer
    # Wait a Moment
    timeout 5
    # Get TapeLibrary and Import Tapes from Mediaslots
    Get-VBRTapeLibrary -Name "IBM 3573-TL 1400" | Import-VBRTapeMedium
    # Disconnect
    Disconnect-VBRServer
}

Auf einem englischen System solltet Ihr die Bezeichnungen für Samstag und Sonntag entsprechend anpassen.


Die Aufgabe

In der Aufgabenplanung erstellen wir einen neue Aufgabe per Aufgabe erstellen

ClipCapIt-210111-152059.PNG
ClipCapIt-210111-152144.PNG
ClipCapIt-210111-152220.PNG
ClipCapIt-210111-152258.PNG
ClipCapIt-210111-152258.PNG
powershell.exe
-ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -WindowStyle Hidden -File C:\Scripts\VeeamTapeImport.ps1
ClipCapIt-210111-152432.PNG
ClipCapIt-210111-152500.PNG



Lösung 2: bei MFA etc.

Das mit dem PowerShell-Skript funktioniert.
Jedoch hatte ich mit dem Ausführen Bauchschmerzen. Denn inzwischen ist bei vielen Kunden der Zugriff zu Veeam eingeschränkt. Der Benutzer Administrator darf nicht mehr dran, die Benutzer haben alle MFA aktiviert und jeder Admin sein eigenes Konto.
Man kann zwar ein Dienstkonto in Veeam definieren bei dem man MFA deaktiviert. Das muss aber auch die Administratoren-Rolle haben, sonst ist der PowerShell-Zugriff nicht erlaubt. Das Konto darf also alles, inklusive Anmeldung an der Managementkonsole.
Die Lösung: Wir hängen das Skript einfach an einen Backup-Job:

ClipCapIt-250219-140658.PNG

In einem Job unter

Storage => Advanced Settings => Scripts

lassen wir das Skript vor oder nach einem beliebigen Job laufen.
Als Befehlszeile die gleiche wie man diese auch in Lösung 1 in der Aufgabenplanung eingerichtet hätte:

powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -WindowStyle Hidden -File C:\Scripts\VeeamTapeImport.ps1
ClipCapIt-250219-141043.PNG
ClipCapIt-250219-141250.PNG

Testen

Startet die Aufgabe einmal von Hand oder das PowerShell-Skript per Doppelklick oder aus der Shell heraus.
In Veeam in den Logs (z.B. Last 24 Hours) sollte die Importversuche zu sehen sein:

ClipCapIt-210111-152832.PNG



Kommentare

Kommentar hinzufügen
znilwiki freut sich über alle Kommentare. Sofern du nicht anonym bleiben möchtest, trage deinen Namen oder deine Email-Adresse ein oder melde dich an. Du kannst das Feld auch einfach leer lassen. Bei einem Kommentar wird deine IP-Adresse zusammen mit dem Text, den angegebenen Namen bzw. der Email-Adresse in der Datenbank für die Kommentare dauerhaft gespeichert. Genaueres kannst du hier nachlesen: Datenschutzerklärung
___________________________________________________________________________
Bitte beachte das der eingetragene Name oder die Email-Adresse für jeden sichtbar ist!