Installation Enhancements¶
Online Patch Updates for Kubernetes¶
Online updates are now supported for Kubernetes deployments when it is a patch update (e.g. 6.15.0.1 -> 6.15.0.5) and neither the export or import functionality of the installer is used. This has been implemented by splitting the installers Update action into two separate actions: Update Data and Clean Data. The Clean Data action happens once the new application versions are running and the old versions have shut down. During an online install the installer will keep the applications in the cluster running allowing users to continue to use the system. Kubernetes will ensure the new application version is rolled out in a controlled manner.
Note
It is still recommend the update be done out of hours even if it is an online update to avoid any potential issues. The moving of datasets between the old and new versions of the applications can cause brief periods of service degradation.
Downgrades¶
Patch downgrades are now supported (e.g. 6.15.0.5 -> 6.15.0.1) without having to export data and re-create the database. The installer will automatically detect the downgrade and perform the necessary actions to downgrade. Non-patch releases (e.g. 6.15.0.1 -> 6.14.0.5 or 6.15.1.1 -> 6.15.0.5) will continue to work as before where the installer will re-create the database with data exported during the install.
The Kubernetes installer will now disallow non-patch downgrades by default (e.g. 6.15.0.1 -> 6.14.0.5 or 6.15.1.1 -> 6.15.0.5). Prior to this it was too easy to inadvertently trigger a pipeline with an incorrect version number and cause a database reset. A new '-allow-db-reset' argument can be passed to the installer to allow the installer to re-create databases when needed.
High Availability Mode¶
The system now supports a high availability mode. When using this mode, in addition to the primary instance of each component processing a dataset, there will also be one or more replica instances. Replica instances are ready to immediately take over processing the dataset should anything happen to the primary instance.
Note
In an Azure cloud environment, the system will always aim to keep replica instances in a different zone to the primary instance.
See the 'Dataset Availability' section in the Administration Guide for details of this functionality.
Installation Options¶
- Admin Connection String: it is now possible to specify a separate connection string for use during installation to that used by the PSO components.
- Azure Workload Identities: it is now possible to use Azure Workload Identities for connecting to a SQL database when running in Kubernetes.
Minor Enhancements¶
- Kubernetes auto-scaling has been improved to allow scaling down to zero for more applications (ABE, DSP, TRA, SES).
- Dataset availability can now be configured at install time for Kubernetes installs.
- Kubernetes installs will now set the DatasetTypesToProcess parameter based on a DST being available.
- Prometheus metrics are now exposed by the applications when running in Kubernetes. Example Grafana dashboards are distributed in the Setup Files directory of the installer. See the Administration Guide for more information on the available metrics.