HCL-TECH-SOFTWARE / connections-automation

Deployment and upgrade automation scripts for HCL Connections 7.0 based on Ansible
Apache License 2.0
17 stars 31 forks source link

Kubernetes upgrade from CNX 7 to 8 #317

Closed stoeps13 closed 8 months ago

stoeps13 commented 9 months ago

Hi, today I tried to update my Connections 7 environment, that it uses the CNX 8 containers from harbor.

I assumed that I just add the new variables for the docker registry user and the updated Kubernetes version.

Sadly, the upgrade fails because the kubernetes-upgrade role just tries to use the binaries of the version set in environments and does a kubeadm upgrade, but CNX 7 used 1.21 and 8 uses 1.27 now. So the upgrade process would be 1.21 → 1.22 → 1.23 → 1.24 → 1.25 → 1.26 → 1.27 or uninstall Kubernetes (destroy the cluster) and deploy the new version. But this is not built in or documented as far as I see.

What's the recommended way to do this? The kb doc on using Harbor images with CNX 7 just points to the Connections 8 documentation.

Could you build a playbook for a CNX 7 to CNX 8 upgrade, or CNX 7 → CNX 7 with Harbor → CNX 8, please?

Regards Christoph

sabrina-yee commented 9 months ago

Hi @stoeps13, yes kubernetes-upgrade playbook needs to be run iteratively to upgrade across versions. It's mentioned here https://github.com/HCL-TECH-SOFTWARE/connections-automation/blob/main/documentation/howtos/connections_upgrade_to_8.x.md#preparation-if-upgrading-to-kubernetes-125 but it's applicable not limited to v1.25. We'll adjust the title and wording.

stoeps13 commented 9 months ago

But running the playbook 7 or 8 times makes no sense and the playbook does not check the difference from actual installed version against target.

It would be easy to loop through all versions between installed and update_version.