vRealize Automation Property mit vRealize Orchestrator setzen

Ich habe bereits in einigen anderen Artikeln Benutzerdefinierte Eigenschaften von vRealize Automation 6.x Entities für verschiedenste Dinge verwendet. Meist werden die Properties direkt beim Provisionieren der VM gesetzt. Es kann aber natürlich auch vorkommen, dass man nachträglich ein vRealize Automation Property hinzufügen oder verändern muss – Hierzu ist der VMware vRealize Orchestrator in meinen Augen das geeignetste Werkzeug.

Um Benutzerdefinierte Eigenschaften zu verwalten, bringt das vRealize Orchestrator Plug-In for vRealize Automation die Action addUpdatePropertyFromVirtualMachineEntity und den Workflow Create / update property on virtualMachine Entity mit. Da diese jedoch etwas kompliziert zu verwenden sind, habe ich einen Workflow zur vereinfachten Handhabung um den eigentlichen Workflow herum geschrieben.

Voraussetzung:

  • vRealize Orchestrator Plug-In for vRealize Automation (Download)
vRealize Automation Property - Examples

Custom Properties Beispiel

Getestete Versionen:

  • vRealize Automation 6.2.1
  • vReallize Orchestartor 5.5.2.1 / 6.0.2

Workflow zum vRealize Automation Property setzen

Ich habe den Workflow angelegt mit der Hinsicht auf möglichst einfache Handhabe und die Tatsache, dass es in meinem Fall nur VMware vSphere VMs als Entities gibt. Daher ist der Input nur der vSphere VM Name, der Property Name und das Property Value.

Custom Properties Reference Guides:

Bitte beachten: Nicht alle Properties lassen sich verändern!

Vorsicht: Wer mehr als eine vRealize Automation (vRA) Instanz in seiner Orchestrator Konfiguration hat, könnte Probleme mit dem Workflow bekommen.

Ich lese einfach die erste vRA Instanz aus der Konfiguration aus:

var host = Server.findAllForType( "vCAC:VCACHost","" )[0];
vRealize Automation Property setzen - Workflow

vRealize Automation Property Workflow – Übersicht

vRealize Automation Property setzen - Workflow Rrun

vRealize Automation Property Workflow – Presentation

Scriptable task – create Properties

Der Workflow ist grundsätzlich auf das setzen mehrerer Properties ausgelegt. In dieser Variante aber nur auf ein Property / Value Paar reduziert.

var properties = new Properties() ;
properties.put( "name", Prop_Name );
properties.put( "value" , Prop_Value );
vmProperties.push( properties );

Scriptable task – get Property

In der Schleife wird dann ein Property nach dem anderen gesetzt – auch wenn in diesem Fall nur ein Property / Value Paar im Array vmProperties vorhanden ist.

propertyName = vmProperties[ counter ].get( "name" );
propertyValue = vmProperties[ counter ].get( "value" );

Download Workflow

VMware Developer Center Direct Download

 

Leave a Reply