Bug 1427608
| Summary: | [RFE] Extraction of network information from inspected overcloud nodes | ||
|---|---|---|---|
| Product: | Red Hat OpenStack | Reporter: | Ramon Acedo <racedoro> |
| Component: | openstack-ironic-inspector | Assignee: | Bob Fournier <bfournie> |
| Status: | CLOSED ERRATA | QA Contact: | Alexander Chuzhoy <sasha> |
| Severity: | high | Docs Contact: | |
| Priority: | high | ||
| Version: | 11.0 (Ocata) | CC: | bfournie, brault, gideon.agmon, mburns, mlammon, sclewis, slinaber |
| Target Milestone: | Upstream M3 | Keywords: | FutureFeature, TestOnly, Triaged |
| Target Release: | 11.0 (Ocata) | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2017-05-17 20:02:46 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 1266597, 1336839, 1425176 | ||
|
Description
Ramon Acedo
2017-02-28 17:28:29 UTC
These are the steps documented by bfournier to to test this as it is now (i.e. using 'jq' instead of OSC):
1. Run introspection
``openstack baremetal introspection bulk start``
2. Get list of Ironic node uuids
``openstack baremetal node list``
3. Get LLDP data for a particular node and a particular interface
The resulting output will give all of the LLDP data received at the port including VLAN info, MTU setting, and link aggregation settings.
e.g. for node 962e5384-5893-45ba-9bb7-17cd04120fae and port em1
``openstack baremetal introspection data save 962e5384-5893-45ba-9bb7-17cd04120fae | jq .all_interfaces.em1.lldp_processed``
{
"switch_port_autonegotiation_enabled":true,
"switch_port_autonegotiation_support":true,
"switch_capabilities_support":[
"Bridge",
"Router"
],
"switch_port_mtu":9216,
"switch_port_id":"554",
"switch_port_physical_capabilities":[
"1000BASE-T fdx",
"100BASE-TX fdx",
"100BASE-TX hdx",
"10BASE-T fdx",
"10BASE-T hdx",
"Asym and Sym PAUSE fdx"
],
"switch_port_description":"host02.beaker.tripleo.lab.eng.rdu2 port 1 (Prov/Trunked VLANs)",
"switch_capabilities_enabled":[
"Bridge",
"Router"
],
"switch_port_mau_type":"Unknown",
"switch_port_link_aggregation_id":0,
"switch_system_name":"sw01-dist-1b-b12.rdu2",
"switch_port_link_aggregation_enabled":false,
"switch_port_link_aggregation_support":true,
"switch_system_description":"Juniper Networks, Inc. ex4200-48t , version 12.3R6.6 Build date: 2014-03-13 08:38:30 UTC ",
"switch_port_vlans":[
{
"id":101,
"name":"vlan101"
},
{
"id":102,
"name":"vlan102"
},
{
"id":104,
"name":"vlan104"
},
{
"id":201,
"name":"vlan201"
},
{
"id":203,
"name":"vlan203"
}
],
"switch_chassis_id":"64:64:9b:32:f3:00",
"switch_port_untagged_vlan_id":102
}
Environment:
python-ironicclient-1.11.0-1.el7ost.noarch
puppet-ironic-10.3.0-1.el7ost.noarch
instack-undercloud-6.0.0-0.20170220135156.d695df8.el7ost.noarch
python-ironic-lib-2.5.2-1.el7ost.noarch
openstack-ironic-api-7.0.1-0.20170223011831.a13ea4f.el7ost.noarch
openstack-ironic-conductor-7.0.1-0.20170223011831.a13ea4f.el7ost.noarch
python-ironic-inspector-client-1.11.0-1.el7ost.noarch
openstack-ironic-inspector-5.0.1-0.20170214181727.babc2b6.el7ost.noarch
openstack-ironic-common-7.0.1-0.20170223011831.a13ea4f.el7ost.noarch
Below is what I get (machine with 4 nics em1, em2, p1p1, p1p2):
##########################################################################
[stack@undercloud ~]$ openstack baremetal introspection data save 0c117180-c2a4-42c8-a435-655196011803|jq .all_interfaces.em1.lldp_processed
{
"switch_port_autonegotiation_enabled": true,
"switch_port_autonegotiation_support": true,
"switch_capabilities_support": [
"Bridge",
"Router"
],
"switch_port_mtu": 1514,
"switch_port_id": "596",
"switch_port_physical_capabilities": [
"1000BASE-T fdx",
"100BASE-TX fdx",
"100BASE-TX hdx",
"10BASE-T fdx",
"10BASE-T hdx",
"Asym and Sym PAUSE fdx"
],
"switch_port_description": "ge-0/0/46.0",
"switch_capabilities_enabled": [
"Bridge",
"Router"
],
"switch_port_mau_type": "Unknown",
"switch_port_link_aggregation_id": 0,
"switch_system_name": "sw07-dist-lab4.bos",
"switch_port_link_aggregation_enabled": false,
"switch_port_link_aggregation_support": true,
"switch_system_description": "Juniper Networks, Inc. ex4200-48t , version 12.3R3.4 Build date: 2013-06-14 01:38:46 UTC ",
"switch_port_vlans": [
{
"id": 162,
"name": "vlan162"
}
],
"switch_chassis_id": "08:81:f4:a6:b3:80",
"switch_port_untagged_vlan_id": 162
}
##########################################################################
[stack@undercloud ~]$ openstack baremetal introspection data save 0c117180-c2a4-42c8-a435-655196011803|jq .all_interfaces.em2.lldp_processed
{
"switch_port_autonegotiation_enabled": true,
"switch_port_autonegotiation_support": true,
"switch_capabilities_support": [
"Bridge",
"Router"
],
"switch_port_mtu": 1514,
"switch_port_id": "1173",
"switch_port_physical_capabilities": [
"1000BASE-T fdx",
"100BASE-TX fdx",
"100BASE-TX hdx",
"10BASE-T fdx",
"10BASE-T hdx",
"Asym and Sym PAUSE fdx"
],
"switch_port_description": "ge-5/0/47.0",
"switch_capabilities_enabled": [
"Bridge",
"Router"
],
"switch_port_mau_type": "Unknown",
"switch_port_link_aggregation_id": 0,
"switch_system_name": "sw07-dist-lab4.bos",
"switch_port_link_aggregation_enabled": false,
"switch_port_link_aggregation_support": true,
"switch_system_description": "Juniper Networks, Inc. ex4200-48t , version 12.3R3.4 Build date: 2013-06-14 01:38:46 UTC ",
"switch_port_vlans": [
{
"id": 182,
"name": "vlan182"
},
{
"id": 183,
"name": "vlan183"
}
],
"switch_chassis_id": "08:81:f4:a6:b3:80",
"switch_port_untagged_vlan_id": 182
}
##########################################################################
[stack@undercloud ~]$ openstack baremetal introspection data save 0c117180-c2a4-42c8-a435-655196011803|jq .all_interfaces.p1p1.lldp_processed
{
"switch_port_mtu": 1514,
"switch_port_autonegotiation_enabled": true,
"switch_port_autonegotiation_support": true,
"switch_capabilities_support": [
"Bridge",
"Router"
],
"switch_mgmt_addresses": [
"10.19.184.29"
],
"switch_port_id": "555",
"switch_port_physical_capabilities": [
"1000BASE-T fdx",
"100BASE-TX fdx",
"100BASE-TX hdx",
"10BASE-T fdx",
"10BASE-T hdx",
"Asym and Sym PAUSE fdx"
],
"switch_port_description": "ge-0/0/26.0",
"switch_capabilities_enabled": [
"Bridge",
"Router"
],
"switch_port_mau_type": "Unknown",
"switch_port_link_aggregation_id": 0,
"switch_system_name": "rhos-compute-node-sw1",
"switch_port_link_aggregation_enabled": false,
"switch_port_link_aggregation_support": true,
"switch_system_description": "Juniper Networks, Inc. ex4200-48t , version 12.3R4.6 Build date: 2013-09-13 04:12:57 UTC ",
"switch_port_vlans": [
{
"id": 101,
"name": "RHOS13-PXE"
}
],
"switch_chassis_id": "64:64:9b:31:12:00",
"switch_port_untagged_vlan_id": 101
}
##########################################################################
[stack@undercloud ~]$ openstack baremetal introspection data save 0c117180-c2a4-42c8-a435-655196011803|jq .all_interfaces.p1p2.lldp_processed
{
"switch_port_mtu": 1514,
"switch_port_autonegotiation_enabled": true,
"switch_port_autonegotiation_support": true,
"switch_capabilities_support": [
"Bridge",
"Router"
],
"switch_mgmt_addresses": [
"10.19.184.29"
],
"switch_port_id": "558",
"switch_port_physical_capabilities": [
"1000BASE-T fdx",
"100BASE-TX fdx",
"100BASE-TX hdx",
"10BASE-T fdx",
"10BASE-T hdx",
"Asym and Sym PAUSE fdx"
],
"switch_port_description": "ge-0/0/27.0",
"switch_capabilities_enabled": [
"Bridge",
"Router"
],
"switch_port_mau_type": "Unknown",
"switch_port_link_aggregation_id": 0,
"switch_system_name": "rhos-compute-node-sw1",
"switch_port_link_aggregation_enabled": false,
"switch_port_link_aggregation_support": true,
"switch_system_description": "Juniper Networks, Inc. ex4200-48t , version 12.3R4.6 Build date: 2013-09-13 04:12:57 UTC ",
"switch_port_vlans": [
{
"id": 103,
"name": "RHOS13-Storagemgmt"
},
{
"id": 102,
"name": "RHOS13-Tenant"
},
{
"id": 18,
"name": "__test-vlan-range18-43_18__"
},
{
"id": 20,
"name": "__test-vlan-range18-43_20__"
},
{
"id": 42,
"name": "__test-vlan-range18-43_42__"
}
],
"switch_chassis_id": "64:64:9b:31:12:00",
"switch_port_untagged_vlan_id": 102
}
##########################################################################
Checking non existing nic:
[stack@undercloud ~]$ openstack baremetal introspection data save 0c117180-c2a4-42c8-a435-655196011803|jq .all_interfaces.p1p3.lldp_processed
null
Tried the same on a virtual setup (no lldp): [stack@undercloud-0 ~]$ openstack baremetal introspection data save 34943eb5-5628-48ee-8009-6166c26c75ad|jq .all_interfaces.eth0.lldp_processed null Verified: Environment: instack-undercloud-6.0.0-2.el7ost.noarch openstack-ironic-inspector-5.0.0-2.el7ost.noarch python-ironic-inspector-client-1.11.0-0.20170208193115.481a92e.el7ost.noarch openstack-ironic-common-7.0.1-0.20170301202959.91540cd.el7ost.noarch python-ironicclient-1.11.0-0.20170208194603.f1f10cb.el7ost.noarch openstack-ironic-api-7.0.1-0.20170301202959.91540cd.el7ost.noarch puppet-ironic-10.3.0-1.el7ost.noarch openstack-ironic-conductor-7.0.1-0.20170301202959.91540cd.el7ost.noarch python-ironic-lib-2.5.2-0.20170208212103.ace87b6.el7ost.noarch The functionality is there and tested. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2017:1245 |