[Openstack-operators] Neutron Nova Notification and Virtual Interface plugging events

Kris G. Lindgren klindgren at godaddy.com
Mon Oct 31 11:17:11 UTC 2016


The reason behind this was that in the past it took neutron a long time to plug a vif (especially true on large networks with many boot requests happening at the same time)...  Iirc, it was updating the dhcp server that was the slowest operation.  Before the nova/neutron notifications nova would start a vm's and assume that the vif plug operation was instant.  This would result in a vm's booting up potentially without networking.

So now nova will create the vm, pause the vm, wait for neutron to say it's finished plugging the vif, then unpause the vm.  Ensuring that all vm's will have networking by the time the is boots.

In nova if you set vif plug is fatal and a timeout, the vm's will fail to boot if neutron hasn't plugged the vif within the timeout value.  Setting vif plug is fatal to false runs with the old behavior in that nova will just boot the vm, I do not remember if it waits for the timeout value and continues or if it waits at all if is fatal is not set.

Sent from my iPad

> On Oct 31, 2016, at 10:36 AM, Ahmed Mostafa <ahmedmostafadev at gmail.com> wrote:
> 
> Hello all, 
> 
> I am a bit confuse by the following parameters :
> 
> notify_nova_on_port_status_change
> notify_nova_on_port_data_change
> 
> The reason i am confused is that i see if there either of these values is set to true (Which is the default), neutron will create a notiva notifier and send these events to nova.
> 
> But i can not understand that part from the nova side, because as i see, when you create a virtual machine you basically call 
> 
> _do_build_and_run_instance, which calls _create_domain_and_network
> 
> These two methods create a virtual machine and a port, then attach that port on the virtual machine
> 
> but in _create_domain_and_network, is see nova waiting for neutron to create the port and it has a neutron_callbak_fail, if neutron should fail in creating the port.
> 
> Now, if i set these values to false, instance creation still will work, so i do not really understand, are these two values critical in creating a virtual machine ? and if not what exactly do they do ?
> 
> Thank you 
> _______________________________________________
> OpenStack-operators mailing list
> OpenStack-operators at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators



More information about the OpenStack-operators mailing list