[Openstack] ARP Caching

Georgios Dimitrakakis giorgis at acmac.uoc.gr
Fri Mar 13 21:11:39 UTC 2015


 So according to that it sends ARP every time a floating IP is assigned 
 at a VM. Am I right?

 If that is correct unfortunately it's not working :-(

 Any ideas how to debug it?

 Thanks a lot for your help!

 Regards,

 George


> Based on the code, it sends the gratuitous ARPs only when the 
> floating
> IP is assigned to the VM, and its sent as many times as the user
> decided by configuring the "send_arp_for_ha_count" parameter in
> nova.conf
>
> So, to be safe, I would add the following in nova.conf and restart
> nova services.
>
> send_arp_for_ha=true
> send_arp_for_ha_count=20
>
> On Fri, Mar 13, 2015 at 2:54 PM, Georgios Dimitrakakis  wrote:
>
>> George,
>>
>> how often does it send the gratuitous ARP requests?
>>
>> Does it send it every time a network change is happening?
>>
>> Best,
>>
>> George
>>
>>> You have to set two variables in the nova.conf file apparently
>>> ("send_arp_for_ha" and "send_arp_for_ha_count"):
>>>
>>>
>>
> 
> https://github.com/openstack/nova/blob/3658e1015a2f7cb7c321cc1a0adfda37757fd80b/nova/network/linux_net.py#L764
>>> [4]
>>> [4]
>>>
>>> On Fri, Mar 13, 2015 at 2:00 PM, Georgios Dimitrakakis  wrote:
>>>
>>>>> On 03/13/2015 05:54 AM, Georgios Dimitrakakis wrote:
>>>>>
>>>>>>> On 03/12/2015 06:24 PM, Georgios Dimitrakakis wrote:
>>>>>>>
>>>>>>>> Hello!
>>>>>>>>
>>>>>>>> I am facing a rather weird issue and would like to know
>>>>>>>> if
>>>>>>>> anyone has
>>>>>>>> faced it before and the way you have solved it (if
>>>>>>>> any).
>>>>>>>>
>>>>>>>> Firstly, I d like to let you know that I am running
>>>>>>>> Icehouse with Nova-Legacy
>>>>>>>> Networking.
>>>>>>>>
>>>>>>>> I have an application that launches and terminates VMs
>>>>>>>> very
>>>>>>>> frequently and
>>>>>>>> automatically assigns to them
>>>>>>>> floating IP addresses.
>>>>>>>>
>>>>>>>> As a result if an IP has been used once then the second
>>>>>>>> time that is being used
>>>>>>>> cannot be reached for at
>>>>>>>> least 20minutes (this is the time frame if the newly
>>>>>>>> launched VM gets the same
>>>>>>>> IP address from one that
>>>>>>>> has just been terminated). Furthermore, this issue only
>>>>>>>> happens when the second
>>>>>>>> VM is launched on a
>>>>>>>> different physical node (hypervisor) than the first
>>>>>>>> one.
>>>>>>>>
>>>>>>>> I believe that I have identified the problem to be ARP
>>>>>>>> Caching on the router
>>>>>>>> side since if I do:
>>>>>>>>
>>>>>>>> arping -U -I {Interface-Name} {IP-Address}
>>>>>>>>
>>>>>>>> in order to update the ARP Caches of the neighbors
>>>>>>>> immediately the new VM can be
>>>>>>>> reached on its floating
>>>>>>>> IP address.
>>>>>>>>
>>>>>>>> Is this the proper way of solving it?
>>>>>>>>
>>>>>>>> Can I somehow "instruct" OpenStack not to use the first
>>>>>>>> available IP address
>>>>>>>> everytime but on a random order
>>>>>>>> or the one that hasnt been used for enough time?
>>>>>>>>
>>>>>>>> Any other thoughts?
>>>>>>>
>>>>>>> Just a thought, have you tried enabling "send_arp_for_ha"
>>>>>>> in
>>>>>>> nova.conf?
>>>>>>>
>>>>>>> Chris
>>>>>>
>>>>>> Hi Chris! Thx for the feedback!
>>>>>>
>>>>>> send_arp_for_ha = True
>>>>>>
>>>>>> is already enabled in all nodes (controller and compute).
>>>>>>
>>>>>> Can I somehow verify that its working?
>>>>>
>>>>> You should be able to verify with a packet sniffer somewhere
>>>>> on
>>>>> your network.
>>>>>
>>>>>> How often is it sending the ARP request? Does it send it
>>>>>> every
>>>>>> time nova configuration is changing?
>>>>>
>>>>> Im very much *not* an expert in this area, so Im afraid Im
>>>>> not
>>>>> the
>>>>> right person to ask about that.
>>>>>
>>>>> Chris
>>>>
>>>> Chris,
>>>>
>>>> thanks for the feedback. Any idea on what to sniff for?
>>>>
>>>> George
>>>>
>>>> _______________________________________________
>>>> Mailing list:
>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>>> [1] [1]
>>>> Post to     : openstack at lists.openstack.org [2] [2]
>>>> Unsubscribe :
>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>>> [3] [3]
>>>
>>> Links:
>>> ------
>>> [1] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>> [5]
>>> [2] mailto:openstack at lists.openstack.org [6]
>>> [3] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>>> [7]
>>> [4]
>>>
>>>
>>
> 
> https://github.com/openstack/nova/blob/3658e1015a2f7cb7c321cc1a0adfda37757fd80b/nova/network/linux_net.py#L764
>>> [8]
>>> [5] mailto:giorgis at acmac.uoc.gr [9]
>>
>> _______________________________________________
>> Mailing list:
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack [10]
>> Post to     : openstack at lists.openstack.org [11]
>> Unsubscribe :
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack [12]
>
>
>
> Links:
> ------
> [1] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
> [2] mailto:openstack at lists.openstack.org
> [3] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
> [4]
> 
> https://github.com/openstack/nova/blob/3658e1015a2f7cb7c321cc1a0adfda37757fd80b/nova/network/linux_net.py#L764
> [5] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
> [6] mailto:openstack at lists.openstack.org
> [7] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
> [8]
> 
> https://github.com/openstack/nova/blob/3658e1015a2f7cb7c321cc1a0adfda37757fd80b/nova/network/linux_net.py#L764
> [9] mailto:giorgis at acmac.uoc.gr
> [10] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
> [11] mailto:openstack at lists.openstack.org
> [12] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
> [13] mailto:giorgis at acmac.uoc.gr





More information about the Openstack mailing list