From 380cb58435118bc6a5963145275f56a4784e4890 Mon Sep 17 00:00:00 2001 From: Elisamara Aoki Goncalves Date: Thu, 11 Apr 2024 13:48:42 +0000 Subject: [PATCH] Multi-version application support for extended k8s version upgrades Add steps for pre-application-update and post-application-update Depends-On: https://review.opendev.org/c/starlingx/config/+/909172 Story: 2010929 Task: 49855 Change-Id: I42ffc973e3ddb46dccc8acba4b4a8049b32f1eb9 Signed-off-by: Elisamara Aoki Goncalves --- .../manual-kubernetes-components-upgrade.rst | 19 ++++++++++++++--- ...version-upgrade-in-aio-sx-13e05ba19840.rst | 21 +++++++++++++++---- 2 files changed, 33 insertions(+), 7 deletions(-) diff --git a/doc/source/updates/kubernetes/manual-kubernetes-components-upgrade.rst b/doc/source/updates/kubernetes/manual-kubernetes-components-upgrade.rst index d38618b89..3002b8765 100644 --- a/doc/source/updates/kubernetes/manual-kubernetes-components-upgrade.rst +++ b/doc/source/updates/kubernetes/manual-kubernetes-components-upgrade.rst @@ -160,9 +160,9 @@ and upgrade various systems. +--------------+--------------------------------------+ | from_version | v1.21.8 | | to_version | v1.22.5 | - | state | upgrade-started | + | state | upgrade-started | +--------------+--------------------------------------+ - + The upgrade process checks the *applied*/*available* updates, the upgrade path, the health of the system, the installed applications compatibility and @@ -173,6 +173,12 @@ and upgrade various systems. upgrade process to ignore non-management-affecting alarms. Kubernetes cannot be upgraded if there are management-affecting alarms. +#. Update all applications that have the ``timing: pre`` metadata setting. + + .. code-block:: none + + ~(keystone_admin)]$ system pre-application-update + #. Download the Kubernetes images. For example: @@ -242,7 +248,7 @@ and upgrade various systems. | status | upgrading-control-plane | | target_version | v1.22.5 | +-----------------------+-------------------------+ - + You can upgrade either controller first. The state *upgraded-first-master* will be entered when the first control @@ -410,6 +416,13 @@ and upgrade various systems. | updated_at | 2023-06-26T19:06:47.515747+00:00 | +--------------+--------------------------------------+ +#. |Optional| Update all applications that have the ``timing: post`` metadata + setting. + + .. code-block:: none + + ~(keystone_admin)]$ system post-application-update + #. Remove the alarm 900.007 (Kubernetes upgrade in progress) if it is still running after the upgrade. diff --git a/doc/source/updates/kubernetes/manual-kubernetes-multi-version-upgrade-in-aio-sx-13e05ba19840.rst b/doc/source/updates/kubernetes/manual-kubernetes-multi-version-upgrade-in-aio-sx-13e05ba19840.rst index 00f292813..2ea0d2cb2 100644 --- a/doc/source/updates/kubernetes/manual-kubernetes-multi-version-upgrade-in-aio-sx-13e05ba19840.rst +++ b/doc/source/updates/kubernetes/manual-kubernetes-multi-version-upgrade-in-aio-sx-13e05ba19840.rst @@ -131,7 +131,7 @@ system. This feature is not supported in the system which is not |AIO-SX|. +--------------+--------------------------------------+ | from_version | v1.21.8 | | to_version | v1.24.4 | - | state | upgrade-started | + | state | upgrade-started | +--------------+--------------------------------------+ The upgrade process checks the applied/available updates, the upgrade @@ -161,6 +161,12 @@ system. This feature is not supported in the system which is not |AIO-SX|. | updated_at | None | +--------------+--------------------------------------+ +#. Update all applications that have the ``timing: pre`` metadata setting. + + .. code-block:: none + + ~(keystone_admin)]$ system pre-application-update + #. Confirm that the download has completed. .. code-block:: none @@ -276,7 +282,7 @@ system. This feature is not supported in the system which is not |AIO-SX|. ~(keystone_admin)]$ system kube-host-upgrade-list +----+---------------+------------+----------------+-----------------------+-----------------+--------------+ - | id | hostname | personality| target_version | control_plane_version | kubelet_version | status | + | id | hostname | personality| target_version | control_plane_version | kubelet_version | status | +----+---------------+------------+----------------+-----------------------+-----------------+--------------+ | 1 | controller-0 | controller | v1.22.5 | v1.22.5 | v1.21.8 | None | +----+---------------+---+--------+----------------+-----------------------+-----------------+--------------+ @@ -304,7 +310,7 @@ system. This feature is not supported in the system which is not |AIO-SX|. ~(keystone_admin)]$ system kube-host-upgrade-list +----+---------------+------------+----------------+-----------------------+-----------------+------------------+ - | id | hostname | personality| target_version | control_plane_version | kubelet_version | status | + | id | hostname | personality| target_version | control_plane_version | kubelet_version | status | +----+---------------+------------+----------------+-----------------------+-----------------+------------------+ | 1 | controller-0 | controller | v1.22.5 | v1.22.5 | v1.22.5 | upgraded-kubelet | +----+---------------+---+--------+----------------+-----------------------+-----------------+------------------+ @@ -370,6 +376,13 @@ system. This feature is not supported in the system which is not |AIO-SX|. | updated_at | 2023-08-24T02:55:18.122620+00:00 | +--------------+--------------------------------------+ +#. |Optional| Update all applications that have the ``timing: post`` metadata + setting. + + .. code-block:: none + + ~(keystone_admin)]$ system post-application-update + #. Remove the alarm 900.007 (Kubernetes upgrade in progress) if it is still running after the upgrade. @@ -418,5 +431,5 @@ To check the status of the abort operation, run the following command: - The upgrade abort operation reverts all the Kubernetes version upgrades and shows the same state the Kubernetes was in before the upgrade started. - + - Once the Kubernetes upgrade is completed, it cannot be aborted.