From 8fa8e9670b93e830ec94b28e222317d4675c0ae4 Mon Sep 17 00:00:00 2001 From: Alex-Welsh Date: Mon, 3 Feb 2025 14:25:13 +0000 Subject: [PATCH 1/5] sed s/2024.1/master --- .../workflows/stackhpc-build-kayobe-image.yml | 2 +- .github/workflows/stackhpc-multinode.yml | 2 +- .github/workflows/stackhpc-promote.yml | 2 +- .gitreview | 2 +- .readthedocs.yaml | 2 +- doc/source/conf.py | 4 +- .../contributor/environments/ci-aio.rst | 6 +- doc/source/contributor/package-updates.rst | 8 +- .../contributor/testing-ci-automation.rst | 2 +- doc/source/operations/upgrading-openstack.rst | 171 +----------------- doc/source/release-notes.rst | 8 +- doc/source/usage.rst | 2 +- .../aufn-ceph/a-universe-from-nothing.sh | 4 +- .../environments/ci-aio/automated-setup.sh | 4 +- etc/kayobe/kolla-image-tags.yml | 16 +- releasenotes/source/index.rst | 1 + releasenotes/source/master.rst | 6 + requirements.txt | 2 +- tox.ini | 6 +- 19 files changed, 41 insertions(+), 209 deletions(-) create mode 100644 releasenotes/source/master.rst diff --git a/.github/workflows/stackhpc-build-kayobe-image.yml b/.github/workflows/stackhpc-build-kayobe-image.yml index 70c1b166e..eba0b2799 100644 --- a/.github/workflows/stackhpc-build-kayobe-image.yml +++ b/.github/workflows/stackhpc-build-kayobe-image.yml @@ -8,7 +8,7 @@ on: push: branches: # NOTE(upgrade): Reference only the current release branch here. - - stackhpc/2024.1 + - stackhpc/master workflow_call: inputs: diff --git a/.github/workflows/stackhpc-multinode.yml b/.github/workflows/stackhpc-multinode.yml index 01476271d..25df2dc11 100644 --- a/.github/workflows/stackhpc-multinode.yml +++ b/.github/workflows/stackhpc-multinode.yml @@ -70,6 +70,6 @@ jobs: ssh_key: ${{ inputs.ssh_key }} stackhpc_kayobe_config_version: ${{ github.ref_name }} # NOTE(upgrade): Reference the PREVIOUS release here. - stackhpc_kayobe_config_previous_version: ${{ inputs.upgrade == 'major' && 'stackhpc/2023.1' || 'stackhpc/2024.1' }} + stackhpc_kayobe_config_previous_version: ${{ inputs.upgrade == 'major' && 'stackhpc/2024.1' || 'stackhpc/master' }} terraform_kayobe_multinode_version: ${{ inputs.terraform_kayobe_multinode_version }} secrets: inherit diff --git a/.github/workflows/stackhpc-promote.yml b/.github/workflows/stackhpc-promote.yml index 10c160021..a8ad8a248 100644 --- a/.github/workflows/stackhpc-promote.yml +++ b/.github/workflows/stackhpc-promote.yml @@ -4,7 +4,7 @@ on: push: branches: # NOTE(upgrade): Reference only the current release branch here. - - stackhpc/2024.1 + - stackhpc/master jobs: promote: name: Trigger Pulp promotion workflows diff --git a/.gitreview b/.gitreview index 088e01d84..2990c2ef3 100644 --- a/.gitreview +++ b/.gitreview @@ -2,4 +2,4 @@ host=review.opendev.org port=29418 project=openstack/kayobe-config.git -defaultbranch=stable/2024.1 +defaultbranch=master diff --git a/.readthedocs.yaml b/.readthedocs.yaml index bcae0ec0e..ed7fc82b2 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -13,7 +13,7 @@ build: python: "3.7" jobs: post_checkout: - - git remote set-branches origin master stackhpc/2024.1 stackhpc/2023.1 stackhpc/zed stackhpc/yoga stackhpc/xena stackhpc/wallaby + - git remote set-branches origin master stackhpc/master stackhpc/2024.1 stackhpc/2023.1 stackhpc/zed stackhpc/yoga stackhpc/xena stackhpc/wallaby - git fetch --unshallow # Build documentation in the doc/source/ directory with Sphinx diff --git a/doc/source/conf.py b/doc/source/conf.py index 268d2af58..ea135eb81 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -29,8 +29,8 @@ # -- StackHPC Kayobe configuration -------------------------------------- # Variables to override -current_series = "2024.1" -previous_series = "2023.1" +current_series = "master" +previous_series = "2024.1" branch = f"stackhpc/{current_series}" ceph_series = "squid" diff --git a/doc/source/contributor/environments/ci-aio.rst b/doc/source/contributor/environments/ci-aio.rst index 953782568..1e2a04529 100644 --- a/doc/source/contributor/environments/ci-aio.rst +++ b/doc/source/contributor/environments/ci-aio.rst @@ -29,7 +29,7 @@ Download the setup script: .. parsed-literal:: - wget https://raw.githubusercontent.com/stackhpc/stackhpc-kayobe-config/stackhpc/2024.1/etc/kayobe/environments/ci-aio/automated-setup.sh + wget https://raw.githubusercontent.com/stackhpc/stackhpc-kayobe-config/stackhpc/master/etc/kayobe/environments/ci-aio/automated-setup.sh Change the permissions on the script: @@ -52,9 +52,9 @@ following options: * ``BASE_PATH`` (default: ``~``) - Directory to deploy from. The directory must exist before running the script. -* ``KAYOBE_BRANCH`` (default: ``stackhpc/2024.1``) - The branch of Kayobe +* ``KAYOBE_BRANCH`` (default: ``stackhpc/master``) - The branch of Kayobe source code to use. -* ``KAYOBE_CONFIG_BRANCH`` (default: ``stackhpc/2024.1``) - The branch of +* ``KAYOBE_CONFIG_BRANCH`` (default: ``stackhpc/master``) - The branch of ``stackhpc-kayobe-config`` to use. * ``KAYOBE_AIO_LVM`` (default: ``true``) - Whether the image uses LVM. * ``KAYOBE_CONFIG_EDIT_PAUSE`` (default: ``false``) - Option to pause diff --git a/doc/source/contributor/package-updates.rst b/doc/source/contributor/package-updates.rst index 5469745c7..79dcb2494 100644 --- a/doc/source/contributor/package-updates.rst +++ b/doc/source/contributor/package-updates.rst @@ -7,13 +7,13 @@ This section describes the Release Train process of creating new package reposit Preparations ============ -1. Before building images, you should check for any outstanding PRs into the earliest supported release. Below are the links for the 2024.1 (Caracal) branches. +1. Before building images, you should check for any outstanding PRs into the earliest supported release. Below are the links for the Master branches. - kayobe-config: https://github.com/stackhpc/stackhpc-kayobe-config/pulls?q=is%3Apr+is%3Aopen+base%3Astackhpc%2F2024.1 + kayobe-config: https://github.com/stackhpc/stackhpc-kayobe-config/pulls?q=is%3Apr+is%3Aopen+base%3Astackhpc%2Fmaster - kolla: https://github.com/stackhpc/kolla/pulls?q=is%3Apr+is%3Aopen+base%3Astackhpc%2F2024.1 + kolla: https://github.com/stackhpc/kolla/pulls?q=is%3Apr+is%3Aopen+base%3Astackhpc%2Fmaster - kolla-ansible: https://github.com/stackhpc/kolla-ansible/pulls?q=is%3Apr+is%3Aopen+base%3Astackhpc%2F2024.1 + kolla-ansible: https://github.com/stackhpc/kolla-ansible/pulls?q=is%3Apr+is%3Aopen+base%3Astackhpc%2Fmaster You should also check any referenced source trees in etc/kayobe/kolla.yml. diff --git a/doc/source/contributor/testing-ci-automation.rst b/doc/source/contributor/testing-ci-automation.rst index c3d75f22a..925933520 100644 --- a/doc/source/contributor/testing-ci-automation.rst +++ b/doc/source/contributor/testing-ci-automation.rst @@ -113,7 +113,7 @@ job. The workflow performs the following high-level steps: #. Deploy a VM on an OpenStack cloud using the `aio - `_ + `_ Terraform configuration. #. Deploy OpenStack in the VM using Kayobe and the :doc:`ci-aio ` environment. If this is an upgrade job, the previous diff --git a/doc/source/operations/upgrading-openstack.rst b/doc/source/operations/upgrading-openstack.rst index be06d1191..7b980f9f5 100644 --- a/doc/source/operations/upgrading-openstack.rst +++ b/doc/source/operations/upgrading-openstack.rst @@ -35,178 +35,15 @@ Notable changes in the |current_release| Release There are many changes in the OpenStack |current_release| release described in the release notes for each project. Here are some notable ones. -Heat disabled by default ------------------------- +.. TODO Add notable changes -The Heat OpenStack service is no longer enabled by default. - -This behavior can be overridden manually: - -.. code-block:: yaml - :caption: ``kolla.yml`` - - kolla_enable_heat: true - -Wherever possible, Magnum deployments should be migrated to the CAPI Helm -driver. Instructions for enabling the driver can be found `here -<../configuration/magnum-capi.rst>`_. Enable the driver, recreate any clusters -using Heat, and disable the service. - -After the upgrade (so that alerts don't fire) you can remove Heat with the -following: - -.. code-block:: console - - kayobe overcloud host command run --command "rm /etc/kolla/haproxy/services.d/heat-api.cfg" -l network -b - kayobe overcloud host command run --command "rm /etc/kolla/haproxy/services.d/heat-api-cfn.cfg" -l network -b - - kayobe overcloud host command run --command "systemctl restart kolla-haproxy-container.service" -l network[0] -b - kayobe overcloud host command run --command "systemctl restart kolla-haproxy-container.service" -l network[1] -b - kayobe overcloud host command run --command "systemctl restart kolla-haproxy-container.service" -l network[2] -b - - kayobe overcloud host command run --command "systemctl stop kolla-heat_api-container.service kolla-heat_api_cfn-container.service kolla-heat_engine-container.service" -l controllers -b - kayobe overcloud host command run --command "systemctl disable kolla-heat_api-container.service kolla-heat_api_cfn-container.service kolla-heat_engine-container.service" -l controllers -b - kayobe overcloud host command run --command "rm /etc/systemd/system/kolla-heat_api-container.service" -l controllers -b - kayobe overcloud host command run --command "rm /etc/systemd/system/kolla-heat_api_cfn-container.service" -l controllers -b - kayobe overcloud host command run --command "rm /etc/systemd/system/kolla-heat_engine-container.service" -l controllers -b - - kayobe overcloud host command run --command "docker rm heat_api heat_api_cfn heat_engine" -l controllers - - kayobe overcloud host command run --command "rm -rf /etc/kolla/heat-api /etc/kolla/heat-api-cfn /etc/kolla/heat-engine" --limit controllers -b - -Then from the OpenStack CLI: - -.. code-block:: console - - openstack service delete heat - openstack user delete heat - openstack domain set --disable heat_user_domain - openstack domain delete heat_user_domain - openstack endpoint list --service heat -c ID -f value | xargs openstack endpoint delete - openstack endpoint list --service heat-cfn -c ID -f value | xargs openstack endpoint delete - -You can drop the ``heat`` database too, unless you want to keep historical content. - -.. code-block:: console - - docker exec -it mariadb mysql -u root -p - Enter the database password when prompted. - drop database heat; - -Designate sink disabled by default ----------------------------------- - -Designate sink is an optional Designate service which listens for event -notifications, primarily from Nova and Neutron. It is disabled by default (when -designate is enabled) in Caracal. It is not required for Designate to function. - -If you still wish to use it, you should set the flag manually: - -.. code-block:: yaml - :caption: ``kolla/globals.yml`` - - designate_enable_notifications_sink: true - -If you are using Designate and do not make this change, the Antelope -``designate-sink`` container will remain on the controllers after the upgrade. -It must be removed manually. - -Grafana Volume --------------- -The Grafana container volume is no longer used. If you wish to automatically -remove the old volume, set ``grafana_remove_old_volume`` to ``true`` in -``kolla/globals.yml``. Note that doing this will lose any plugins installed via -the CLI directly and not through Kolla. If you have previously installed -Grafana plugins via the Grafana UI or CLI, you must change to installing them -at image build time. The Grafana volume, which contains existing custom -plugins, will be automatically removed in the next release. - -Prometheus HAproxy Exporter ---------------------------- -Due to the change from using the ``prometheus-haproxy-exporter`` to using the -native support for Prometheus which is now built into HAProxy, metric names may -have been replaced and/or removed, and in some cases the metric names may have -remained the same but the labels may have changed. Alerts and dashboards may -also need to be updated to use the new metrics. Please review any configuration -that references the old metrics as this is not a backwards compatible change. - -Horizon configuration ---------------------- -The Horizon role has been reworked to the preferred ``local_settings.d`` -configuration model. Files ``local_settings`` and ``custom_local_settings`` -have been renamed to ``_9998-kolla-settings.py`` and -``_9999-custom-settings.py`` respectively. Users who use Horizon's custom -configuration must change the names of those files in -``etc/kolla/config/horizon`` as well. - -Neutron DNS Domain ------------------- -When Designate is enabled and the default Neutron DNS integration has not been -disabled, ``neutron_dns_domain`` must be configured manually in -``kolla/globals.yml``. - -The ``neutron_dns_domain`` must end with a period ``.`` e.g. ``example.com.``. -The domain set should be something that is not use anywhere else such as -``internal.compute.example.com.`` - -The Neutron DNS integration can be disabled by setting -``neutron_dns_integration: false`` in ``kolla/globals.yml`` - -Redis Default User ------------------- - -The ``redis_connection_string`` has changed the username used from ``admin`` -to ``default``. Whilst this does not have any negative impact on services -that utilise Redis it will feature prominently in any preview of the overcloud -configuration. - -AvailabilityZoneFilter removal ------------------------------- - -Support for the ``AvailabilityZoneFilter`` filter has been dropped in Nova. -Remove it from any Nova config files before upgrading. It will cause errors in -Caracal and halt the Nova scheduler. +Placeholder +----------- Known issues ============ -* Due to an incorrect default value NGS will attempt to use v3alpha for the api - path when communicating with etcd3. This isn't possible as in Caracal etcd is - running a newer version that has dropped support for v3alpha. You can work - around this in custom config, see the SMS PR for an example: - https://github.com/stackhpc/smslab-kayobe-config/pull/354 - -* Due to a `security-related change in the GRUB package on Rocky Linux 9 - `__, the operating - system can become unbootable (boot will stop at a ``grub>`` prompt). Remove - the ``--root-dev-only`` option from ``/boot/efi/EFI/rocky/grub.cfg`` after - applying package updates. This will happen automatically as a post hook when - running the ``kayobe overcloud host package update`` command. - -* After upgrading OpenSearch to the latest 2023.1 container image, we have seen - cluster routing allocation be disabled on some systems. See bug for details: - https://bugs.launchpad.net/kolla-ansible/+bug/2085943. - This will cause the "Perform a flush" handler to fail during the 2024.1 - OpenSearch upgrade. To workaround this, you can run the following PUT request - to enable allocation again: - - .. code-block:: console - - curl -X PUT "https://:9200/_cluster/settings?pretty" -H 'Content-Type: application/json' -d '{ "transient" : { "cluster.routing.allocation.enable" : "all" } } ' - -* Cinder database migrations fail during the upgrade process when the - ``use_quota`` column is set to ``NULL``, which can be the case on deleted - volumes and snapshots if OpenStack has been in operation for several - releases. See `Launchpad bug 2070475 - `__ for details. Until the - `database migrations are fixed - `__, the data can be - fixed with the following MySQL queries: - - .. code-block:: mysql - - UPDATE volumes SET use_quota = 1 WHERE use_quota IS NULL AND deleted_at IS NOT NULL; - UPDATE snapshots SET use_quota = 1 WHERE use_quota IS NULL AND deleted_at IS NOT NULL; +* None so far! Security baseline ================= diff --git a/doc/source/release-notes.rst b/doc/source/release-notes.rst index efff02ca4..ebafdcb6d 100644 --- a/doc/source/release-notes.rst +++ b/doc/source/release-notes.rst @@ -1,6 +1,6 @@ -==================================== -2024.1 Caracal Series Release Notes -==================================== +=========================== +Master Series Release Notes +=========================== .. release-notes:: - :branch: stackhpc/2024.1 + :branch: stackhpc/master diff --git a/doc/source/usage.rst b/doc/source/usage.rst index fe83d9157..0760e0dd9 100644 --- a/doc/source/usage.rst +++ b/doc/source/usage.rst @@ -16,7 +16,7 @@ when used with Kayobe's :kayobe-doc:`multiple environments ` feature. This configuration should be consumed using the `StackHPC Kayobe fork -`__, which includes +`__, which includes backported support for Ansible collections. New deployments diff --git a/etc/kayobe/environments/aufn-ceph/a-universe-from-nothing.sh b/etc/kayobe/environments/aufn-ceph/a-universe-from-nothing.sh index f8014b146..86a294bd9 100755 --- a/etc/kayobe/environments/aufn-ceph/a-universe-from-nothing.sh +++ b/etc/kayobe/environments/aufn-ceph/a-universe-from-nothing.sh @@ -10,8 +10,8 @@ set -eu BASE_PATH=~ -KAYOBE_BRANCH=stackhpc/2024.1 -KAYOBE_CONFIG_BRANCH=stackhpc/2024.1 +KAYOBE_BRANCH=stackhpc/master +KAYOBE_CONFIG_BRANCH=stackhpc/master KAYOBE_ENVIRONMENT=aufn-ceph # Install git and tmux. diff --git a/etc/kayobe/environments/ci-aio/automated-setup.sh b/etc/kayobe/environments/ci-aio/automated-setup.sh index cbb1e814f..fe7dfae7f 100644 --- a/etc/kayobe/environments/ci-aio/automated-setup.sh +++ b/etc/kayobe/environments/ci-aio/automated-setup.sh @@ -3,8 +3,8 @@ set -eux BASE_PATH=~ -KAYOBE_BRANCH=stackhpc/2024.1 -KAYOBE_CONFIG_BRANCH=stackhpc/2024.1 +KAYOBE_BRANCH=stackhpc/master +KAYOBE_CONFIG_BRANCH=stackhpc/master KAYOBE_AIO_LVM=true KAYOBE_CONFIG_EDIT_PAUSE=false AIO_RUN_TEMPEST=false diff --git a/etc/kayobe/kolla-image-tags.yml b/etc/kayobe/kolla-image-tags.yml index b36d23798..186f45fd2 100644 --- a/etc/kayobe/kolla-image-tags.yml +++ b/etc/kayobe/kolla-image-tags.yml @@ -5,17 +5,5 @@ # TODO: Build real master images kolla_image_tags: openstack: - rocky-9: 2024.1-rocky-9-20241218T141751 - ubuntu-noble: 2024.1-ubuntu-noble-20241218T141809 - ironic_prometheus_exporter: - rocky-9: 2024.1-rocky-9-20250124T081816 - ubuntu-noble: 2024.1-ubuntu-noble-20250124T081816 - magnum: - rocky-9: 2024.1-rocky-9-20250102T094625 - ubuntu-noble: 2024.1-ubuntu-noble-20250102T094625 - nova_compute: - rocky-9: 2024.1-rocky-9-20250127T211632 - ubuntu-noble: 2024.1-ubuntu-noble-20250127T211632 - neutron: - rocky-9: 2024.1-rocky-9-20250129T143601 - ubuntu-noble: 2024.1-ubuntu-noble-20250129T143601 + rocky-9: master-rocky-9-placeholder + ubuntu-noble: master-ubuntu-noble-placeholder diff --git a/releasenotes/source/index.rst b/releasenotes/source/index.rst index 295e4b525..f0b9571e5 100644 --- a/releasenotes/source/index.rst +++ b/releasenotes/source/index.rst @@ -7,6 +7,7 @@ Contents .. toctree:: :maxdepth: 2 + master 2024.1 2023.1 zed diff --git a/releasenotes/source/master.rst b/releasenotes/source/master.rst new file mode 100644 index 000000000..ebafdcb6d --- /dev/null +++ b/releasenotes/source/master.rst @@ -0,0 +1,6 @@ +=========================== +Master Series Release Notes +=========================== + +.. release-notes:: + :branch: stackhpc/master diff --git a/requirements.txt b/requirements.txt index aaf998164..1ef8d5272 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,3 @@ -kayobe@git+https://github.com/stackhpc/kayobe@stackhpc/2024.1 +kayobe@git+https://github.com/stackhpc/kayobe@stackhpc/master ansible-modules-hashivault>=5.2.1 jmespath diff --git a/tox.ini b/tox.ini index e63ac8cd3..5902d8f92 100644 --- a/tox.ini +++ b/tox.ini @@ -6,7 +6,7 @@ skipsdist = True [testenv] install_command = pip install {opts} {packages} deps = - -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2024.1} + -c{env:TOX_CONSTRAINTS_FILE:https://raw.githubusercontent.com/stackhpc/requirements/refs/heads/master/upper-constraints.txt} -r{toxinidir}/test-requirements.txt [testenv:pep8] @@ -20,7 +20,7 @@ commands = allowlist_externals = rm skip_install = true deps = - -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2024.1} + -c{env:TOX_CONSTRAINTS_FILE:https://raw.githubusercontent.com/stackhpc/requirements/refs/heads/master/upper-constraints.txt} -r{toxinidir}/releasenotes/requirements.txt commands = rm -rf releasenotes/build/html @@ -30,7 +30,7 @@ commands = allowlist_externals = rm skip_install = true deps = - -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2024.1} + -c{env:TOX_CONSTRAINTS_FILE:https://raw.githubusercontent.com/stackhpc/requirements/refs/heads/master/upper-constraints.txt} -r{toxinidir}/doc/requirements.txt commands = rm -rf doc/build/html From 148730d5534f1ddd06e1adefb852f4edc59e16e3 Mon Sep 17 00:00:00 2001 From: Alex-Welsh Date: Mon, 3 Feb 2025 15:05:20 +0000 Subject: [PATCH 2/5] sed s/caracal/master --- .../contributor/environments/aufn-ceph.rst | 2 +- .../contributor/environments/ci-builder.rst | 2 +- .../contributor/environments/ci-multinode.rst | 2 +- doc/source/contributor/package-updates.rst | 2 +- doc/source/operations/upgrading-openstack.rst | 60 ++----------------- .../environments/ci-aio/stackhpc-ci.yml | 1 - .../environments/ci-builder/stackhpc-ci.yml | 1 - .../environments/ci-multinode/stackhpc-ci.yml | 1 - etc/kayobe/kolla.yml | 9 ++- etc/kayobe/openstack.yml | 4 ++ etc/kayobe/pulp-repo-versions.yml | 1 - etc/kayobe/pulp.yml | 6 -- etc/kayobe/stackhpc.yml | 10 ++-- 13 files changed, 26 insertions(+), 75 deletions(-) diff --git a/doc/source/contributor/environments/aufn-ceph.rst b/doc/source/contributor/environments/aufn-ceph.rst index 26e7fa7c9..da682d868 100644 --- a/doc/source/contributor/environments/aufn-ceph.rst +++ b/doc/source/contributor/environments/aufn-ceph.rst @@ -9,7 +9,7 @@ This environment creates a Universe-from-nothing_-style deployment of Kayobe con .. warning:: This guide was written for the Yoga release and has not been validated for - Caracal. Proceed with caution. + Master. Proceed with caution. Prerequisites ============= diff --git a/doc/source/contributor/environments/ci-builder.rst b/doc/source/contributor/environments/ci-builder.rst index ec5bbb779..9c00d161a 100644 --- a/doc/source/contributor/environments/ci-builder.rst +++ b/doc/source/contributor/environments/ci-builder.rst @@ -9,7 +9,7 @@ and pushed there once built. .. warning:: This guide was written for the Yoga release and has not been validated for - Caracal. Proceed with caution. + Master. Proceed with caution. In general it is preferable to use the `container image build CI workflow `_ diff --git a/doc/source/contributor/environments/ci-multinode.rst b/doc/source/contributor/environments/ci-multinode.rst index 165ef5120..af318d7fa 100644 --- a/doc/source/contributor/environments/ci-multinode.rst +++ b/doc/source/contributor/environments/ci-multinode.rst @@ -5,7 +5,7 @@ Multinode Test Environment .. warning:: This guide was written for the Yoga release and has not been validated for - Caracal. Proceed with caution. + Master. Proceed with caution. The ``ci-multinode`` environment provides a Kayobe configuration for multi-node clouds to be used for test and development purposes. It is designed to be used diff --git a/doc/source/contributor/package-updates.rst b/doc/source/contributor/package-updates.rst index 79dcb2494..e586641ac 100644 --- a/doc/source/contributor/package-updates.rst +++ b/doc/source/contributor/package-updates.rst @@ -165,7 +165,7 @@ Upgrading OpenStack to the next release in a multinode environment .. warning:: This guide was written for the Wallaby release and has not been validated - for Caracal. Proceed with caution. + for master. Proceed with caution. As this is not a full production system, only a reduced number of steps need to be followed to upgrade to a new release. Below describes these steps, with ``stackhpc/wallaby`` as the starting branch: diff --git a/doc/source/operations/upgrading-openstack.rst b/doc/source/operations/upgrading-openstack.rst index 7b980f9f5..f2bdb5a16 100644 --- a/doc/source/operations/upgrading-openstack.rst +++ b/doc/source/operations/upgrading-openstack.rst @@ -48,7 +48,7 @@ Known issues Security baseline ================= -As part of the Caracal release we are looking to improve the security +As part of the Master release we are looking to improve the security baseline of StackHPC OpenStack deployments. If any of the following have not been done, they should be completed before the upgrade begins. @@ -84,61 +84,13 @@ suggestions: * Update the deployment to use the latest |previous_release| images and configuration. -RabbitMQ SLURP upgrade +Ubuntu Noble migration ---------------------- -.. note:: - The upgrade is reliant on recent changes. Make sure you have updated to - the latest version of kolla ansible and deployed the latest kolla containers - before proceeding. - -Because this is a SLURP upgrade, RabbitMQ must be upgraded manually from 3.11, -to 3.12, then to 3.13 on Antelope before the Caracal upgrade. This upgrade -should not cause an API outage (though it should still be considered "at -risk"). - -Some errors have been observed in testing when the upgrades are performed -back-to-back. A 200s delay eliminates this issue. On particularly large or slow -deployments, consider increasing this timeout. - -Additionally errors have been observed at sites with OVS networking where after -the upgrade, tenant networking is broken and requires a reset of RabbitMQ. This -can be done by running the rabbitmq-reset playbook. - -.. code-block:: bash - - kayobe overcloud service configuration generate --node-config-dir /tmp/ignore -kt none - kayobe kolla ansible run "rabbitmq-upgrade 3.12" - sleep 200 - kayobe kolla ansible run "rabbitmq-upgrade 3.13" - -RabbitMQ quorum queues ----------------------- - -In Caracal, quorum queues are enabled by default for RabbitMQ. This is -different to Antelope which used HA queues. Before upgrading to Caracal, it is -strongly recommended that you migrate from HA to quorum queues. The migration -is automated using a script. - -.. warning:: - This migration will stop all services using RabbitMQ and cause an - extended API outage while queues are migrated. It should only be - performed in a pre-agreed maintenance window. - -Set the following variables in your kolla globals file (i.e. -``$KAYOBE_CONFIG_PATH/kolla/globals.yml`` or -``$KAYOBE_CONFIG_PATH/environments/$KAYOBE_ENVIRONMENT/kolla/globals.yml``): - -.. code-block:: yaml - - om_enable_rabbitmq_high_availability: false - om_enable_rabbitmq_quorum_queues: true - -Then execute the migration script: - -.. code-block:: bash - - $KAYOBE_CONFIG_PATH/../../tools/rabbitmq-quorum-migration.sh +Ubuntu Jammy support has been removed from the 2025.1 release onwards. Hosts +must be migrated to Ubuntu 24.04 before upgrading OpenStack services. The +upgrade process is currently a work in progress. +.. TODO: Add link to another page describing how to migrate Preparation =========== diff --git a/etc/kayobe/environments/ci-aio/stackhpc-ci.yml b/etc/kayobe/environments/ci-aio/stackhpc-ci.yml index a4c26f12c..790daecea 100644 --- a/etc/kayobe/environments/ci-aio/stackhpc-ci.yml +++ b/etc/kayobe/environments/ci-aio/stackhpc-ci.yml @@ -30,7 +30,6 @@ stackhpc_repo_ubuntu_noble_security_version: "{{ stackhpc_pulp_repo_ubuntu_noble stackhpc_repo_ubuntu_cloud_archive_version: "{{ stackhpc_pulp_repo_ubuntu_cloud_archive_version }}" stackhpc_repo_docker_ce_ubuntu_noble_version: "{{ stackhpc_pulp_repo_docker_ce_ubuntu_noble_version }}" stackhpc_repo_centos_stream_9_nfv_openvswitch_version: "{{ stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version }}" -stackhpc_repo_centos_stream_9_openstack_caracal_version: "{{ stackhpc_pulp_repo_centos_stream_9_openstack_caracal_version }}" stackhpc_repo_centos_stream_9_opstools_version: "{{ stackhpc_pulp_repo_centos_stream_9_opstools_version }}" stackhpc_repo_centos_stream_9_storage_ceph_squid_version: "{{ stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_version }}" stackhpc_repo_centos_stream_9_docker_version: "{{ stackhpc_pulp_repo_centos_stream_9_docker_version }}" diff --git a/etc/kayobe/environments/ci-builder/stackhpc-ci.yml b/etc/kayobe/environments/ci-builder/stackhpc-ci.yml index a8c524fff..bdaf32602 100644 --- a/etc/kayobe/environments/ci-builder/stackhpc-ci.yml +++ b/etc/kayobe/environments/ci-builder/stackhpc-ci.yml @@ -56,7 +56,6 @@ stackhpc_repo_ubuntu_noble_security_version: "{{ stackhpc_pulp_repo_ubuntu_noble stackhpc_repo_ubuntu_cloud_archive_version: "{{ stackhpc_pulp_repo_ubuntu_cloud_archive_version }}" stackhpc_repo_docker_ce_ubuntu_noble_version: "{{ stackhpc_pulp_repo_docker_ce_ubuntu_noble_version }}" stackhpc_repo_centos_stream_9_nfv_openvswitch_version: "{{ stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version }}" -stackhpc_repo_centos_stream_9_openstack_caracal_version: "{{ stackhpc_pulp_repo_centos_stream_9_openstack_caracal_version }}" stackhpc_repo_centos_stream_9_opstools_version: "{{ stackhpc_pulp_repo_centos_stream_9_opstools_version }}" stackhpc_repo_centos_stream_9_storage_ceph_squid_version: "{{ stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_version }}" stackhpc_repo_centos_stream_9_docker_version: "{{ stackhpc_pulp_repo_centos_stream_9_docker_version }}" diff --git a/etc/kayobe/environments/ci-multinode/stackhpc-ci.yml b/etc/kayobe/environments/ci-multinode/stackhpc-ci.yml index eaabaec2d..84dc5bc90 100644 --- a/etc/kayobe/environments/ci-multinode/stackhpc-ci.yml +++ b/etc/kayobe/environments/ci-multinode/stackhpc-ci.yml @@ -30,7 +30,6 @@ stackhpc_repo_ubuntu_noble_security_version: "{{ stackhpc_pulp_repo_ubuntu_noble stackhpc_repo_ubuntu_cloud_archive_version: "{{ stackhpc_pulp_repo_ubuntu_cloud_archive_version }}" stackhpc_repo_docker_ce_ubuntu_noble_version: "{{ stackhpc_pulp_repo_docker_ce_ubuntu_noble_version }}" stackhpc_repo_centos_stream_9_nfv_openvswitch_version: "{{ stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version }}" -stackhpc_repo_centos_stream_9_openstack_caracal_version: "{{ stackhpc_pulp_repo_centos_stream_9_openstack_caracal_version }}" stackhpc_repo_centos_stream_9_opstools_version: "{{ stackhpc_pulp_repo_centos_stream_9_opstools_version }}" stackhpc_repo_centos_stream_9_storage_ceph_squid_version: "{{ stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_version }}" stackhpc_repo_centos_stream_9_docker_version: "{{ stackhpc_pulp_repo_centos_stream_9_docker_version }}" diff --git a/etc/kayobe/kolla.yml b/etc/kayobe/kolla.yml index f99d49d35..a1ec7150e 100644 --- a/etc/kayobe/kolla.yml +++ b/etc/kayobe/kolla.yml @@ -183,9 +183,12 @@ stackhpc_rocky_9_additional_repos: - url: "{{ stackhpc_repo_centos_stream_9_nfv_openvswitch_url }}" file: "CentOS-NFV-OpenvSwitch.repo" tag: "centos-nfv-openvswitch" - - url: "{{ stackhpc_repo_centos_stream_9_openstack_caracal_url }}" - file: "CentOS-OpenStack-caracal.repo" - tag: "centos-openstack-caracal" + - url: "{{ stackhpc_repo_delorian_master_testing_url }}" + file: "DeLorean.repo" + tag: "delorean-master-testing" + - url: "{{ stackhpc_repo_delorian_master_build_deps_url }}" + file: "DeLorean.repo" + tag: "delorean-master-build-deps" - url: "{{ stackhpc_repo_centos_stream_9_opstools_url }}" file: "CentOS-OpsTools.repo" tag: "centos-opstools" diff --git a/etc/kayobe/openstack.yml b/etc/kayobe/openstack.yml index 1acfd0756..d1aa18adf 100644 --- a/etc/kayobe/openstack.yml +++ b/etc/kayobe/openstack.yml @@ -5,6 +5,10 @@ # Name of the current OpenStack release. Default is "master". #openstack_release: +# Codename of the current OpenStack release. +# NOTE(upgrade): Update to current release codename. +openstack_release_codename: "epoxy" + # Name of the current OpenStack branch. Default is "master". #openstack_branch: diff --git a/etc/kayobe/pulp-repo-versions.yml b/etc/kayobe/pulp-repo-versions.yml index 8caa6412c..214f50ea5 100644 --- a/etc/kayobe/pulp-repo-versions.yml +++ b/etc/kayobe/pulp-repo-versions.yml @@ -3,7 +3,6 @@ # https://github.com/stackhpc/stackhpc-release-train/actions/workflows/package-update-kayobe.yml stackhpc_pulp_repo_centos_stream_9_docker_version: 20241210T000909 stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version: 20241214T012909 -stackhpc_pulp_repo_centos_stream_9_openstack_caracal_version: 20241212T022636 stackhpc_pulp_repo_centos_stream_9_opstools_version: 20231213T031318 stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_version: 20240923T233036 stackhpc_pulp_repo_docker_ce_ubuntu_noble_version: 20241218T154614 diff --git a/etc/kayobe/pulp.yml b/etc/kayobe/pulp.yml index 81f462b8e..b72be9998 100644 --- a/etc/kayobe/pulp.yml +++ b/etc/kayobe/pulp.yml @@ -285,12 +285,6 @@ stackhpc_pulp_rpm_repos: base_path: "centos/9-stream/nfv/x86_64/openvswitch-2/" required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool }}" - - name: CentOS Stream 9 - OpenStack Caracal - url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/cloud/x86_64/openstack-caracal/{{ stackhpc_pulp_repo_centos_stream_9_openstack_caracal_version }}" - distribution_name: "centos-stream-9-openstack-caracal-" - base_path: "centos/9-stream/cloud/x86_64/openstack-caracal/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool }}" - - name: CentOS 9 - OpsTools - collectd url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/opstools/x86_64/collectd-5/{{ stackhpc_pulp_repo_centos_stream_9_opstools_version }}" distribution_name: "centos-9-opstools-collectd-" diff --git a/etc/kayobe/stackhpc.yml b/etc/kayobe/stackhpc.yml index 944842618..dbab0da3f 100644 --- a/etc/kayobe/stackhpc.yml +++ b/etc/kayobe/stackhpc.yml @@ -64,10 +64,6 @@ stackhpc_repo_rhel9_rabbitmq_server_version: "{{ stackhpc_repo_distribution }}" stackhpc_repo_centos_stream_9_nfv_openvswitch_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/9-stream/nfv/x86_64/openvswitch-2/{{ stackhpc_repo_centos_stream_9_nfv_openvswitch_version }}" stackhpc_repo_centos_stream_9_nfv_openvswitch_version: "{{ stackhpc_repo_distribution }}" -# CentOS Stream 9 - OpenStack Caracal -stackhpc_repo_centos_stream_9_openstack_caracal_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/9-stream/cloud/x86_64/openstack-caracal/{{ stackhpc_repo_centos_stream_9_openstack_caracal_version }}" -stackhpc_repo_centos_stream_9_openstack_caracal_version: "{{ stackhpc_repo_distribution }}" - # CentOS Stream 9 - OpsTools - collectd stackhpc_repo_centos_stream_9_opstools_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/9-stream/opstools/x86_64/collectd-5/{{ stackhpc_repo_centos_stream_9_opstools_version }}" stackhpc_repo_centos_stream_9_opstools_version: "{{ stackhpc_repo_distribution }}" @@ -132,6 +128,12 @@ stackhpc_repo_epel_9_version: "{{ stackhpc_repo_distribution }}" stackhpc_repo_elrepo_9_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/elrepo/elrepo/el9/x86_64/{{ stackhpc_repo_elrepo_9_version }}" stackhpc_repo_elrepo_9_version: "{{ stackhpc_repo_distribution }}" +# DeLorean Master testing +stackhpc_repo_delorian_master_testing_url: "https://trunk.rdoproject.org/centos9-master/deps/latest/" + +# DeLorean Master build deps +stackhpc_repo_delorian_master_build_deps_url: "https://trunk.rdoproject.org/centos9-master/build-deps/latest/" + ############################################################################### # Sources From d7289e6cf08ba23010e0b4de8954237adc6299c4 Mon Sep 17 00:00:00 2001 From: Alex-Welsh Date: Mon, 3 Feb 2025 15:56:26 +0000 Subject: [PATCH 3/5] Update release tag regex --- releasenotes/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releasenotes/config.yaml b/releasenotes/config.yaml index a5b984a6b..da01baf76 100644 --- a/releasenotes/config.yaml +++ b/releasenotes/config.yaml @@ -1,4 +1,4 @@ --- # NOTE(upgrade): This needs to be updated to the current release's major version. -release_tag_re: stackhpc/16\.\d+\.\d+\.\d +release_tag_re: stackhpc/18\.\d+\.\d+\.\d ignore_null_merges: false From 87661d6331edeb86209b9266229b7cfa48ebc78b Mon Sep 17 00:00:00 2001 From: Alex-Welsh Date: Mon, 3 Feb 2025 16:14:11 +0000 Subject: [PATCH 4/5] Bump ansible-lint python requirements --- .github/workflows/stackhpc-pull-request.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/stackhpc-pull-request.yml b/.github/workflows/stackhpc-pull-request.yml index 7f9ae395c..b5cf19c06 100644 --- a/.github/workflows/stackhpc-pull-request.yml +++ b/.github/workflows/stackhpc-pull-request.yml @@ -69,9 +69,9 @@ jobs: matrix: include: # NOTE(upgrade): Keep these in sync with Kayobe's supported Ansible and Python versions (see release notes). - - ansible: "2.16" + - ansible: "2.17" python: "3.12" - - ansible: "2.15" + - ansible: "2.16" python: "3.10" name: Ansible ${{ matrix.ansible }} lint with Python ${{ matrix.python }} if: github.repository == 'stackhpc/stackhpc-kayobe-config' From 10aa81357c624b692f4ec3bac8ea99dd9da3ef23 Mon Sep 17 00:00:00 2001 From: Alex-Welsh Date: Mon, 3 Feb 2025 16:16:53 +0000 Subject: [PATCH 5/5] Update AIO workflow previous release to 2024.1 --- .github/workflows/stackhpc-all-in-one.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/stackhpc-all-in-one.yml b/.github/workflows/stackhpc-all-in-one.yml index 89d097f2b..0d6e91dfe 100644 --- a/.github/workflows/stackhpc-all-in-one.yml +++ b/.github/workflows/stackhpc-all-in-one.yml @@ -93,9 +93,9 @@ jobs: KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }} KAYOBE_IMAGE: ${{ inputs.kayobe_image }} # NOTE(upgrade): Reference the PREVIOUS release here. - PREVIOUS_KAYOBE_IMAGE: ghcr.io/stackhpc/stackhpc-kayobe-config:stackhpc-2023.1 + PREVIOUS_KAYOBE_IMAGE: ghcr.io/stackhpc/stackhpc-kayobe-config:stackhpc-2024.1 # NOTE(upgrade): Reference the PREVIOUS release branch here. - PREVIOUS_BRANCH: stackhpc/2023.1 + PREVIOUS_BRANCH: stackhpc/2024.1 steps: - name: Install Package uses: ConorMacBride/install-package@main