Theodor Basler

Nimble OS 2.3 - Restore Workflow Automation für SnapShots

Blog Post created by Theodor Basler Employee on Oct 5, 2015

Falls Sie Nimble Storage mit Windows Servern betreiben, ist es best practice das Windows Toolkit (NWT) installiert zu haben. Bestehend aus Komponenten wie MPIO DSM und dem Nimble Connection Manager, ist es ist ein integraler Bestandteil beim Anbinden von Nimble Storage Volumes an die Windows Server .

 

Wussten Sie, dass mit dem Installieren des NWT auch nützliche PowerShell Tools installiert werden? Ja, und es beinhaltet ein neues cmdlet das speziell beim Verbinden von Clones auf bestehenden Volumes nützlich ist. Die Verwendung dieses cmdlets vereinfacht den Prozess sehr und erlaubt es die Anbindung vollständig zu automatisieren. In diesem Blog werde ich ein Beispiel, in welchem wir einen Clone von einem (VSS) synchronisierten SnapShot einer SQL Datenbank erstellen, genauer anschauen.

 

Zuerst schauen wir uns das PowerShell cmdlet etwas genauer an. Um es nutzen zu können, müssen wir das Nimble PowerShell Modul, welches durch das Nimble Windows Toolkit unter

C:\Program Files\Nimble Storage\bin\Nimble.Powershell.dll

speichert, importieren:

 

get-command.png

 

Wie man sehen kann, umfasst das Nimble PowerShell Modul insgesamt 4 cmdlets. Für den nachfolgenden Ablauf werden wir uns auf die cmdlets Get-NimVolume und Set-NimVolume fokussieren.

 

Um zu verstehen wie nützlich die beiden cmdlets sein können, lohnt es sich den Prozess, wie er ohne die beiden cmdlets aussehen würde, anzuschauen.

 

Nehmen wir an wir haben ein Clone erstellt und angebunden. Das ist toll aber wir können ihn nicht nutzen. Warum nicht, werden Sie sich fragen. Nun, werfen wir einen genaueren Blick darauf. Was sagt uns das Windows Disk Management Tool darüber?

disk offline.png

 

Das Volume ist offline. Keine Ursache, durch Rechtsklick auf die Disk können wir das Volume online bringen:

 

disk online no driveletter.png

 

Ist das alles was wir tun müssen? Nun, ist es leider nicht. Lasst uns die Attribute die auf der Disk gesetzt sind etwas genauer anschauen. Für das verwenden wir das altehrwürdige diskpart Tool:

 

attributes.png

 

OK, wir haben einiges zu tun. Unser Volumen ist schreibgeschützt, versteckt, markiert als SnapShot und hat keinen Laufwerksbuchstaben. Wir müssen diese Attribute mit diskpart ändern, bevor wir unsere neu erstellten Klon verwenden können.

 

Gehen Sie in die PowerShell.

 

Mit Get-NimVolume können wir unser Nimble Volumen anzeigen und mit Set-NimVolume können wir es online bringen, die richtigen Attribute setzen und ihm einen Laufwerksbuchstaben zuordnen. Lasst uns das Klone Volume mit dem Befehl Get-NimVolume finden:

 

get-nimvolume.png

 

OK cool, wir haben das Clone Volume gefunden. Wie können wir das Volume online bringen und seine Attribute setzen? An dieser Stelle werden wir den Befehl Set-NimVolume nutzen. Finden wir heraus welche Parameter das cmdlet unterstützt:

 

set-nimvolume-help.png

 

Wie Sie sehen können, ist es möglich das zu modifizierende Volume zu spezifizieren indem wir Set-NimVolume eine Windows disk ID oder eine Nimble Volume Seriennummer mitgeben die wir vom cmdlet Get-NimVolume erhalten. Um es noch einfacher zu machen, können wir einfach den Output von Get-NimVolume direkt in Set-NimVolume pipen.

 

Da wir das Clone Volume mithilfe von Get-NimVolume bereits gefunden haben, können wir es an Set-NimVolume weiterleiten um die Attribute zu setzen:

 

set-nimvolume.png

 

Bam, erledigt! Auf einen Schlag haben wir das Volume online gebracht, all die richtigen Attribute und den Laufwerksbuchstaben gesetzt. Mithilfe von Windows Disk Management und diskpart können wir all das verifizieren:

 

attributes-after.png

 

disk online.png

 

Nun ist unser Volume bereit für den Einsatz. Wir können die darin enthaltene Datenbank für Test und Entwicklung, Datenwiederhertellung oder was auch immer wir im Sinn hatten. Es braucht keine grosse Fantasie um sich Abläufe vorzustellen wo das extrem nützlich sein kann.

 

Zum Beispiel: Was, wenn wir einen automatisierten Ablauf, um eine Test- und Entwicklungsdatenbank auf tagesbasis von einem nächtlichen VSS synchronisierten SnapShot aktualisiert, haben wollten? Das ist etwas was wir nicht manuell machen möchten, aber mit Hilfe der cmdlets können wir es als Teil eines grösseren PowerShell Skripts vollständig automatisieren.

 

Oder falls wir den Verbindungsprozess der auf einen Downstream Array replizierten Volumes nach der Pormotion der Downstream Volumes automatisieren wollten?

 

Oder vielleicht verwenden wir Site Recovery Manager von VMware und wollten, den Workflow für unsere VMs welche in-guest iSCSI Verbindungen und die Nimble Anwendungsspezifische VSS Synchronisation nutzen, vollständig automatisieren?

 

Viel Spass!

Outcomes