[openstack-dev] [neutron] Neutron agent internal data structures

Assaf Muller amuller at redhat.com
Mon Mar 9 15:19:20 UTC 2015



----- Original Message -----
> Thank you. I am looking to read this state and compare it with neutron DB. If
> there are agents that do it already, I would like only to learn if I can
> change the polling period. Can you advise about the most efficient way to
> learn which agent does it and which doesn't?

The L3 agent has a periodic task (60 seconds, non-configurable, see neutron/
agent/l3/agent.py.L3NATAgent.periodic_sync_routers_task) that gets all of
the routers hosted on the agent from the DB, IF some error condition is met,
i.e. this periodic task doesn't do anything at all unless an error occurred
during the configuration of a router. It only performs a full-sync (Get all
routers from Neutron DB and configure them locally) when it starts up.

The DHCP and OVS agents are similar in that they don't actually get the state from the
Neutron DB in a periodic manner unless an error has occurred.

> 
> Leonid
> 
> On Sun, Mar 8, 2015 at 12:02 AM, Salvatore Orlando < sorlando at nicira.com >
> wrote:
> 
> 
> 
> Hi Leo,
> 
> Every agent keeps anyway an in-memory state throughout its execution.
> The agents indeed have no persistent storage - at least not in the usual form
> of a database. They however rely on data other than the neutron database.
> 
> For instance for the l2 agent, ovsdb itself is a source of information. The
> agent periodically scans it to detect interfaces which are brought up or
> down.
> As another example the dhcp agent stores its current state a 'data' directory
> (if you're using devstack it's usually /opt/stack/data/neutron/dhcp)
> 
> Hope this helps,
> Salvatore
> 
> 
> 
> 
> 
> On 7 March 2015 at 13:05, Leo Y < minherz at gmail.com > wrote:
> 
> 
> 
> 
> 
> Hello,
> 
> Where within the code of neutron agents I can find structure(s) that store
> network information? The agent has to know all current networks and ports in
> use by all VMs that are running in its compute node. Does anyone know where
> this information is stored except for neutron DB?
> 
> Thank you
> 
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 
> 
> 
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 
> 
> 
> 
> --
> Regards,
> Leo
> ---------------------------------------------------------
> I enjoy the massacre of ads. This sentence will slaughter ads without a messy
> bloodbath
> 
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 



More information about the OpenStack-dev mailing list