[Bug 1656012] [NEW] Ironic ignores binding_failed state for port from neutron
George Shuklin
1656012 at bugs.launchpad.net
Thu Jan 12 16:02:33 UTC 2017
Public bug reported:
If neutron failed to bind baremetal port it set it as
binding:vif_type=binding_failed.
Regardless of that ironic continue to do 'business as usual' and wait
for node to become clean (node transits to 'clean wait' state) instead
of marking it as clean_failed.
neutron failed port:
| Field | Value | admin_state_up | True |
| binding:host_id | d02c7361-5e3a-4fdf-89b5-f29b3901f0fc |
| binding:profile | {"local_link_information": [{"switch_info": "c426s1", "port_id": "1/1/21", "switch_id": "62:9d:9a:43:a1:b4"}]} |
| binding:vif_details | {} |
| binding:vif_type | binding_failed |
| binding:vnic_type | baremetal |
| created_at | 2017-01-12T15:43:34Z |
| description | |
| device_id | d02c7361-5e3a-4fdf-89b5-f29b3901f0fc |
| device_owner | baremetal:none |
| extra_dhcp_opts | {"opt_value": "pxelinux.0", "ip_version": 4, "opt_name": "bootfile-name"} |
| | {"opt_value": "hidden", "ip_version": 4, "opt_name": "server-ip-address"} |
| | {"opt_value": "hidden", "ip_version": 4, "opt_name": "tftp-server"} |
| fixed_ips | {"subnet_id": "5402755a-0d8b-447d-9753-f3ba1ec39c22", "ip_address": "hidden"} |
| id | db3766ad-f82b-437d-b8b2-4133a92b1b86 |
| mac_address | 18:66:de:55:07:f4 |
| name | |
| network_id | 4b352ae7-141b-4c3f-a132-f5c006dc056c |
| project_id | 7d450ecf00d64399aeb93bc122cb6dae |
| revision_number | 8 |
| status | DOWN |
| tenant_id | 7d450ecf00d64399aeb93bc122cb6dae |
| updated_at | 2017-01-12T15:43:34Z |
ironic log:
ironic.common.neutron[23887]: DEBUG For node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc, creating neutron ports on network 4b352ae7-141b-4c3f-a132-f5c006dc056c using NeutronNetwork network interface. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] add_ports_to_network /usr/lib/python2.7/dist-packages/ironic/common/neutron.py:90
ironic.common.neutron[23887]: INFO Successfully created ports for node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc in network 4b352ae7-141b-4c3f-a132-f5c006dc056c. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -]
...
ironic.conductor.utils[23887]: INFO Successfully set node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc power state to power on. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -]
ironic.common.states[23887]: DEBUG Exiting old state 'cleaning' in response to event 'wait' [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] on_exit /usr/lib/python2.7/dist-packages/ironic/common/states.py:219
ironic.common.states[23887]: DEBUG Entering new state 'clean wait' in response to event 'wait' [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] on_enter /usr/lib/python2.7/dist-packages/ironic/common/states.py:225
** Affects: ironic
Importance: Undecided
Status: New
** Affects: ironic (Ubuntu)
Importance: Undecided
Status: New
** Description changed:
If neutron failed to bind baremetal port it set it as
binding:vif_type=binding_failed.
Regardless of that ironic continue to thing that business as usual and
wait for node to become clean (node transition to 'clean wait' state)
instead of marking it as clean failed.
neutron failed port:
- +---------------------+----------------------------------------------------------------------------------------------------------------+
- | Field | Value |
- +---------------------+----------------------------------------------------------------------------------------------------------------+
- | admin_state_up | True |
+
+ | Field | Value | admin_state_up | True |
| binding:host_id | d02c7361-5e3a-4fdf-89b5-f29b3901f0fc |
| binding:profile | {"local_link_information": [{"switch_info": "c426s1", "port_id": "1/1/21", "switch_id": "62:9d:9a:43:a1:b4"}]} |
| binding:vif_details | {} |
| binding:vif_type | binding_failed |
| binding:vnic_type | baremetal |
| created_at | 2017-01-12T15:43:34Z |
| description | |
| device_id | d02c7361-5e3a-4fdf-89b5-f29b3901f0fc |
| device_owner | baremetal:none |
| extra_dhcp_opts | {"opt_value": "pxelinux.0", "ip_version": 4, "opt_name": "bootfile-name"} |
| | {"opt_value": "hidden", "ip_version": 4, "opt_name": "server-ip-address"} |
| | {"opt_value": "hidden", "ip_version": 4, "opt_name": "tftp-server"} |
| fixed_ips | {"subnet_id": "5402755a-0d8b-447d-9753-f3ba1ec39c22", "ip_address": "hidden"} |
| id | db3766ad-f82b-437d-b8b2-4133a92b1b86 |
| mac_address | 18:66:de:55:07:f4 |
| name | |
| network_id | 4b352ae7-141b-4c3f-a132-f5c006dc056c |
| project_id | 7d450ecf00d64399aeb93bc122cb6dae |
| revision_number | 8 |
| status | DOWN |
| tenant_id | 7d450ecf00d64399aeb93bc122cb6dae |
| updated_at | 2017-01-12T15:43:34Z |
- +---------------------+----------------------------------------------------------------------------------------------------------------+
ironic log:
ironic.common.neutron[23887]: DEBUG For node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc, creating neutron ports on network 4b352ae7-141b-4c3f-a132-f5c006dc056c using NeutronNetwork network interface. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] add_ports_to_network /usr/lib/python2.7/dist-packages/ironic/common/neutron.py:90
ironic.common.neutron[23887]: INFO Successfully created ports for node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc in network 4b352ae7-141b-4c3f-a132-f5c006dc056c. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -]
...
ironic.conductor.utils[23887]: INFO Successfully set node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc power state to power on. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -]
ironic.common.states[23887]: DEBUG Exiting old state 'cleaning' in response to event 'wait' [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] on_exit /usr/lib/python2.7/dist-packages/ironic/common/states.py:219
ironic.common.states[23887]: DEBUG Entering new state 'clean wait' in response to event 'wait' [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] on_enter /usr/lib/python2.7/dist-packages/ironic/common/states.py:225
** Description changed:
If neutron failed to bind baremetal port it set it as
binding:vif_type=binding_failed.
- Regardless of that ironic continue to thing that business as usual and
- wait for node to become clean (node transition to 'clean wait' state)
- instead of marking it as clean failed.
+ Regardless of that ironic continue to do 'business as usual' and wait
+ for node to become clean (node transits to 'clean wait' state) instead
+ of marking it as clean_failed.
neutron failed port:
-
| Field | Value | admin_state_up | True |
| binding:host_id | d02c7361-5e3a-4fdf-89b5-f29b3901f0fc |
| binding:profile | {"local_link_information": [{"switch_info": "c426s1", "port_id": "1/1/21", "switch_id": "62:9d:9a:43:a1:b4"}]} |
| binding:vif_details | {} |
| binding:vif_type | binding_failed |
| binding:vnic_type | baremetal |
| created_at | 2017-01-12T15:43:34Z |
| description | |
| device_id | d02c7361-5e3a-4fdf-89b5-f29b3901f0fc |
| device_owner | baremetal:none |
| extra_dhcp_opts | {"opt_value": "pxelinux.0", "ip_version": 4, "opt_name": "bootfile-name"} |
| | {"opt_value": "hidden", "ip_version": 4, "opt_name": "server-ip-address"} |
| | {"opt_value": "hidden", "ip_version": 4, "opt_name": "tftp-server"} |
| fixed_ips | {"subnet_id": "5402755a-0d8b-447d-9753-f3ba1ec39c22", "ip_address": "hidden"} |
| id | db3766ad-f82b-437d-b8b2-4133a92b1b86 |
| mac_address | 18:66:de:55:07:f4 |
| name | |
| network_id | 4b352ae7-141b-4c3f-a132-f5c006dc056c |
| project_id | 7d450ecf00d64399aeb93bc122cb6dae |
| revision_number | 8 |
| status | DOWN |
| tenant_id | 7d450ecf00d64399aeb93bc122cb6dae |
| updated_at | 2017-01-12T15:43:34Z |
-
ironic log:
ironic.common.neutron[23887]: DEBUG For node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc, creating neutron ports on network 4b352ae7-141b-4c3f-a132-f5c006dc056c using NeutronNetwork network interface. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] add_ports_to_network /usr/lib/python2.7/dist-packages/ironic/common/neutron.py:90
ironic.common.neutron[23887]: INFO Successfully created ports for node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc in network 4b352ae7-141b-4c3f-a132-f5c006dc056c. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -]
...
ironic.conductor.utils[23887]: INFO Successfully set node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc power state to power on. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -]
ironic.common.states[23887]: DEBUG Exiting old state 'cleaning' in response to event 'wait' [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] on_exit /usr/lib/python2.7/dist-packages/ironic/common/states.py:219
ironic.common.states[23887]: DEBUG Entering new state 'clean wait' in response to event 'wait' [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] on_enter /usr/lib/python2.7/dist-packages/ironic/common/states.py:225
** Also affects: ironic (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to ironic in Ubuntu.
https://bugs.launchpad.net/bugs/1656012
Title:
Ironic ignores binding_failed state for port from neutron
Status in Ironic:
New
Status in ironic package in Ubuntu:
New
Bug description:
If neutron failed to bind baremetal port it set it as
binding:vif_type=binding_failed.
Regardless of that ironic continue to do 'business as usual' and wait
for node to become clean (node transits to 'clean wait' state) instead
of marking it as clean_failed.
neutron failed port:
| Field | Value | admin_state_up | True |
| binding:host_id | d02c7361-5e3a-4fdf-89b5-f29b3901f0fc |
| binding:profile | {"local_link_information": [{"switch_info": "c426s1", "port_id": "1/1/21", "switch_id": "62:9d:9a:43:a1:b4"}]} |
| binding:vif_details | {} |
| binding:vif_type | binding_failed |
| binding:vnic_type | baremetal |
| created_at | 2017-01-12T15:43:34Z |
| description | |
| device_id | d02c7361-5e3a-4fdf-89b5-f29b3901f0fc |
| device_owner | baremetal:none |
| extra_dhcp_opts | {"opt_value": "pxelinux.0", "ip_version": 4, "opt_name": "bootfile-name"} |
| | {"opt_value": "hidden", "ip_version": 4, "opt_name": "server-ip-address"} |
| | {"opt_value": "hidden", "ip_version": 4, "opt_name": "tftp-server"} |
| fixed_ips | {"subnet_id": "5402755a-0d8b-447d-9753-f3ba1ec39c22", "ip_address": "hidden"} |
| id | db3766ad-f82b-437d-b8b2-4133a92b1b86 |
| mac_address | 18:66:de:55:07:f4 |
| name | |
| network_id | 4b352ae7-141b-4c3f-a132-f5c006dc056c |
| project_id | 7d450ecf00d64399aeb93bc122cb6dae |
| revision_number | 8 |
| status | DOWN |
| tenant_id | 7d450ecf00d64399aeb93bc122cb6dae |
| updated_at | 2017-01-12T15:43:34Z |
ironic log:
ironic.common.neutron[23887]: DEBUG For node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc, creating neutron ports on network 4b352ae7-141b-4c3f-a132-f5c006dc056c using NeutronNetwork network interface. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] add_ports_to_network /usr/lib/python2.7/dist-packages/ironic/common/neutron.py:90
ironic.common.neutron[23887]: INFO Successfully created ports for node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc in network 4b352ae7-141b-4c3f-a132-f5c006dc056c. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -]
...
ironic.conductor.utils[23887]: INFO Successfully set node d02c7361-5e3a-4fdf-89b5-f29b3901f0fc power state to power on. [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -]
ironic.common.states[23887]: DEBUG Exiting old state 'cleaning' in response to event 'wait' [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] on_exit /usr/lib/python2.7/dist-packages/ironic/common/states.py:219
ironic.common.states[23887]: DEBUG Entering new state 'clean wait' in response to event 'wait' [req-8691b659-a3d2-4ae8-a78b-a52158e343fc - - - - -] on_enter /usr/lib/python2.7/dist-packages/ironic/common/states.py:225
To manage notifications about this bug go to:
https://bugs.launchpad.net/ironic/+bug/1656012/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list