Public bug reported:

Openstack Ironic need to set the mac address of neutron port to the
actual mac address of the hardware for DHCP/PXE deployment to work. When
using pre-created neutron ports there is an issue where previously used
ports cause a conflict when a new instance is scheduled onto the same
baremetal hosts.

Example:
 openstack port create --network private test-port1
 openstack port create --network private test-port2

  openstack server create \
    --image cirros-0.3.5-x86_64-disk \
    --port test-port1\
    --flavor baremetal \
    test-server

  openstack server delete test-server

  openstack server create \
    --image cirros-0.3.5-x86_64-disk \
    --port test-port2 \
    --flavor baremetal \
    test-server

The second server create command fails with:
fault:
  code: 500
  created: '2018-04-29T12:21:37Z'
  < .. snip .. >
  message: 'Build of instance 5982f29a-3d48-4eb8-88ca-cf794c8f31dd aborted: 
Failure
    prepping block device.'

An in conductor log:
Apr 29 14:21:35 ironic-devstack.lab.example.com ironic-conductor[445]: ERROR 
ironic.common.neutron MacAddressInUseClient: Unable to complete operation for 
network 52497681-18f4-47de-b48e-1265799caea9. The mac address 52:54:00:53:b5:b9 
is in use.


It should be possible to "return" the port by resetting a mac in the base MAC 
address Neutron uses for VIFs. e.g a port update request that triggers 
regeneration of the mac address. Ironic would add this to it's interface detach 
method, to ensure no previously used ports cause issues when deploying new 
baremetal instances.

** Affects: neutron
     Importance: Undecided
         Status: New


** Tags: rfe

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1768690

Title:
  [RFE] Regenerate mac address of a port

Status in neutron:
  New

Bug description:
  Openstack Ironic need to set the mac address of neutron port to the
  actual mac address of the hardware for DHCP/PXE deployment to work.
  When using pre-created neutron ports there is an issue where
  previously used ports cause a conflict when a new instance is
  scheduled onto the same baremetal hosts.

  Example:
   openstack port create --network private test-port1
   openstack port create --network private test-port2

    openstack server create \
      --image cirros-0.3.5-x86_64-disk \
      --port test-port1\
      --flavor baremetal \
      test-server

    openstack server delete test-server

    openstack server create \
      --image cirros-0.3.5-x86_64-disk \
      --port test-port2 \
      --flavor baremetal \
      test-server

  The second server create command fails with:
  fault:
    code: 500
    created: '2018-04-29T12:21:37Z'
    < .. snip .. >
    message: 'Build of instance 5982f29a-3d48-4eb8-88ca-cf794c8f31dd aborted: 
Failure
      prepping block device.'

  An in conductor log:
  Apr 29 14:21:35 ironic-devstack.lab.example.com ironic-conductor[445]: ERROR 
ironic.common.neutron MacAddressInUseClient: Unable to complete operation for 
network 52497681-18f4-47de-b48e-1265799caea9. The mac address 52:54:00:53:b5:b9 
is in use.

  
  It should be possible to "return" the port by resetting a mac in the base MAC 
address Neutron uses for VIFs. e.g a port update request that triggers 
regeneration of the mac address. Ironic would add this to it's interface detach 
method, to ensure no previously used ports cause issues when deploying new 
baremetal instances.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1768690/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to