[openstack-dev] [Neutron][LBaaS] Member status update mangled with pool stats API
Vijay.Venkatachalam at citrix.com
Thu Dec 26 06:35:15 UTC 2013
Hi Eugene et al,
As of today, during a stats API query, a pool member's status is gathered along with the pool stats and stored in the db. Subsequent GETs to the members will have the correct member status. In this approach, only when a North Bound API call for stats is performed the member's status would get refreshed. This is not desirable and the status should be up-to-date any point of time.
My suggestion: We can introduce a new API as part of the driver interface like get_poolmember_statuses(poolid). The LBaaS plugin will call this on a periodic basis to collect member statuses and stores it in the db.
HAProxy has taken a back door route to keep the status up-to-date. Here the HAProxy agent starts a periodic task that collects all "pool stats" + "member status" and updates the collected data in the db through a plugin driver callback.
This approach is not suitable for agent less models.
One could argue that a periodic task could be started by the plugin driver instead of the agent, to collect the member statuses. But since this is a requirement from many drivers, it is better to be implemented as part of the LBaaS plugin.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the OpenStack-dev