Bug 1654648 - [RFE] Support integration between multi-tenant BMaaS and Ironic Inspector in the Overcloud
Summary: [RFE] Support integration between multi-tenant BMaaS and Ironic Inspector in ...
Keywords:
Status: ON_QA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-ironic
Version: 14.0 (Rocky)
Hardware: Unspecified
OS: Unspecified
medium
high
Target Milestone: beta
: ---
Assignee: Steve Baker
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-11-29 10:40 UTC by Ian Pilcher
Modified: 2022-09-22 10:40 UTC (History)
8 users (show)

Fixed In Version: openstack-ironic-13.0.7-1.20200825103414.3d77e61.el8
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 320003 0 'None' MERGED Tenant network separation and boot management for in-band inspection 2020-12-01 22:15:20 UTC
OpenStack gerrit 681261 0 'None' MERGED Foundation for boot/network management for in-band inspection 2020-12-01 22:15:46 UTC
OpenStack gerrit 688720 0 'None' MERGED Wire in in-band inspection for PXE boot and neutron-based networking 2020-12-01 22:15:20 UTC
OpenStack gerrit 696291 0 'None' MERGED Implement managed in-band inspection boot for redfish-virtual-media 2020-12-01 22:15:20 UTC
Red Hat Issue Tracker OSP-1627 0 None None None 2022-01-29 05:33:58 UTC

Description Ian Pilcher 2018-11-29 10:40:22 UTC
When using Ironic multi-tenancy with networking-ansible, Ironic leaves nodes (actually their associated switch ports) in a non-introspectable state.

For example, consider a scenario in which VLAN 1001 is used for provisioning, cleaning, and introspection, and VLANs 1002+ are used for tenant networks.  Ironic and networking-ansible can clean and provision a node using VLAN 1001 and configure the node's switch port to connect the node to it's tenant network.  (I.e., the basic multi-tenancy use case works.)

However, the introspection workflow does not do this.  Introspecting a node requires that the switch be pre-configured to place the node on the provisioning network.  Furthermore, Ironic does not place nodes on the provisioning network when a node is unused; instead it removes any VLAN tag from the port.

Thus, a node that is not in active use by Ironic is left in a state in which it cannot be introspected without manual reconfiguration of the node's switch port.

This has 2 implications for operators:

1.  When deploying new BMaaS hardware, switch ports for the new nodes must be
    manually configured to place them in the provisioning VLAN.

2.  When re-introspecting an existing node (after replacing a faulty hardware
    component, for example) the switch port must be manually recofigured to
    connect the node to the provisioning VLAN.

The Ironic introspection process should be able to connect the node to the
provisioning VLAN.  Alternatively, Ironic could leave the node connected to
the provisioning VLAN at the end of the cleaning process (but this would only
address case #2 above).

NOTE: The text above does assume that the same network is used for provsioning,
cleaning, and introspection.  It's somewhat more complicated if different
networks are being used.

Comment 1 Dmitry Tantsur 2018-11-30 10:27:06 UTC
> The Ironic introspection process should be able to connect the node to the
provisioning VLAN.

I posted a spec for it long ago, but it kind of got stuck for 2 years without reviews. I'll try to revive it and poke people to review.

I'm marking it as an RFE because of the fast scope of the actual code changes and the amount of testing that will be required to cover it.

Comment 6 Steve Baker 2021-03-30 21:05:29 UTC
This feature is available in all 16.x releases, associating it with 16.1 for QA

Comment 15 OSP Team 2022-09-22 10:40:12 UTC
According to our records, this should be resolved by openstack-ironic-17.0.5-0.20220705231707.dd2bfab.el9ost.  This build is available now.


Note You need to log in before you can comment on or make changes to this bug.