Currently the ordering of network interfaces in the seed VM is
non-deterministic. This happens because we apply the 'unique' filter to
the network_interfaces list, which does not guarantee a deterministic
ordering. This list is then transformed and passed to the
stackhpc.libvirt-vm role.
There are two consequences of this:
* it is not possible to determine which interface names should be used
prior to creating a seed VM
* if a seed VM is recreated, the interface ordering may change
This change fixes the issue by sorting the network_interfaces list
alphabetically before it is transformed and passed to the
stackhpc.libvirt-vm.
A new 'seed_vm_interfaces' variable is also added, which allows for
customisation of the VM's interfaces - potentially allowing for more
complex setups such as trunked VLANs.
Story: 2007259
Task: 38621
There is a second issue, which is that if the seed VM has a
network interface not configured with a gateway, cloud-init will fail to
configure the network interfaces on the host. This has been observed on
CentOS 8, but is probably more tied to the version of cloud-init, and
may affect CentOS 7. The following error is seen in the cloud-init logs:
KeyError: 'gateway'
This change has been addressed in the jriguera.configdrive role, and
this change updates the version used in requirements.yml.
Story: 2007769
Task: 39993
Change-Id: Ib6ab41a3ba320a1fe15d0d23561fad2fab7861e6
20 lines
845 B
YAML
20 lines
845 B
YAML
---
|
|
fixes:
|
|
- |
|
|
Fixes an issue with seed VMs with multiple network interfaces where
|
|
interfaces could come up in a different order if the VM is recreated. The
|
|
interfaces are now created in alphabetical order of their Kayobe network
|
|
name by default. See `story 2007259
|
|
<https://storyboard.openstack.org/#!/story/2007259>`__ for details.
|
|
features:
|
|
- |
|
|
Adds a ``seed_vm_interfaces`` variable which defines the network interfaces
|
|
to which the seed VM is attached.
|
|
upgrade:
|
|
- |
|
|
The default order of network interfaces in the seed VM is now sorted
|
|
alphabetically based on their Kayobe network name. This may require the
|
|
seed's network interface names to be changed in configuration if the seed
|
|
VM is recreated. See `story 2007259
|
|
<https://storyboard.openstack.org/#!/story/2007259>`__ for details.
|