Copyright ©
Mindbreeze GmbH, A-4020 Linz, 2023.
All rights reserved. All hardware and software names used are brand names and/or trademarks of their respective manufacturers.
These documents are strictly confidential. The submission and presentation of these documents does not confer any rights to our software, our services and service outcomes, or any other protected rights. The dissemination, publication, or reproduction hereof is prohibited.
For ease of readability, gender differentiation has been waived. Corresponding terms and definitions apply within the meaning and intent of the equal treatment principle for both sexes.
To ensure a pleasant and uncomplicated update of the version, every newly released update should normally be installed and skipped as little as possible, if at all.
Downgrades and mixed operation of versions should also be avoided in distributed operation.
If these points are not adhered to, errors may occur in special situations for certain versions, which you have to fix manually.
This document describes which errors can occur in these special situations and how to correct them.
Note:
A full backup must be performed before an update or downgrade.
Instructions can be found here.
If there are manually set up cron jobs (not recommended) on the host, customers should contact the Mindbreeze support before updating to 21.3 or later.
A direct update is not supported. Please update to 21.3 before updating to Version 22.3 or newer.
If you already updated a Version before 21.3 to 22.3 and the inspire container is not working, please issue the following commands:
docker exec -it inspire-system-loader inspire-systemloader update
docker exec -it inspire-system-manager inspire-systemmanager image update CoreOS
reboot
If Mindbreeze InSpire is still running on version 18.0 or older and you want to update to version 21.3 or newer, you cannot update directly to 21.3, but must first update to 18.1 and then to 21.3 or newer.
If you receive the following error message during the update:
A possible cause of this error could be missing or incorrect configuration files.
Check the file /var/data/keycloak/config/keycloak_h2_db_name. With InSpire version 20.3 or older the file should have the content keycloak_4_6_0. With InSpire version 20.4 or later, the file should have the content keycloak_10_0_2.
If the file is missing or the content does not match, correct this and start the update again. The error should now be corrected.
If you have an older version than 21.2 HF2 and the following two points also apply to your environment:
Please update to version 21.3 or newer.
If notifications are also activated in at least one client service, please contact the support to ensure a smooth update.
Note: When updating to a 21.2 HF version, a sequential update is not possible. If you require this please contact the support as well.
When updating from version 22.2 HF2 to any version, the following message can be displayed in the update log:
Could not execute update with exception: out of pty devices
In that case, please take one of the following actions to be able to start the update:
The same issue might cause the following error when trying to run docker exec:
OCI runtime exec failed: exec failed: unable to start container process: open /dev/pts/1: operation not permitted: unknown
To get around this you have the following possibilities:
Note: To avoid complications during the update, it is not recommended to make non-persisted changes (e.g.: individually added trusted SSL certificates to the JVM keystore) in the keycloak container.
In the keycloak container only the directories /config, /opt/keycloak/data (before Mindbreeze Inspire Version 23.3 /opt/jboss/keycloak/data) and /opt/keycloak/log (before 23.3 /opt/jboss/keycloak/log) are persisted, any changes in other directories and files will be lost during an update and have to be updated manually!
If custom trusted SSL certificates have been added to the JVM keystore, to enable e.g. User Federation with a system which has a self-signed certificate, an update will not be possible.
To be able to update first (before starting the update) manually disable all User Federation Providers and Identity Providers that rely on the added SSL certificates (Before disabling, make sure you also have an admin user which is stored in keycloak and not imported via user federation – if this is not the case, create one). This can be done in the MMC in the tab Setup > Credentials. To do this, simply go to the tabs "User Federation" and "Identity Providers", find all the necessary providers and deactivate them in their settings.
After that you can update. Once the update is complete, add the certificate in the Keycloak container to the JVM keystore again. To do this, the following commands must be executed inside the Keycloak container:
# <path_to_certificate> ist der Pfad zum Zertifikat – der Pfad muss also
# vom Container aus erreichbar sein
cp <path_to_certificate> /etc/pki/ca-trust/source/anchors
update-ca-trust extract
After that, the Docker container must be restarted (docker restart keycloak) to perceive the changes in the keystore. After the restart you can activate all providers again.
Note:
A full backup must be performed before an update or downgrade.
Instructions can be found here.
Basically, a distinction is made between two different cases of downgrades:
When downgrading to some older versions it is not possible to retain all Keycloak data. This applies to data such as additionally created clients, synchronized users, customized user role mappings.
This means, for example, that when downgrading from 20.4 to 20.3 not all Keycloak data is preserved, when downgrading from 20.3 to 20.2 the Keycloak data is preserved.
If a downgrade to those certain versions has to be performed, the Keycloak data must be re-entered manually after the downgrade.
The Keycloak data is stored in database files in the /var/data/keycloak/data/data/ directory. The database files contain the Keycloak version in the file name.
The following sections describe the steps needed for each case:
This completes the downgrade from Keycloak's perspective.
This also completes the downgrade in this case from Keycloak's perspective.
After a downgrade from version 21.3 to 21.2, credentials can no longer be loaded, corresponding error messages are displayed in the log and affected services no longer start. Example of this error in the log:
/opt/mindbreeze/bin/mesmaster.exe[245]: 2021-12-13 17:53:19,109 [Threadpool worker] ERROR: Failed to load build-in credentials store file /etc/mindbreeze/builtincredentials.proto
To fix this problem the following steps must be performed on the command line: