2. Upgrade

Note

Hub versions 1.18+ have additional requirements

If an upgrade is being performed from a version < 1.18 please note changes in the Installation and Upgrade guides

Ensure to review the Product Interoperability Matrix and align software versions accordingly.

2.1. Before you start

Before upgrading, you must wait for any pending or active jobs to complete, otherwise they may be lost or present an incorrect future state.

Scheduled workflows must be temporarily disabled prior to upgrading to prevent new jobs being submitted during the upgrade process.

2.2. Backup Workflows

Ngenea Hub ships with some default workflows. New releases may make changes to these workflows, so any customisations to them may be lost during upgrade. For safety, workflows should be backed-up before upgrading.

The easiest way to backup workflows is using ngclient

ngclient workflows list > workflows_backup.json

See NGCLIENT-WORKFLOWS for more information.

2.3. Stop Services

Note

Hub versions 2.1+ have additional requirements

When upgrading Hub 2.1+, the additional service ngenea-worker-frontend is required to be actioned

First, shutdown Ngenea Worker on all nodes

systemctl stop ngenea-worker

Note that any Ngenea Worker packages pre-1.12.0 will use the older syntax:

systemctl stop ngenea-worker@SITENAME

Then shutdown Ngenea Hub

systemctl stop ngeneahub
systemctl stop ngeneahub-frontend

Warning

Not stopping the workers before upgrading may result in jobs being stuck as PENDING. If this happens, restarting the workers using systemctl restart ngenea-worker will allow jobs to start running again.

2.4. Upgrade Packages

Download the latest RPMs from the Download page.

Upgrade Ngenea Hub

yum upgrade ngenea-hub-<version>.rpm

As with Installation, for offline situations, the Ngenea Hub base and image rpms can be upgraded with

rpm -Uvh ngenea-hub-<version>.rpm ngenea-hub-images-<version>.rpm

Upgrade Ngenea Worker on all nodes

yum upgrade ngenea-worker-<version>.rpm

2.5. Upgrade Configurations

Warning

If upgrading from Ngenea Hub version 1.17 or older, you must convert worker configuration to 1.18+ format. Please refer to the appropriate worker configuration and worker join steps as described in Ngenea Worker. Installation of the worker is not required as this has been achieved in the prior Upgrade Packages step.

2.6. Restart Services

First, startup Ngenea Hub

systemctl start ngeneahub
systemctl start ngeneahub-frontend

Then start Ngenea Worker on all nodes

systemctl start ngenea-worker

If any scheduled workflows were disabled, they can now safely be re-enabled.

2.7. Validation

Check the status of the Ngenea Hub service with:

ngeneahubctl status
systemctl status ngeneahub-frontend

Check the status of Ngenea Worker service with

systemctl status ngenea-worker

2.8. Restoring Workflows

Check the workflows post-update. If there are any issue or inconsistencies with the upgraded workflows, they can be restored from the backup created pre-upgrade. This is also done using ngclient.

Any workflow which is missing can be re-imported using

ngclient workflows import <workflow_file>

Any workflow which has changed can be restored using

ngclient workflows update <id> <workflow_file>

Note, ngclient only allows importing or updating single workflows at a time. The workflow_file passed to the above commands must only contain a single workflow definition.