-
Notifications
You must be signed in to change notification settings - Fork 56
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Make ansible and shell variables compute cells aware. Split edpm nodes into compute cells by 1:1 mapping it as dataplane nodesets. Separate 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. This also allows adoption of the source tripleo nodes into different EDPM nodes with another IPs but the same FQDNs (those must remain unchanged as a strict requirement). Remove edpm_computes vars no longer used after moving stopping control-plane tripleo services into edpm-ansible Signed-off-by: Bohdan Dobrelia <[email protected]>
- Loading branch information
Showing
17 changed files
with
375 additions
and
118 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -187,6 +187,79 @@ https://openstack-k8s-operators.github.io/data-plane-adoption/dev/#_reset_the_en | |
|
||
''' | ||
|
||
== Deploying TripleO With Multiple Cells | ||
|
||
A TripleO Standalone setup creates only a single Nova v2 cell, with a combined controller and compute services on it. | ||
In order to deploy multiple compute cells for adoption testing (without Ceph), create a 5 VMs, with the following requirements met: | ||
|
||
* Named `edpm-compute-0` .. `edpm-compute-4`. | ||
* Running RHEL 9.2, with RHOSP 17.1 repositiries configured. | ||
* Can login via SSH without a password as the root user, from the hypervisor host. | ||
* User `zuul` is created, and can sudo without a password, and login via SSH without a password, from the hypervisor host. | ||
* User `zuul` can login to `edpm-compute-1`, `edpm-compute-2`, `edpm-compute-3`, `edpm-compute-4` nodes via SSH without a password, from the `edpm-compute-0` node, | ||
by using the generated `/home/zuul/.ssh/id_rsa` private key. | ||
* RedHat registry credentials are exported on the hypervisor host. | ||
|
||
Then invoke the `tripleo` target of `install_yamls`. | ||
|
||
For that, you can also adjust as needed and use the following commands | ||
(instead of an example `rhos-release` commands, use a tool of your choice): | ||
|
||
[,bash] | ||
---- | ||
export RH_REGISTRY_USER="<insert your registry.redhat.io user>" | ||
export RH_REGISTRY_PWD="<insert your registry.redhat.io password>" | ||
cd ~/install_yamls/devsetup | ||
cat <<EOF > /tmp/osp17_repos | ||
# Rhos-release steps are only available from the internal RedHat network, use a tool of your choice instead! | ||
#sudo rhos-release -x | ||
#sudo rhos-release 17.1 | ||
sudo dnf install -y git curl wget util-linux lvm2 podman python3-tripleoclient | ||
EOF | ||
export CENTOS_9_STREAM_URL=<insert url to rhel-guest-image-9.2.x86_64.qcow2> | ||
export NTP_SERVER=<insert ntp server of your choice> | ||
export MANILA_ENABLED=false | ||
export EDPM_COMPUTE_CEPH_ENABLED=false | ||
export EDPM_COMPUTE_CEPH_NOVA=false | ||
export EDPM_COMPUTE_CELLS=3 | ||
export STANDALONE_EXTRA_CMD="bash -c 'echo \"$RH_REGISTRY_PWD\" > ~/authfile; chmod 0600 ~/authfile; sudo /bin/podman login registry.redhat.io -u \"$RH_REGISTRY_USER\" --password-stdin < ~/authfile'" | ||
export REPO_SETUP_CMDS=/tmp/osp17_repos | ||
export EDPM_TOTAL_NODES=1 | ||
export SKIP_TRIPLEO_REPOS=false | ||
export IP_ADRESS_SUFFIX=100 | ||
export EDPM_COMPUTE_NETWORK_IP=192.168.122.1 | ||
export HOST_PRIMARY_RESOLV_CONF_ENTRY=192.168.122.1 | ||
export BASE_DISK_FILENAME="rhel-9-base.qcow2" | ||
make edpm_compute EDPM_COMPUTE_SUFFIX=0 EDPM_COMPUTE_DISK_SIZE=10 EDPM_COMPUTE_RAM=9 EDPM_COMPUTE_VCPUS=2 | ||
make edpm_compute EDPM_COMPUTE_SUFFIX=1 EDPM_COMPUTE_DISK_SIZE=17 EDPM_COMPUTE_RAM=12 EDPM_COMPUTE_VCPUS=4 | ||
make edpm_compute EDPM_COMPUTE_SUFFIX=2 EDPM_COMPUTE_DISK_SIZE=14 EDPM_COMPUTE_RAM=12 EDPM_COMPUTE_VCPUS=4 | ||
make edpm_compute EDPM_COMPUTE_SUFFIX=3 EDPM_COMPUTE_DISK_SIZE=10 EDPM_COMPUTE_RAM=4 EDPM_COMPUTE_VCPUS=2 | ||
make edpm_compute EDPM_COMPUTE_SUFFIX=4 EDPM_COMPUTE_DISK_SIZE=16 EDPM_COMPUTE_RAM=12 EDPM_COMPUTE_VCPUS=4 | ||
for n in 0 1 2 3 4; do | ||
ssh -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa \ | ||
[email protected]${n} useradd --create-home --shell /bin/bash --groups root zuul | ||
scp -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa \ | ||
~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa [email protected]${n}:/home/zuul/.ssh/id_rsa | ||
ssh -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa \ | ||
[email protected]${n} cp /root/.ssh/authorized_keys /home/zuul/.ssh/authorized_keys | ||
ssh -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa \ | ||
[email protected]${n} chown zuul: /home/zuul/.ssh/* | ||
ssh -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa \ | ||
[email protected]${n} echo "zuul ALL=NOPASSWD:ALL" '>' /etc/sudoers.d/zuul; done | ||
done | ||
make tripleo_deploy | ||
for n in 0 1 2 3 4; do make standalone_snapshot EDPM_COMPUTE_SUFFIX=$n; done | ||
---- | ||
|
||
== Network routing | ||
|
||
Route VLAN20 to have access to the MariaDB cluster: | ||
|
@@ -340,14 +413,26 @@ make openstack | |
|
||
== Performing the adoption procedure | ||
|
||
To simplify the adoption procedure, copy the deployment passwords that | ||
To simplify the adoption procedure with additional cells, copy and rename the deployment passwords that | ||
you use in copy the deployment passwords that you use in the | ||
https://openstack-k8s-operators.github.io/data-plane-adoption/user/#deploying-backend-services_migrating-databases[backend | ||
services deployment phase of the data plane adoption]. | ||
|
||
For a single-cell standalone TripleO deployment: | ||
[,bash] | ||
---- | ||
scp -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa [email protected]:/root/tripleo-standalone-passwords.yaml ~/ | ||
mkdir -p ~/overcloud-deploy/overcloud | ||
scp -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa [email protected]:/root/tripleo-standalone-passwords.yaml ~/overcloud-deploy/overcloud/overcloud-passwords.yaml | ||
---- | ||
|
||
Further on, this password is going to be referenced as `TRIPLEO_PASSWORDS[default]` for a `default` cell name in terms of TripleO (which becomes a `cell1` after adoption). | ||
|
||
For a multi-cell deployment, change the above command to these: | ||
[,bash] | ||
---- | ||
scp -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa [email protected]:overcloud-deploy/overcloud/overcloud-passwords.yaml ~/ | ||
scp -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa [email protected]:overcloud-deploy/cell1/cell1-passwords.yaml ~/ | ||
scp -i ~/install_yamls/out/edpm/ansibleee-ssh-key-id_rsa [email protected]:overcloud-deploy/cell2/cell2-passwords.yaml ~/ | ||
---- | ||
|
||
The development environment is now set up, you can go to the https://openstack-k8s-operators.github.io/data-plane-adoption/[Adoption | ||
|
@@ -386,14 +471,21 @@ oc delete --wait=false pod mariadb-copy-data || true | |
oc delete secret osp-secret || true | ||
---- | ||
|
||
Revert the standalone vm to the snapshotted state | ||
Revert the standalone vm(s) to the snapshotted state | ||
|
||
[,bash] | ||
---- | ||
cd ~/install_yamls/devsetup | ||
make standalone_revert | ||
---- | ||
|
||
For a multi-cell deployment, change the above command to these: | ||
[,bash] | ||
---- | ||
cd ~/install_yamls/devsetup | ||
for n in 0 1 2 3 4; do make standalone_revert EDPM_COMPUTE_SUFFIX=$n; done | ||
---- | ||
|
||
Clean up and initialize the storage PVs in CRC vm | ||
|
||
[,bash] | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.