Add a functionality to Fuel that allows end user deploy dual hypervisor OpenStack cloud.
Term “dual hypervisor cloud” in this document has the following meaning: OpenStack cloud that can provision virtual machines on two hypervisors simultaneously. This specification describes two possible dual hypervisor cloud setups:
As of Fuel 6.0, it allows end user to add compute nodes only with hypervisor type that was selected during environment creation. Fuel does not allow increase compute resource pool by extending it with resources of another hypervisor type.
Right now user selects hypervisor type in “Create a new OpenStack environment” wizard. It is not possible to use KVM/QEMU compute nodes simultaneously with vCenter and vice versa, since Fuel web UI restricts it.
Right now Fuel deploys nova-compute services with vCenter compute driver on OpenStack controllers, in this specification we do not propose to change this behaviour. Restriction in Fuel web UI must be eliminated and cluster creation wizard step where user selects hypervisor must be reworked. Instead of three radio buttons that represent possible hypervisors (KVM, QEMU, vCenter), vCenter must present on this page as checkbox. If user selected this checkbox, VMware settings tab  will appear on the cluster page after cluster creation wizard is finished. It is up to user to add vCenter to this environment. Compute nodes become optional for this cluster, user may configure only vCenter related settings and deploy cluster with controller nodes only.
After implementing this specification, the following use case will be available from end user perspective:
In order to support OpenStack Block storage for vCenter, we also have to introduce new role for Cinder service with VMDK backend .
This specification does not cover a vCenter removal procedure.
Implementation of this change must not affect end user opportunity to deploy KVM only or vCenter only cloud.
Fuel web UI cluster creation wizard will be modified.
Special attention must be payed to the fact that for vCenter Fuel deploys nova-network service in non-multi host mode (there is a single nova-network service for whole OpenStack cluster), while in KVM/QEMU case nova-network is deployed on compute nodes (multi host mode).
Existing tests that create KVM only or vCenter only must not be affected.
Following testing scenarios must be implemented:
Most part of documentation related to vCenter must be adjusted to reflect changes described in this specification (Planning Guide, User Guide). New section must be added: instructions on planning and deployment of dual hypervisor environment (limitations, reference architecture).