openstack-virtual-baremetal/openstack_virtual_baremetal
Ben Nemec 2f80b51e53 Cache server status
In a large environment with a lot of bmcs running, just the periodic
status checks from something like Ironic can generate a lot of api
traffic on the host cloud.  Since nothing should be changing the
status of the instances out from under us, we can cache the status
and only look it up when we know it may have changed.  This should
reduce the number of api calls significantly.

For reference, it looks like Ironic checks power status once per
minute by default.  In an environment with 5 baremetal nodes per
baremetal stack and 50 total stacks (not a particularly huge
environment), this can generate 250 server gets per minute, which
seems to have the knock-on effect of generating a lot of Neutron
traffic too.  My assumption is that Nova is retrieving network
details for the server each time the server is retrieved, and in a
net-iso stack this involves a lot of networks and ports.
2016-08-09 12:23:32 -05:00
..
tests Cache server status 2016-08-09 12:23:32 -05:00
__init__.py Reorganize into package and add tox for testing 2016-07-14 12:23:41 -05:00
build_nodes_json.py Add message about node files 2016-07-18 15:52:41 -05:00
deploy.py Reorganize into package and add tox for testing 2016-07-14 12:23:41 -05:00
openstackbmc.py Cache server status 2016-08-09 12:23:32 -05:00