November 2023 rolling release (RR) upgrade guide
Overview
The Nevis rolling release version 7.2311.0 is released on 15. November 2023.
The Nevis RR version 7.2311.0 is a major upgrade requiring a new Java runtime version and including many notable breaking changes.
To ensure a smooth upgrade, read this document carefully including all the linked information and release notes.
We recommend planning ahead, reserving ample time for the upgrade, and extensive testing of all use cases.
To facilitate the upgrade we provide a RR version in August 2023 with an extended support period compared to regular RR releases.
Java 17
Nevis has upgraded the runtime of all Java-based components from Java 8 to Java 17. Starting with the November RR Java 8 is no longer supported in new releases on the rolling release life cycle.
New Nevis version scheme
Nevis has unified the versioning scheme for all newly released components on the rolling release life cycle. The version format is {Major}.{Minor}.{Patch}.{Build}
:
- Major: incremented on the RR life cycle after a new LTS is released
- Minor: the year and month in
yyMM
format at the time of the cluster release - Patch: incremented with every patch
- Build: incremented with every build
You can now easily identify compatible Nevis components with the new Nevis versioning scheme. The Nevis version of the November 2023 rolling release is 7.2311.0.x.
The following Nevis components and releases continue to use the current versioning scheme:
- The Nevis Access App and Nevis Mobile Authentication SDK
- The LTS-21 and the August RR with extended life cycle
Upgrade guide
Java 17 upgrade
The Java 17 runtime environment is already included for Kubernetes-based installations in the Nevis images (currently java-17-amazon-corretto
) and for appliance-based installations in the nevisAppliance image (currently: java-17-openjdk
). No further action is required to upgrade the Java version.
For RPM-based installations, you need to install a Java-17-compatible Java runtime environment (JRE) and update your environment to use the new Java version. You can achieve this for example by using update-alternatives --config java
. Also, double-check that ${JAVA_HOME}
is pointing to the correct location or java -version
returns the expected version.
Notable breaking changes
OpTrace is replaced by OpenTelemetry
The OpTrace logging based on jcan-log
and jcan-optrace
has been removed from all Nevis components. It is replaced by OpenTelemetry.
Learn more on how to set up OpenTelemetry
- OpenTelemetry in Kubernetes-based installations
- OpenTelemetry using nevisAdmin4 patterns
- OpenTelemetry with RPM-based installations using configuration files
Custom AuthStates
Custom AuthStates compiled with Java 8 are no longer supported. Besides upgrading to Java 17, in nevisAuth a major cleanup has been done, most dependencies are updated and there are breaking changes in the nevisAuth API. For this reason, existing custom AuthStates are incompatible with the November 2023 rolling release.
You need to recompile custom AuthStates using Java 17 and the latest nevisAuth artifacts of version 7.2311.x.
Learn more on how to upgrade your custom AuthStates.
Groovy script states
The Groovy library responsible for running Groovy ScriptStates is upgraded to version 4.x from the previous 3.x. It is recommended to revisit your Groovy ScriptStates for breaking changes.
Learn more about what changed with Groovy 4 in the release notes.
NevisAdmin4 patterns
Existing nevisAdmin4 pattern versions based on Java 8 and Groovy 3.x are no longer supported with nevisAdmin4 version 7.2311.0.x. With the November 2023 RR there is no backward compatibility. You need to use the latest nevisAmin4 pattern versions based on Java 17 and Groovy 4.x.
OOCD configuration
The file-based OODC implementation in nevisAuth has been removed. All production environments need to migrate to the SQL-based OOCD implementation.
Learn more about the changes in OOCD.
Release notes
Read all the Nevis component release notes carefully and update your configurations based on the changes.
- nevisAdapt release notes
- nevisAdmin4 release notes
- nevisAppliance release notes
- nevisAuth release notes
- nevisCred release notes
- nevisDataPorter release notes
- nevisDetect release notes
- nevisFIDO release notes
- nevisIDM release notes
- nevisKeybox release notes
- nevisMeta release notes
- nevisProxy release notes
- Ninja release notes