Daniel's Tech Blog

Cloud Computing, Cloud Native & Kubernetes

SMA Runbook – Convert WAP VM Role OS Differencing Disk

Wer sich mit dem VM Role Gallery Items für das VM Deployment im Windows Azure Pack befasst hat, der wird festgestellt haben, dass diese Differencing Disks verwenden. Für Cloud Service Provider sind diese Art von Disks sehr von Vorteil, da sie sehr wenig Storage bei vielen bereitgestellten VMs benötigen. Möchte man aber die VM Role Gallery Items in einem Unternehmen intern verwenden, dann kommt früher oder später die Frage auf, ob es denn Differencing Disks sein müssen. Per Design ja, aber es gibt Möglichkeiten. Da VM Role Gallery Items entscheidene Vorteile gegenüber den VMM VM Templates haben, die man auch mittels WAP nutzen kann, habe ich ein SMA Runbook auf Basis des VHD Rename SMA Runbooks entwickelt.

In der Version 1.0 unterstützt das SMA Runbook die Konvertierung der VM Boot Disk von einer Differencing Disk zu einer Dynamic Disk. Dabei kommt es nicht darauf an, ob man ein VM Role Gallery Item oder ein VMM VM Template mittels WAP verwendet.

Der Workflow ist dabei so aufgebaut, dass er ohne Übergabe von Parametern als Child Runbook aufgerufen werden kann.

Um die Version 1.0 verwenden zu können sind allerdings einige Schritte notwendig, die unter folgendem Blogbeitrag beschrieben sind. Es geht konkret um das Connection Asset und den Import des Runbooks Invoke-SCVHDDiffConvert.ps1.

-> https://www.danielstechblog.io/vhd-rename-powershell-script-version-3-1/

Anschließend kann das Runbook veröffentlicht und unter VM Clouds im Bereich Automation einer Action zugewiesen werden. Am besten eignen sich dafür die Objekte “VMM VirtualMachine” und “MicrosoftCompute VMRole” mit der Action “Create” oder “Action – Scale” bei “MicrosoftCompute VMRole”.

Das Runbook wird direkt getriggert sobald der Job an den VMM übergeben wurde. Dabei wartet das Runbook auf die erfolgreiche Beendigung des Jobs. Danach beginnt der eigentliche Prozess. Die Parent Disk “WS2012R2Gen1.vhdx” bleibt dabei unangetastet, nur die Child Disk “WS2012R2Gen1 – Diff.vhdx” wird bearbeitet.

DiffConvert0DiffConvert1

Dazu wird ein External Job im VMM mit dem Namen “Converting differencing virtual hard disk” mit der VM als Zielobjekt und dem Status 50% erzeugt.

DiffConvert2DiffConvert3

Damit erkennt man, dass die Konvertierung in Bearbeitung ist. Diese sollte je nach Größe der Parent Disk und dem zugrundeliegenden Storage nur wenige Minuten beanspruchen.  Danach wird der External Job im VMM auf Complete gesetzt.

Die neue VHDX der VM erhält dabei direkt den Namen der VM, so dass ein nachträgliches Umbenennen der VHDX nicht mehr notwendig ist.

DiffConvert4DiffConvert5

Als Output des Runbook Jobs erhält man am Ende die folgende Meldung.

WAPSRV-1.neumanndaniel.local Differencing OS Disk was converted and renamed! (Gen 1)

Zusätzlich werden dazu zwei Custom Properties in den Eigenschaften der VM gesetzt, so dass bei einem Scale Out der VM Role die bereits vorhanden VM Instanzen von dem Prozess ausgeschlossen sind.

DiffConvert7

Die Version 1.0 steht unter folgender URL zum Download bereit.

-> http://gallery.technet.microsoft.com/SMA-Runbook-Convert-WAP-VM-148937ee

WordPress Cookie Notice by Real Cookie Banner