Innlegg

Possible pitfall - duplicate config_admin users - Using vRSLCM as deployment engine

Bilde
Some days ago as vRA 8.2 Patch 1 came along we decided to create a new test environment to see the upgrade process. It went rather smoothly as this is not the first environment to be deployed with vRSLCM. Few minutes of prepare vRSLCM and deployment went good, logging on to the new environment and then proceeded to install vRA 8.2 Patch 1.  https://docs.vmware.com/en/vRealize-Automation/8.2/rn/vRealize-Automation-82-releasenotes.html Now all went rather smoothly and we were please with the result. Sometime during the few last days also vIDM was patched to 3.3.3 https://docs.vmware.com/en/VMware-Workspace-ONE-Access/3.3/rn/VMware-Identity-Manager-333-Release-Notes.html And all of a sudden we lost access to our little test environment. As it was only there to test the upgrade patch 1, it was not a large issue, but strange never the less. In this test environment, we did not set up any other access roles, besides the default config_admin user. We could log in with it, but we had no ac...

vRealize Orchestrator - SSH Keys - Idea for how to easy manage multiple keys

Many are using SSH to run commands something similar to  var  passwordAuthentication = false; var password = ''; var session = new SSHSession(hostName, username, port); session.connectWithPasswordOrIdentity(passwordAuthentication, password, path); Where the path leads to the private key file for the connection. Storing several key files in the vRO filesystem could easily lead to forget it when moving to a new vRO or add a new vRO node. Also when moving forward with vRO 8 it's less of a good idea to add elements to the local filesystem as a manual step. My suggestion for a solution is to make use of the vRO resource element. Store your key file as a vRO resource element, using the following step of code can runtime make the key available for SSHSession. var tempDirectory = System.getTempDirectory(); filePath =  tempDirectory + "/" + keyfile.name; keyfile.writeContentToFile( filePath ); Send the private key file as a resource to the action or workflow and you will h...

Unlock your vSphere Automation potentiale - VMware Event Broker Appliance

How many tasks did you perhaps think, this should be automated! ? Perhaps it is a pretty simple task like: Assign a tag to a newly deployed host Set a custom property on a new VM Add a Host or VM to a CMDB (VMs perhaps already handled by vRealize Automation) Or a slightly more advanced task Zone in a Host to the FC fabric, for datastore visibility Add a newly created Cluster to vRA Fabric or Cloud Zone Discover and set capability tags based on HW (GPU or similar) Acquire Licenses or register in 3rd party license tools like Red Hat Satellite Download and deploy VMware's Event Broker Appliance  https://flings.vmware.com/vmware-event-broker-appliance https://vmweventbroker.io/

vRealize Automation 8 - Migration Assistant - Entitlements

While assessing the migration to vRA8 most definitely you will run into deprecated entitled actions or extensions. A lot of the internal VMware Actions or Extensions are no longer valid, here is a small list of common ones: Connect using SSH Connect using VMRC Connect using RDP Execute Reconfigure Cancel Reconfigure Scale In Scale Out Power Cycle ... A dirty quick fix is to loop all your entitlements before running the migration assistant and remove all of these deprecated if you do not depend on anyone using them in your vRA7 environment. var entitlements = Server.findAllForType("vCACCAFE:Entitlement"); for each (var entitlement in entitlements) { System.log(entitlement.name); var updated = false; var host = vCACCAFEEntitiesFinder.getHostForEntity(entitlement); var client = host.createCatalogClient().getCatalogEntitlementService(); var entitledResourceOperations = entitlement.getEntitledResourceOperations(); for each (operation in entitledResourceOperations) { ...

vRA7 to vRA8 migration - Orchestrator

Steps to get up and running with vRO 8. Depending on your previous usage of vRO 7 this might the step that requires the most work when you are migrating to vRA8. Attribute Parameter Contains vCAC/vCACCAFE type! cafeHost|vCACCAFE:VCACHost| Switch to vRealize Automation 8 Types Input Parameter Contains vCAC/vCACCAFE type! subtenant|vCACCAFE:Subtenant Switch to vRealize Automation 8 Types Input Parameter Contains Payload Properties! payload|Properties Ensure the selected properties are supported by vRealize Automation 8 The first two will be quite common for everyone who has automated vRA7 using the vRA Plugins for vCAC and vCACCAFE the only working rewrite here is to move to the REST API and redo the work directly. The last one is also heavily used by everyone who relies on the Subscriptions both by pick up information in vRO and sending information back to vRA with " virtualmachineAddorUpdateProperties ". With just about 190 workflows to redo/rewrite or so i gues...

Preparing vRealize Automation 7.6 for 8.2 migrations - Fix reservation blank Network Profiles.

Bilde
As the migration assistant reveals well-hidden skeletons Fix missing Network Profiles. Having a reference to a network profile in the reservation JSON in vRA 7.6 seems valid but leads to a NullPoint exception during the migration of reservations to Cloud Zones. Map the variable vra7 to the vRA rest host, require a valid access token and set the limit that will cover your reservations, If you have extremely many rewrite to use the page system, var request = vra7.createRequest("GET", "/reservation-service/api/reservations/?limit=999"); request.setHeader("Accept", "application/json"); request.setHeader("Authorization", "Bearer " + token); var response = request.execute(); var results = JSON.parse(response.contentAsString); for each (var reservation in results.content) { System.debug("Reservation name: " + reservation.name); System.debug("Network entries: " + reservation.extensionData.entries[4].value.items...

Preparing vRealize Automation 7.6 for 8.2 migrations - Fix reservation Cluster references to include endpoint names.

Bilde
 As the migration assistant reveals skeletons Fix reservation endpoint names. Missing the ClusterName (Endpoint) style in vRA 7.6 reservations lead to a NullPoint exception during the migration of reservations to cloud zones. Map the variable vra7 to the vRA rest host, require a valid access token and set the limit that will cover your reservations, If you have extremely many rewrite to use the page system, var request = vra7.createRequest("GET", "/reservation-service/api/reservations/?limit=999"); request.setHeader("Accept", "application/json"); request.setHeader("Authorization", "Bearer " + token); var response = request.execute(); var results = JSON.parse(response.contentAsString); for each (var reservation in results.content) { var endpointName = 'Insert endpoint name here'; //System.debug(Object.keys(reservation.extensionData.entries)); if (!reservation.extensionData.entries[3].value.label.match(' ')...