vRealize Orchestrator Workflow Set CBT Status

Durch einen Bug in einer Backup Software war ich wieder einmal gezwungen mich mit dem Thema Changed Block Tracking (CBT) zu befassen. Neben dem PowerShell Modul – Set-CBT für mein GitHub Repository vSphere PowerShell Modules ist dadurch auch der vRealize Orchestrator Workflow Set CBT Status entstanden.

Mit dem Thema befassen, bedeutete in einem Fall zum einen den CBT Status vieler VMs schnell reporten sowie ändern (hierfür das PowerShell Modul mit dem zusätzlichen VI-Property) und CBT bereits bei der Bereitstellung durch vRealize Automation zu aktivieren.

Wenn der entstandene vRealize Orchestrator Workflow nur von vRealize Automation (vRA), bzw. dem Provisioned Machine Stub (WFStubMachineProvisioned) genutzt würde, ginge es etwas einfacher. Ich wollte den Workflow jedoch flexibler gestalten um weitere Anwendungsfälle zukünftig schnell zu ermöglichen (z.B. eine Einbindung als XaaS Action).

Ablauf des Workflows:

  1. Logging einiger Informationen
  2. Prüfung ob CBT Status bereits korrekt ist – Wenn ja: Keine weitere Verarbeitung
  3. Prüfung ob SnapShots vorhanden sind – Wenn ja: Keine weitere Verarbeitung
  4. Entscheidung ob VM an- oder ausgeschalten ist
    1. Bei eingeschalteter VM: CBT Option setzen, einen SnapShot erstellen und danach alle SnapShots löschen
    2. Bei ausgeschalteter VM: CBT Option setzen

Weitere Quellen zum Thema CBT (wenn auch teilweise etwas älter):

vRealize Orchestrator Workflow Set CBT Status im Detail

vRealize Orchestrator Workflow Set CBT Status

vRealize Orchestrator Workflow Set CBT Status – Übersicht

 

Scriptable task – init

In dem ersten Scriptable task führe ich einige Validierungen durch und logge wichtige Informationen. Die Validierungen werden dann auch teilweise von den darauffolgenden „Decision activities“ verwendet.

Decision activity – Need to be set?

Prüfung ob der gewünschte CBT Status eventuell schon gesetzt ist.

Decision activity – No SnapShots?

Prüfung, dass aktuell keine SnapShots auf der VM vorhanden sind.

Dies hat zwei Gründe:

  • CBT lässt sich mit einem aktiven SnapShot nicht vollständig aktivieren oder deaktivieren
  • Der Workflow löscht bei eingeschalteten VMs abschließen alle vorhandenen SnapShots

Decision activity – PoweredOn?

Der Zustand der VM legt fest ob CBT mit oder ohne SnapShot aktivieren bzw. deaktivieren werden kann.

Scriptable task – Set CBT

Je nachdem ob die VM ein- oder ausgeschalten ist, wird einer der Scriptable task für das setzten der CBT Einstellungen ausgeführt.

Workflow Ausführung

Die Presentation ist sehr simpel gehalten – VMware vSphere VM und der gewünschte CBT Status.

vRealize Orchestrator Workflow Set CBT Status - Execution

vRealize Orchestrator Workflow Set CBT Status – Presentation

Workflow Log

Download Workflow

VMware Developer Center Direct Download

Hat Ihnen der Beitrag gefallen?

Nutzen Sie gerne für Ihren nächsten Amazon Einkauf diesen Affiliate Link und unterstützt Sie damit den Author des Artikels: http://amzn.to/2pAgZOD

Um schnell und einfach Ihre lieblings Blogs und Autoren zu unterstützen, ist der Dienst Flattr ebenfalls eine tolle Möglichkeit!

Vielen Dank!

Kommentar verfassen