From 4b95a1ccb1913dcdbc7db4b3a5b0588fc660ae8c Mon Sep 17 00:00:00 2001 From: Seunghun Lee Date: Mon, 11 Dec 2023 11:34:13 +0000 Subject: [PATCH 1/3] Update and supplement missing information on instructions --- doc/source/contributor/package-updates.rst | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/doc/source/contributor/package-updates.rst b/doc/source/contributor/package-updates.rst index 9a6c74589..86c1dc0b9 100644 --- a/doc/source/contributor/package-updates.rst +++ b/doc/source/contributor/package-updates.rst @@ -69,12 +69,12 @@ There is a comprehensive guide to setting up a multinode environment with Terraf * Remember to set different vxlan_vnis for each. -* Before starting any tests, run ``dnf distro-sync`` on each host to ensure you are using the same snapshots as in the release train. You can do this using the following commands: +* Before starting any tests, run ``dnf distro-sync -y`` on each host to ensure you are using the same snapshots as in the release train. Option ``-y`` is used to prevent hosts hang waiting for the confirmation input. You can do this using the following commands: .. code-block:: console - kayobe seed host command run -b --command "dnf distro-sync" - kayobe overcloud host command run -b --command "dnf distro-sync" + kayobe seed host command run -b --command "dnf distro-sync -y" + kayobe overcloud host command run -b --command "dnf distro-sync -y" * This may have installed a new kernel version. If so, you will need to reboot the overcloud hosts. You can check the installed kernels and the currently running kernel with the following commands. If the latest listed version is not running, you will need to reboot. @@ -102,6 +102,7 @@ Bump the snapshot versions in /etc/yum/repos.d with: .. code-block:: console + kayobe seed host configure -t dnf -kt none kayobe overcloud host configure -t dnf -kt none Install new packages: @@ -112,14 +113,23 @@ Install new packages: Perform a rolling reboot of hosts: +..note:: + For Multinode environment, seed-hypervisor cannot access control plane instances with the Openstack client. + To use Openstack client, connect to the seed instance via SSH first. + For authentication, use scp to copy ``public-openrc.sh`` to seed instance + .. code-block:: console + # Check your hypervisor hostname + openstack hypervisor list + + # Reboot controller instances and zeroth compute instance export ANSIBLE_SERIAL=1 kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/reboot.yml --limit controllers kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/reboot.yml --limit compute[0] # Test live migration - openstack server create --image cirros --flavor m1.tiny --network external --hypervisor-hostname wallaby-pkg-refresh-ovs-compute-02.novalocal --os-compute-api-version 2.74 server1 + openstack server create --image cirros --flavor m1.tiny --network external --hypervisor-hostname --os-compute-api-version 2.74 server1 openstack server migrate --live-migration server1 watch openstack server show server1 From 9ce027b78acbc83228b5a10503bfe5727d75c80a Mon Sep 17 00:00:00 2001 From: Seunghun Lee Date: Mon, 11 Dec 2023 16:36:13 +0000 Subject: [PATCH 2/3] Fix syntax error --- doc/source/contributor/package-updates.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/source/contributor/package-updates.rst b/doc/source/contributor/package-updates.rst index 86c1dc0b9..d5f016801 100644 --- a/doc/source/contributor/package-updates.rst +++ b/doc/source/contributor/package-updates.rst @@ -113,7 +113,7 @@ Install new packages: Perform a rolling reboot of hosts: -..note:: +.. note:: For Multinode environment, seed-hypervisor cannot access control plane instances with the Openstack client. To use Openstack client, connect to the seed instance via SSH first. For authentication, use scp to copy ``public-openrc.sh`` to seed instance From b1eff32b44dd19531b608a39eb927c5a3e78ff39 Mon Sep 17 00:00:00 2001 From: Alex-Welsh Date: Fri, 11 Oct 2024 13:26:36 +0100 Subject: [PATCH 3/3] Multinode package testing docs update --- doc/source/contributor/package-updates.rst | 35 ++++++++++++---------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/doc/source/contributor/package-updates.rst b/doc/source/contributor/package-updates.rst index d5f016801..49e2b0852 100644 --- a/doc/source/contributor/package-updates.rst +++ b/doc/source/contributor/package-updates.rst @@ -63,11 +63,13 @@ The following steps describe the process to test the new package and container r Creating the multinode environments ----------------------------------- -There is a comprehensive guide to setting up a multinode environment with Terraform, found here: https://github.com/stackhpc/terraform-kayobe-multinode. There are some things to note: +The `Multinode deployment workflow `_ can be used to automatically test changes. + +To manually test the changes, there is a comprehensive guide to set up a Multinode environment with Terraform, found here: https://github.com/stackhpc/terraform-kayobe-multinode. There are some things to note: * OVN is enabled by default, you should override it under ``etc/kayobe/environments/ci-multinode/kolla.yml kolla_enable_ovn: false`` for the OVS multinode environment. -* Remember to set different vxlan_vnis for each. +* Remember to set a different ``vxlan_vni`` for each. * Before starting any tests, run ``dnf distro-sync -y`` on each host to ensure you are using the same snapshots as in the release train. Option ``-y`` is used to prevent hosts hang waiting for the confirmation input. You can do this using the following commands: @@ -85,7 +87,7 @@ There is a comprehensive guide to setting up a multinode environment with Terraf kayobe playbook run --limit seed,overcloud $KAYOBE_CONFIG_PATH/ansible/reboot.yml -* The tempest tests run automatically at the end of deploy-openstack.sh. If you have the time, it is worth fixing any failing tests you can so that there is greater coverage for the package updates. (Also remember to propose these fixes in the relevant repos where applicable.) +* The tempest tests run automatically at the end of the multinode deployment script. If you have the time, it is worth fixing any failing tests you can so that there is greater coverage for the package updates. (Also remember to propose these fixes in the relevant repos where applicable.) Upgrading host packages ----------------------- @@ -114,30 +116,31 @@ Install new packages: Perform a rolling reboot of hosts: .. note:: - For Multinode environment, seed-hypervisor cannot access control plane instances with the Openstack client. - To use Openstack client, connect to the seed instance via SSH first. - For authentication, use scp to copy ``public-openrc.sh`` to seed instance + In the Multinode environment, the seed-hypervisor cannot access control + plane instances with the Openstack client. To use Openstack client, connect + to the Seed instance via SSH first. For authentication, use scp to copy + ``public-openrc.sh`` to the Seed .. code-block:: console # Check your hypervisor hostname - openstack hypervisor list + (seed) openstack hypervisor list # Reboot controller instances and zeroth compute instance - export ANSIBLE_SERIAL=1 - kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/reboot.yml --limit controllers - kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/reboot.yml --limit compute[0] + (seed-hypervisor) export ANSIBLE_SERIAL=1 + (seed-hypervisor) kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/reboot.yml --limit controllers + (seed-hypervisor) kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/reboot.yml --limit compute[0] # Test live migration - openstack server create --image cirros --flavor m1.tiny --network external --hypervisor-hostname --os-compute-api-version 2.74 server1 - openstack server migrate --live-migration server1 - watch openstack server show server1 + (seed) openstack server create --image cirros --flavor m1.tiny --network external --hypervisor-hostname --os-compute-api-version 2.74 server1 + (seed) openstack server migrate --live-migration server1 + (seed) watch openstack server show server1 - kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/reboot.yml --limit compute[1] + (seed-hypervisor) kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/reboot.yml --limit compute[1] # Try and migrate back - openstack server migrate --live-migration server1 - watch openstack server show server1 + (seed) openstack server migrate --live-migration server1 + (seed) watch openstack server show server1 Upgrading containers within a release -------------------------------------