This changes the instance manager to use the InstanceGroupManager
to manage clusters of instances instead of individual instances,
including clusters of 1 node for non-HA resources.
This also adds some missing documenation on enabling clustering
of the astara-orchestartor service.
Change-Id: Ib679453aafe68e6653c8c5f9f412efa72c2b7cb1
This allow users to specify the driver and image associated with
a network function. This is dependent on the correct API extension
being loaded into neutron from the astara-neutron repo.
Depends-on: I6b6f98e8ae89c704f45b05f87f17ebed5a70fc1d
Partially-implements: blueprint astara-sfc
Co-authored by: Mark McClain <mark@mcclain.xyz>
Change-Id: I1c349e56fd23d1aa95c7f8c0da68d25246b0ceb2
We keep passing around driver instances as a 'driver' parameter
and track it locally in the instance and state manager as self.driver.
This is actually a resource encapsulated, and we should reference it
as such to avoid being opaque. This renames it accordingly.
It also removes some redundancy where we are passing resource_id along
with a resource object, which contains the id as well.
Change-Id: I65490f01608fda1da3467455ee58ecb5fa6c7873
This cleans up the worker's handling of rebalance events a bit
and ensures we dont drop state machines in a way that prevents
them from later being recreated. It also avoids a bug where, upon
failing over resources to a new orchestartor, we create a state
machine per worker, instead of dispatching them to one single worker.
To do this, the scheduler is passed into workers as well as the
process name, allowing them to more intelligently figure out what
they need to manage after a cluster event.
Finally, this ensures a config update is issued to appliances after
they have moved to a new orchestrator after a cluster event.
Change-Id: I76bf702c33ac6ff831270e7185a6aa3fc4c464ca
Partial-bug: #1524068
Closes-bug: #1527396
When a resource is deleted, its not currently removed from the tenant
resource cache. This causes a cache hit if the tenant attempts to re-create
the same type of resource, but the resource is then later ignored because
it has been deleted. This adds a callback used by the TRM to remove it
from the resource cache when its state machine is deleted.
Change-Id: I5dcbeda7de240a693fc7a4944dd34a37b10d174b
Closes-bug: #1531597
Updates tenant.py to use oslo_utils.timeutils and obsletes
astara.openstack.common. Also drops service.py, which is unused.
Change-Id: I6b51f1bfef3d1b1c9708e49abca0220321be056d
In this step all of the imports and usage of akanda.rug is updated to
use astara. Addtionally rename all internal references from Akanda to
Astara.
Change-Id: I0cb8596066d949bceaadc4718b210fc373b5f296
Depends-On: I87106ae63747291bb6424839b5155f53136c54f9
Implements: blueprint convert-to-astara