Red Hat Bugzilla – Bug 1471531
[RFE] Add TripleO validation of VLANs using introspected LLDP data
Last modified: 2017-12-11 04:14:02 EST
Description of problem:
TripleO Heat Templates can define VLANs per NIC for roles (controller, compute etc.) for isolated networks. The problem is that the network switches that the NICs are attached to may not have been set up properly for these VLANs. As of OSP-11, LLDP data for baremetal nodes is captured during the Ironic inspection process which may have VLAN info for the attached switch ports. This VLAN info can be checked during a pre-deployment validation to ensure that the VLANs configured in THT nic config files are also configured on the switch.
The NIC alias to real NIC name conversion must be done during this validation similar to what os-net-config does in order to map the NICs configured in nic config files to actual NIC names in the introspected data.
Since roles can use different VLANs, e.g. the controller may use additional networks than compute so would use additional VLANs, the challenge is to map the roles to Ironic nodes in the pre-deployment phase. This mapping may not be available in this pre-deployment validation phase. It may be necessary to only check that ALL configured VLANs per switch port are available on the switches. In other words, if a role in THT has eth0 with VLANs 10, 11, and 12, all Ironic nodes must have LLDP data indicating that the switch port attached to eth0 has VLANs 10, 11, 12. If it is possible to map the roles to Ironic nodes in this phase then it will be possible to check, for example, that all controller nodes have a switch port mapped to eth0 with VLANs 10, 11, and 12.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Incorrectly configure network switch VLANs different than THT nic config files
2. Run deployment
Deployment may fail eventually depending on which VLANs are incorrect.
Pre-deployment validation will detect that switch is incorrectly configured and return error.
Added OtherQA to be verified by devel.