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:
A user wants to create a stand-alone Hadoop VM.
The user goes to the website, and click the button.
Then, OpenNebula automatically creates the VM and preconfigured it
Lastly, after successful, the website returns the IP address for SSH
Does it relates to REST / XML-RPC?
or Puppet/Chef/Ansible/Salt
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.