The code adds support for host_groups. This allows the plugin
to place the edge VMs host_groups to provide HA.
In order to get the fire cell anti affinity, we do the following:
1. Admin out of band: create two ‘Virtual machine to Hosts’ rules.
These are listed in the host_groups parameter(s)
a. HOST-GROUP-A – all hosts in fire cell A
b. HOST-GROUP-B – all hosts in fire cell B
2. The plugin does the following:
a. Create 2 VM groups (each one will be a placeholder for the edges).
The VM group name is of the following format:
'neutron-group-%s-%s' % (edge_id, index)
b. Create 2 VM/Host rules. This will contain the VM group from above
The Host group name is of the following format:
'neutron-rule-%s-%s' % (edge_id, index)
c. Plugin deletes above when the edges are deleted.
An admin utility method has been added that configures the host groups:
nsxadmin -o nsx-update -r edges -p edge-id=edge-55 --property hostgroup=True|False
Depends-On: I494a1d19341f30f22803a3fe6baf020a67ad6b08
Change-Id: I9bf3c280c37c02081c11ac8abacc424db6cac09f