NetApp PowerShell … kann Sachen, die kann nicht mal die CLI (Teil 1)

In den vergangenen Monaten hatte ich die Gelegenheit mit vielen NetApp Partner über unsere Microsoft Lösungen und Integrationen zu sprechen.

Ich war allerdings schon sehr überrascht, dass viele unserer Partner (als auch Kunden) gar nicht wissen, dass wir seit vielen Jahren ein NetApp PowerShell Toolkit kostenfrei zur Verfügung stellen.

Interessant fand ich auch einen Termin vor zwei Wochen mit einem Kunden aus Österreich. Dieser Kunde setzt seit vielen Jahren Microsoft Hyper-V (früher Server 2008 R2, jetzt Server 2012R2) ein. Nun steht dieser Kunde aber vor der Herausforderung viele seiner virtuellen Harddisks (sprich die VHD Files) in ein neues Format, die sogenannten VHDX Files umzuwandeln.

OK hab ich mir nun gedacht, ich werde mal etwas dazu schreiben… denn wenn ich ehrlich bin, gibt es in unserem Powershell Toolkit ein paar Funktionen und Kommandos, die gibt es nicht in der CLI und damit können wir die o.g. und viele andere Herausforderungen lösen.

 

In Teil 1 dieses Blogs möchte ich beispielhaft zeigen, wie man sehr einfach per Powershell ein Clustered Shared Volume (CSV) anlegen kann. In Teil 2 dieses Blogs zeige ich, wie wir die o.g. Herausforderung in Bezug auf Konvertierung von VHD nach VHDX lösen und Teil 3 beschäftigt sich mit dem Thema „… ich muss mal schnell was clonen“ ...

 

Also nun weiter zum Teil 1 – Clustered Shared Volume per PowerShell anlegen…

In meiner Umgebung habe ich einen Hyper-V Cluster mit zwei bestehenden Clustered Shared Volumes (CSV01 und CSV02).

 

0.jpg

 

Damit man mit NetApp Powershell arbeiten kann, muss man das Powershell Modul laden. Zusätzlich habe ich aber gleich weitere Module für Hyper-V und den FailoverCluster mit geladen.

 

1.jpg

 

Nun benötige ich noch eine Verbindung zu meinem Cluster und/oder zu meiner Storage Virtual Maschine (kurz SVM).

 

x2.jpg

 

Als nächstes möchte ich wissen, welche Volumes es bereits gibt.

 

x3.jpg

 

Nun erstelle ich mir ein neues Volume mit dem Namen vol_CSV03 ...

 

x4.jpg

 

... und eine neue LUN mit dem Namen lun_csv03.

 

x5.jpg

 

Das nächste Kommando (eines meiner Favoriten) zeigt mir sehr schnell und einfach, welche LUN, in welchem Volume, auf welchem Storage System, welchem Laufwerkbuchstabe oder MountPoint entspricht. Ohne dieses Kommando kann man bei Servern mit vielen gemappten Luns schon einmal den Überblick verlieren.

 

x6.jpg

 

OK nachdem ich nun weiß, dass die Lun lun_csv01 auch an meinem Hyper-V Cluster hängt, hilft mir das nächste Kommando, um das Igroup mapping für meine neue Lun lun_csv03 genauso zu machen. Also spar ich mir den ganzen Igroup und Mapping Aufwand. Das Kommando sagt, mach es so wie bei ersten Lun lun_csv01.

 

x7.jpg

 

So nochmal kurz überprüfen, ob auch alles richtig gemappt wurde. Passt, der Zugriff auf die Lun darf von den beiden Initiatoren bzw. Servern erfolgen.

 

x8.jpg

 

Als nächstes einen „Rescan“ auf den Hosts. Die neue Lun wurde als „Un-initialized“ erkannt und bekommt ein neues Volume ohne Laufwerksbuchstaben oder Mount Point.

 

x10.jpg

 

Zuletzt wird die neue Lun noch als Clustered Shared Volume meinem Cluster bereitgestellt. 

 

x11.jpg

 

Und wie man nun sehen kann, steht meine Lun als neues Clustered Shared Volume bereit.

 

12.jpg