Automate VM creation with configurations with a click of a button

Hi all,

I would like to know whether,
Is there any way to automate VM creation with configurations with a click of a button.
For example, I create a button in a website which contains maybe APIs

Scenario:

  1. A user wants to create a stand-alone Hadoop VM.
  2. The user goes to the website, and click the button.
  3. Then, OpenNebula automatically creates the VM and preconfigured it
  4. Lastly, after successful, the website returns the IP address for SSH

Does it relates to REST / XML-RPC?
or Puppet/Chef/Ansible/Salt

Thanks in advance for any suggestion

You can use Salt, it has an OpenNebula cloud provider.
https://docs.saltstack.com/en/latest/ref/clouds/all/salt.cloud.clouds.opennebula.html

You could have a scenario like this:
You have a predefined template for Hadoop in OpenNebula. You wire up salt-cloud to build the node, or create a cloud map that a user adds a server via git, then it bootstraps Salt to a master or runs it Masterless, which ever you prefer. You could then use Orchestration states to perform the Hadoop install or basically whatever you want at that point.

You could also use Salt API and have him curl or create a GUI with a button that posts to salt-api that spins it up for him. Thats another option.

Really you can use Salt and OpenNebula to do all of it.
It could handle the SSH keys and the reporting back of the IP.

Thanks for the answer.
I will look at it and learn how to use it

Thanks again