VMware Cloud Community
craigso
Enthusiast
Enthusiast

vRA 8.1 - Software Component equivalent?

In 7.6 we have software components that can be used to run scripts on a host as part of the provisioning/destroy process, is there an equivalent in 8.x? I see there is a cloudinit option, but this would run post provisioning, right? I want to ensure we only mark the deployment as successful if cloudinit completes successfully.

Or if there is a different way to handle this, please let me know.

For context in 7.6 we have software components that kick off some provisioning logic for binding hosts to AD, registering with Redhat Satellite, and puppet registration, and it also takes care of cleanup in those systems when a machine is destroyed. Which is equally important!

Thanks for taking the time to read. Smiley Happy

8 Replies
daphnissov
Immortal
Immortal

The official answer to the replacement for software components from VMware is basically this: "We expect you to use a third-party config. management solution instead." Cloud-init is not a viable replacement for software components, as many have pointed out. So if you're going to go the vRA 8.x route, you might want to start learning something like Ansible.

Reply
0 Kudos
craigso
Enthusiast
Enthusiast

We are a puppet shop and getting the host configured is not so much the issue. We have a few ways to achieve that although it would be nice to be able to confirm the state of the machine before marking provisioning as complete. I saw someone mentioned they just add a long wait period, which is a workaround until you blow through the wait. Smiley Happy

This is more of an issue for our customers that would be using the service broker and don't have visibility into the rest of the provisioning process. They would rely on the portal to confirm when provisioning is done. I'm sure our situation is not unique.

Thanks for providing some input, always appreciated.

Reply
0 Kudos
daphnissov
Immortal
Immortal

You're definitely not unique, and I've personally worked with lots of customers who are in the same boat. Unfortunately, it is what it is right now. Software components is one of the reasons why vRA 8 still has a long way to go. My recommendation has been (and continues to be):  wait it out a couple more versions and see how things go. You're in no real danger running out of support any time soon on 7.6, so no need to rush.

siglert
Enthusiast
Enthusiast

Hopefully this will give a way around everything.  In VRA 8.1 I use the event subscriptions to kick off vRealize Orchestrator workflows.  For instance, machine is requested I kick off a workflow to create a computer object in the domain, I kick off another workflow that creates a local admin access security group in the domain and injects the requestor into that group.  then the life cycle changes of the request to compute.provision.post and I kick off another workflow that waits for the VMware Customization complete event in the VM event log and then it goes forward with the workflow to inject the local admin access group into the VM.  At the end of each of those workflows, I use the sendmail workflow to send an email to the requestor letting them know the state of the VM.  Althoug hif you look in VRA the deployment will show complete until they receive the email they should not attempt to log in.  That being said there re workflows that you can utilize to kickoff a puppet script and wait until it completes.  Then you send the email.  VRA itself does not notify anyone of anything unless you are using leases or approvals and have it configured.  The Event broker does not automatically send those emails.  So just build your workflow at the end and wait until it is completed.  you can even have it wait until a file is created that says SUCCESS if you add that to the end of your ansible or puppet script.  Either way when done the end user will finally get an email that says it is complete.

Reply
0 Kudos
craigso
Enthusiast
Enthusiast

Follow-up to your response, when it comes to the event broker: Does the event "Compute Post Removal" mean after VM deletion, or is this a bit broader than just VM's? For example removing a core from a VM? The docs for this don't explain in detail how "compute" is defined. This would be key to our efforts to cleanup a VM on deletion.

Reply
0 Kudos
siglert
Enthusiast
Enthusiast

Event compute.post removal is after deletion of the VM.  I usually go in at that point and delete the computer account and remove the local admin access group.

Reply
0 Kudos
siglert
Enthusiast
Enthusiast

So the Day 2 action such as add or subtraction of CPU memory or disk are covered under the deployment action completed Event.  Any Day 2 action that you can assign (deployment update, deployment change lease, deployment power off) can trigger a workflow.

Reply
0 Kudos
nachogonzalez
Commander
Commander

Hello, hope you are doing fine

I think this is what you are looking for

Reply
0 Kudos