-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multi-cell adoption #517
base: main
Are you sure you want to change the base?
Multi-cell adoption #517
Conversation
The recent revision gives an overview to the approach taken, PTAL. |
docs_user/modules/proc_migrating-databases-to-mariadb-instances.adoc
Outdated
Show resolved
Hide resolved
docs_user/modules/proc_retrieving-topology-specific-service-configuration.adoc
Outdated
Show resolved
Hide resolved
docs_user/modules/proc_retrieving-topology-specific-service-configuration.adoc
Outdated
Show resolved
Hide resolved
This change depends on a change that failed to merge. Change openstack-k8s-operators/install_yamls#826 is needed. |
docs_user/modules/proc_retrieving-topology-specific-service-configuration.adoc
Show resolved
Hide resolved
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
Based on feedback from @SeanMooney, we should not shift cells names as I proposed here. We want it instead like this:
Implementing either of these is quite challenging given the local requirement to maintain code in tests in the same form as it is documented (meaning shell commands). This sofisticated logic will bring in even more loops and arrays handling into already overcomplicated code proposed in this PR draft. |
As nova-operator allows a cell to be named "default" the simplest solution would be your second proposal. Just import the cells as is. This has the benefit also that it will work even if a given customer wrongly attached computes to the default cell. |
I tend now to implement the last choice: for a multi-cell ( default, cell1, etc. exist) - rename default cell to the highest cell number + 1. This keeps it consistent for single cell and multicell... /update: See the combined option which allows both renaming or importing as is |
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
With that milestone, the minimal test suit passes on my local dev env (with a minor hiccup applying netconfig, which renders EDPM nodes disconnected, until rebooted manually)! |
ffe6546
to
d5eaf58
Compare
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/2ea9af6e68bb474e987ad859ba0bcd4f ❌ adoption-standalone-to-crc-ceph FAILURE in 1h 34m 48s |
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/84108484e70d4e55abb69276f09327e5 ❌ adoption-standalone-to-crc-ceph FAILURE in 1h 36m 08s |
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/7b3becb36c664293919aae64119558a0 ❌ adoption-standalone-to-crc-ceph FAILURE in 1h 36m 29s |
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/43b6623e7fde44868a93840e48caa89f ❌ adoption-standalone-to-crc-ceph FAILURE in 50m 42s |
This change depends on a change with an invalid configuration. |
This change depends on a change with an invalid configuration. |
This change depends on a change with an invalid configuration. |
This change depends on a change with an invalid configuration. |
b3fc88a
to
3192f68
Compare
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/9aa83b0821fd473686fe7b396d797661 ❌ adoption-standalone-to-crc-ceph FAILURE in 1h 43m 18s |
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/00da43296435421d9dde38cb03701b90 ❌ adoption-standalone-to-crc-ceph FAILURE in 1h 38m 41s |
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/1fd40b6d652b46dba73d848ce273ce5e ❌ adoption-standalone-to-crc-ceph FAILURE in 1h 35m 43s |
Keep renaming 'default' cell consistent for single and multi cells: * Default becomes cellX (or it can be imported as is, for a multi-cell case only) * cell1 becomes mapped to openstack-cell1 osdp node set * cell2 becomes mapped to openstack-cell2 osdp node set, etc. * cellX (X=3 here) becomes mapped to openstack-cell3. Alternatively, default cell retains its name for the openstack-default osdpns mapping Evaluate podified MariaDB passwords for cells from osp-secret to align the tests with documented commands. Remove no longer needed podified DB password variable. Make ansible and shell variables compute cells aware. Split edpm nodes into compute cells by 1:1 mapping it as dataplane nodesets. Rework vars and secrets YAML values for the source and edpm nodes to not confuse its different naming schemes for cells in OSP/TripleO and RHOSO. Use edpm_nodes var to describe compuptes for each cell, instead of static host and ip vars that only used to work for a single-cell standalone, or multi-node single cell cases. Also explain EDPM net config requirements in vars.sample, when it is used outside of ci-framework (local deployments). Remove edpm_computes vars no longer used after moving stopping control-plane tripleo services into edpm-ansible Remove cached fact for pulled OSP configuration as it can no longer be generated in a multi-cell setup, where related shell variables become bash arrays. Simplify ENV headers management by collecting in a single place. Provide a variable to define the source cloud Ironic topology, for any cells with Ironic services. Align nova/libvirt and related services ordering in the lists of services defined in multiple places, with those specified in VA. Add a missing step in the fast forward uprgade guide to complete the adoption of the remaining dataplane services. Align the names in the tests to follow the documented steps to make the corresponding code easy discoverable. Adjust storage/storageRequests values to make it better fitting a multi-cell test scenarios. Also provide values in docs and add a comment to adjust them as needed. Stop ovn services only if active, or not missing (like on the cell controllers) Signed-off-by: Bohdan Dobrelia <[email protected]>
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/12498e1c961d449483b185313ca815a4 ❌ adoption-standalone-to-crc-ceph FAILURE in 1h 37m 58s |
Keep renaming 'default' cell consistent for single and multi cells:
case only)
default cell retains its name for the openstack-default osdpns
mapping
Evaluate podified MariaDB passwords for cells from osp-secret
to align the tests with documented commands. Remove no longer
needed podified DB password variable.
Make ansible and shell variables compute cells aware.
Split edpm nodes into compute cells by 1:1 mapping it as
dataplane nodesets.
Rework vars and secrets YAML values for the source and edpm
nodes to not confuse its different naming schemes for cells
in OSP/TripleO and RHOSO.
Use edpm_nodes var to describe compuptes for each cell,
instead of static host and ip vars that only used to work for
a single-cell standalone, or multi-node single cell cases.
Also explain EDPM net config requirements in vars.sample, when
it is used outside of ci-framework (local deployments).
Remove edpm_computes vars no longer used after moving stopping
control-plane tripleo services into edpm-ansible
Remove cached fact for pulled OSP configuration as it can no longer
be generated in a multi-cell setup, where related shell variables
become bash arrays.
Simplify ENV headers management by collecting in a single place.
Provide a variable to define the source cloud Ironic topology,
for any cells with Ironic services.
Align nova/libvirt and related services ordering in the
lists of services defined in multiple places, with those
specified in VA.
Add a missing step in the fast forward uprgade guide
to complete the adoption of the remaining dataplane services.
Align the names in the tests to follow the documented steps
to make the corresponding code easy discoverable.
Adjust storage/storageRequests values to make it better fitting
a multi-cell test scenarios. Also provide values in docs and
add a comment to adjust them as needed.
Stop ovn services only if active, or not missing (like on
the cell controllers)
Depends-On: openstack-k8s-operators/ci-framework#2485
JIRA OSPRH-6548