Hi, With the following Neutron patches recently merged, it is now possible to provide DHCP service to instances on remote routed networks that have a dhcp forwarder configured.
https://review.openstack.org/#/c/459861/ https://review.openstack.org/#/c/468744/ https://review.openstack.org/476477 This enables provisioning of baremetal machines on remote routed networks as well. Removing the need to deploy ironic conductor/inspector etc with local connection to each routed network segment. However with the flat driver this does not work, because the flat driver bind neutron ports to the node running ironic-conductor service, e.g 'nova_host_id'. Not to the actual baremetal node. (Ref: https://git hub.com/openstack/ironic/blob/master/ironic/drivers/modules/network/fla t.py#L64) The result of binding to the 'nova_host_id' causes this error for baremetal nodes on the remote routed network segment. INFO ironic.conductor.task_manager [req-11f5c864-cc1a-49ee-b224- a6695c1a9678 87f6dc660b1f43f79efa4355080e118c 6a8453039524487ca0bbf191cdc6317d - default default] Node f19ecc51-c8ec- 4d34-a349-206a5ae97ed2 moved to provision state "deploy fail ed" from state "deploying"; target provision state is "active": NetworkError: Unable to set binding:host_id for neutron port 5e674173- 32d9-4ec9-be2a-7f2b3aa02336. Error: Host ironic- conductor.node.example.com is not connected to a segment where the existing fixed_ips on port 5e6741 73-32d9-4ec9-be2a-7f2b3aa02336 will function given the routed network topology. I can workaround this by not binding the port: $ sudo sed -i \ s/'binding:host_id': host_id/'binding:host_id': None/" \ ironic/drivers/modules/network/flat.py I can see good progress on the phys-net aware spec. But with the flat driver this will not help, as the nova_host_id is used for binding. Not the ironic baremetal node uuid. What would be a good way forward here? - Change the flat driver to not bind the port? - Change the flat driver to bind using the ironic node uuid, and rely on phys-net info being populated in Neutron? (Requieres: baremetal neutron agent https://review.openstack.org/#/c/456235/ + several changes related to phys-net) - Another driver? 'flat-routed' that does one of the above? - Keep the flat driver, but register the ironic-conductor as a separate host in neutron and populate phys-nets in neutron for this 'ironic_host_id' with all networks available on the baremetal nodes ironic is managing? Is there already a plan? Other options? -- |Harald Jensås | irc: hjensas __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev