StarlingX Distributed Cloud
Go to file
Christopher Souza 342690142f Optimize dc orchestrator scheduling
Currently DC orchestration divides the subclouds in stages and the
stage size is defined by the max_parallel_subclouds parameter or
by the size set for the group. Once a stage start being orchestrated,
it will wait for all subclouds of that stage to finish before starting
the next stage, causing the orchestrator to wait for slower subclouds.
The change is to remove the division by stage and keep adding a new
subcloud as soon as one finishes its orchestration in order to improve
the orchestrator speed.

Test Plan:
PASS: Create and apply a strategy with a specific subcloud and verify
that the orchestration finishes successfully.
PASS: Create and apply a strategy with a group of subclouds and verify
that the orchestrator uses the max_parallel_subclouds of that group.
PASS: Create and apply a strategy with max_parallel_subclouds
parameter and verify that the orchestrator uses that parameter.
PASS: Create and apply a strategy with stop_on_failure parameter and
verify that the orchestrator doesn't add any subclouds after the
failure is identified.
PASS: Create and apply a kubernetes strategy and verify that the
orchestration finishes successfully.
PASS: Create and apply a rootca strategy and verify that the
orchestration finishes successfully.
PASS: Create and apply a firmware strategy and verify that the
orchestration finishes successfully.
PASS: Create and apply a upgrade strategy and verify that the
orchestration finishes successfully.
PASS: Create and apply a patch with 100 subclouds in parallel
strategy and verify that the orchestration finishes successfully.
PASS: Create and apply a strategy with a group that has more
subclouds than the max_parallel_subclouds value and verify that
once a subcloud has been processed, another subcloud from
"unprocessed pool" takes its place.
PASS: Create and apply a strategy without specifying
--max_parallel_subclouds value having subclouds from different
groups that are elegible and verify that the orchestration
finishes successfully.

Story: 2010798
Task: 48417

Signed-off-by: Christopher Souza <Christopher.DeOliveiraSouza@windriver.com>
Change-Id: Ie8e8a62ce1314706fb359c1349ab09bc853d0e4a
2023-08-02 12:30:50 -03:00
api-ref/source Rename config_sync_status field 2023-05-24 17:57:11 -03:00
distributedcloud Optimize dc orchestrator scheduling 2023-08-02 12:30:50 -03:00
doc Turn off the legacy pip resolver for distcloud 2021-01-22 16:00:28 -06:00
releasenotes Switch to newer openstackdocstheme and reno versions 2020-06-04 14:18:06 +02:00
tools/gate Adding py39 gate and removing py36 gates from zuul 2021-10-28 15:26:34 -05:00
.gitignore [Doc] OpenStack API Reference Guide 2018-09-25 08:18:08 -07:00
.gitreview OpenDev Migration Patch 2019-04-19 19:52:44 +00:00
.mailmap StarlingX open source release updates 2018-08-07 11:51:21 -04:00
.zuul.yaml Fix github mirroring for this repo 2023-04-28 12:38:50 -04:00
CONTRIBUTING.rst StarlingX open source release updates 2018-08-07 11:51:21 -04:00
CONTRIBUTORS.wrs StarlingX open source release updates 2018-08-07 11:51:21 -04:00
HACKING.rst Update setup.cfg to align with StarlingX project 2019-01-07 16:34:24 +00:00
README_DC Update location of openrc in readme 2019-03-15 10:56:03 -05:00
bindep.txt Fix openstack-tox jobs for DC repo 2022-11-21 16:58:49 +00:00
centos_build_layer.cfg Build layering, add layer build config file 2019-11-08 08:40:22 +08:00
centos_dev_docker_images.inc OpenStack-Keystone Proxy Containerization 2019-11-04 14:36:50 -05:00
centos_dev_wheels.inc OpenStack-Keystone Proxy Containerization 2019-11-04 14:36:50 -05:00
centos_iso_image.inc Keystone token and resource caching 2020-03-23 21:31:04 -04:00
centos_pkg_dirs Update files for relocated repo 2019-11-04 14:36:51 -05:00
centos_stable_docker_images.inc OpenStack-Keystone Proxy Containerization 2019-11-04 14:36:50 -05:00
centos_stable_wheels.inc Update files for relocated repo 2019-11-04 14:36:51 -05:00
debian_build_layer.cfg Add debian_build_layer.cfg file 2021-10-05 14:07:18 -04:00
debian_dev_docker_images.inc Port stx-keystone-api-proxy image to debian 2022-11-21 17:46:41 +00:00
debian_dev_wheels.inc Port stx-keystone-api-proxy image to debian 2022-11-21 17:46:41 +00:00
debian_iso_image.inc Debian: distcloud: update debian_iso_image.inc 2022-11-18 08:12:32 +08:00
debian_pkg_dirs Add debian packaging for distributedcloud 2022-01-25 19:06:08 -03:00
debian_stable_docker_images.inc Port stx-keystone-api-proxy image to debian 2022-11-21 17:46:41 +00:00
debian_stable_wheels.inc Port stx-keystone-api-proxy image to debian 2022-11-21 17:46:41 +00:00
requirements.txt Move content to subdir to support relocated packaging 2019-11-04 13:57:02 -05:00
test-requirements.txt Only install yamllint in py3 env 2021-04-06 11:40:45 -05:00
tox.ini Better message on SubcloudBackupOperationFailed 2023-02-22 20:39:55 -03:00