nfv/nfv/nfv-plugins/nfv_plugins/nfvi_plugins
Bart Wensley 0a170a5f11 Allow VIM to start before OpenStack pods
In the pre-kubernetes world, the VIM was always guaranteed
to start after the OpenStack services were up and running
(e.g. rabbitmq, nova, cinder). This ordering was enforced
by Service Management. The initialization code in the VIM
is based on this assumption, so the VIM simply exits when
one of the required OpenStack services is not present.

In kubernetes deployments, the OpenStack services are all
running in pods, which do not come up until after the VIM
(which is a baremetal service) has already intialized.
This happens (for example) when an AIO-SX host is
rebooted (e.g. after being unlocked). In this case, the
VIM will repeatedly exit until the OpenStack services it
needs come up. This is undesirable because the VIM is
a key component and the lack of a VIM prevents other
system operations from being done (e.g. host lock).

The solution is to allow the VIM to come up before any
of the OpenStack pods are running. The specific issue
was with the rabbitmq pod, which was preventing the
VIM's compute plugin from being initialized. The
solution is to have the VIM query rabbitmq for the
exchange it needs, prior to attempting to initialize
the compute plugin. The VIM will continue to do this
until the rabbitmq pod is available and allow other
VIM components to continue to run.

Change-Id: Iaf2403d361da6f32c7bccc3d27726562887a7524
Story: 2003910
Task: 28556
Signed-off-by: Bart Wensley <barton.wensley@windriver.com>
2018-12-17 12:24:36 -06:00
..
clients Update httplib to use python3 compatible code 2018-11-21 15:55:57 -06:00
openstack Allow VIM to start before OpenStack pods 2018-12-17 12:24:36 -06:00
__init__.py StarlingX open source release updates 2018-05-31 07:36:51 -07:00
config.ini Add support for containerized keystone to VIM 2018-10-03 08:29:08 -05:00
config.py Add support for containerized keystone to VIM 2018-10-03 08:29:08 -05:00
nfvi_block_storage_api.py Update httplib to use python3 compatible code 2018-11-21 15:55:57 -06:00
nfvi_compute_api.py Allow VIM to start before OpenStack pods 2018-12-17 12:24:36 -06:00
nfvi_guest_api.py Change compute node to worker node personality 2018-12-14 14:15:16 -05:00
nfvi_identity_api.py Update httplib to use python3 compatible code 2018-11-21 15:55:57 -06:00
nfvi_image_api.py Update httplib to use python3 compatible code 2018-11-21 15:55:57 -06:00
nfvi_infrastructure_api.py Change compute node to worker node personality 2018-12-14 14:15:16 -05:00
nfvi_network_api.py Change compute node to worker node personality 2018-12-14 14:15:16 -05:00
nfvi_sw_mgmt_api.py Update httplib to use python3 compatible code 2018-11-21 15:55:57 -06:00
unit_test.py Update urllib2 to be python3 compatable. 2018-11-23 08:54:24 -06:00