Made a few changes to adapt the Abiquo compute service
implementation to the most common use cases:
* Do not attempt to create a VDC. Regualr users may not have
permissions to create VDCs, so don't try to create them. A
VDC compatible with teh template being deployed must exist.
* Configure nodes with one public ip by default, and if no
public ip is available, assign one from the default private
VLAN for the selected virtual datacenter.
Also fixed some concept mappings between Abiquo and jclouds:
Virtual datacenter (zone) election should be performed by the
TemplateBuilder and not by the ComputeServiceAdapter. This commit
refactors the current adapter to implement the right behavior.
The two main concepts in this refactor are about locations. Now,
physical datacenters will be scoped to Region locations, and virtual
datacenters to Zones.
Images in Abiquo are scoped to Regions (each physical datacenter has a
set of available images), and hardware profiles will be used to scope
images to a particular virtual datacenter. Since a virtual datacenter in
Abiquo is just a container that provides compute resources in a specific
virtualization technology, each image will have one hardware profile
scoped to each compatible virtual datacenter (zone).
This way, the virtual datacenter election will be made using the
TemplateBuilder, by selecting the desired hardware profile.