Upgrade from version 7.4.0 to 7.5.0
If you’ve already installed Ping Identity Platform version 7.4.0 using artifacts
from the forgeops
repository, follow the steps provided on this page to
upgrade to platform version 7.5.0 in place.
This upgrade methodology has been tested against a deployment based on ForgeOps-provided Docker images with basic configuration settings.
Because the Ping Identity Platform is highly customizable, it is challenging to test all possible upgrade scenarios. It is your responsibility to validate that these upgrade steps work correctly in a test environment with your customized configuration before you upgrade a production environment. |
Prerequisites and assumptions
If you’ve deployed the Ping Identity Platform from a previous release of ForgeOps, such
as release/7.4-20240126
or release/7.5-20240608
:
-
If you are using Kustomize to manage your ForgeOps deployment, Migrate Kustomize deployments to the new format first.
-
You would have created your custom branch with the new ForgeOps release.
-
Copy your product configuration profiles from your 7.4.0 release branch, for example: /path/to/forgeops/docker/am/config-profile/my-profile to the same location in your new custom branch.
To upgrade the platform from version 7.4.0 to 7.5.0, you’ll need:
-
A running version 7.4.0 of ForgeOps deployment. If you need to port your AM custom configurations, then the running ForgeOps deployment should be a single-instance deployment with your AM and IDM configurations.
-
A
forgeops
repository clone with a branch that contains 7.4.0 artifacts. -
A
forgeops
repository clone with a branch that contains 7.5.0 artifacts.
Example commands in the steps on this page assume:
-
7.4.0-profile
is the name of the 7.4.0 configuration profile. -
Your 7.4.0 ForgeOps deployment is a small cluster.
-
Your 7.4.0 small, medium, or large ForgeOps deployment doesn’t include PingGateway.
When you perform the upgrade:
-
Choose a different name for the configuration profile if you prefer.
-
Specify a different cluster size, if applicable.
-
Add commands to upgrade PingGateway, if applicable.
Subscribe to release note updates
Get updates from ForgeOps when there are changes to ForgeOps 2025.1.0.
For more information about getting notifications or subscribing to the
ForgeOps 2025.1.0 RSS feed, refer to ForgeOps 2025.1.0
release notes.
Back up critical data
Before upgrading, back up all critical data, including:
-
Directory data stored in the
ds-idrepo
andds-cts
backends -
AM and IDM configuration data
-
Customized artifacts in your
forgeops
repository clone
After you’ve started to upgrade, you may not be able to roll back directory data easily because the data is upgraded in place. If you need to roll back directory data, you’ll have to redeploy DS and restore directory data from a backup.
Create the new release in your forgeops
branch
You can manage multiple releases in ForgeOps 7.5.0 using the forgeops image command. Learn more about the forgeops image command.
-
If you don’t have the 7.4.0 release file for your 7.4.0 deployment, create a 7.4.0 release file in your
forgeops
branch. For example, to create the release file for 7.4.0 version:$ cd /path/to/forgeops $ ./bin/forgeops image --release 7.4.0 platform --release-name 7.4.0
This is in case you need to roll back AM or IDM or you have configuration changes you wish to export from your single-instance environment.
-
Create a 7.5.0 release in docker/[.var]#COMPONENT/releases/7.5.0 in your
forgeops
branch:$ cd /path/to/forgeops $ ./bin/forgeops image --release 7.5.0 platform --release-name 7.5.0
-
Set the images in your environment to the new release:
$ ./bin/forgeops image --release 7.5.0 --env-name my-custom-env platform
Export the version 7.4.0 AM and IDM configurations
If you have AM or IDM configuration changes, in a single-instance deployment, that you haven’t yet exported to a configuration profile:
-
Locate a branch of your
forgeops
repository clone that contains version 7.4.0 artifacts and check out the branch. -
(Optional) Check out a new branch based on the branch that contains version 7.4.0 artifacts.
-
Locate a namespace running version 7.4.0 of the single-instance deployment that contains your AM and IDM configurations.
-
Export the AM and IDM configurations from the 7.4.0 single-instance deployment:
$ cd /path/to/forgeops $ ./bin/config export am 7.4.0-profile --sort --release-name 7.4.0 $ ./bin/config export idm 7.4.0-profile --sort --release-name 7.4.0
The
--release-name
option is required to ensure you use the version of theam-config-upgrader
that matches your deployment. This only replaces any default config expressions that are lost during config updates in PingAM. It doesn’t carry out any upgrades.
Build new images containing your ForgeOps configuration
-
Run the
am-config-upgrader
utility to upgrade the AM configuration to 7.5.0:$ cd /path/to/forgeops $ ./bin/forgeops upgrade-am-config docker/am/config-profiles/my-config-profile --release-name 7.5.0
-
Run the git add . and git commit commands.
-
Build Docker images for the newer patch release that contain your configuration profile:
$ cd /path/to/forgeops $ ./bin/forgeops build am --config-profile my-config-profile \ --env-name my-custom-env --release-name 7.5.0 --push-to my-repo \ --tag custom-am-tag $ ./bin/forgeops build idm --config-profile my-config-profile \ --env-name my-custom-env --release-name 7.5.0 \ --push-to my-repo --tag custom-idm-tag
The newly built Docker images are based on ForgeOps-provided Docker images.
Upgrade the exported configuration profiles to version 7.5.0
- In Kustomize environment
-
-
Set your Kubernetes context to the cluster on which ForgeOps is deployed.
-
Upgrade the
ds-cts
pods to the new patch release.-
Run the
forgeops apply ds-cts
command to updateds-cts
pods sequentially:$ cd /path/to/forgeops $ ./bin/forgeops apply ds-cts --env-name my-custom-env
-
Run the
kubectl get pods --watch
command to observe the pod upgrades. -
After all the
ds-cts
pods have been upgraded, run theds-debug.sh
command to verify that directory replication is working correctly in each ds-cts pod:$ ./bin/ds-debug.sh --pod-name ds-cts-0 rstatus
-
-
Similarly, upgrade the
ds-idrepo
pods to the new patch release and verify that directory replication is working correctly in eachds-idrepo
pod. -
Upgrade all the Ping Identity Platform pods to the new patch release:
$ ./bin/forgeops apply ui --env-name my-custom-env
Wait for all the pods to be upgraded. Run the
kubectl get pods --watch
command to observe the progress of upgrade. -
Start the admin UIs for AM and IDM in the upgraded deployment and verify that:
-
The start page for each admin UI displays the expected component version for the 7.5.0 release.
-
AM and IDM use your custom configuration.
-
-
- In Helm environment
-
-
Set your Kubernetes context to the cluster on which ForgeOps is deployed.
-
Upgrade the platform:
$ cd /path/to/forgeops $ helm upgrade --install identity-platform \ oci://us-docker.pkg.dev/forgeops-public/charts/identity-platform \ --version 7.5.0 --namespace my-namespace \ --values helm/my-custom-env/values.yaml
-
After all the
ds-cts
pods have been upgraded, run theds-debug.sh
command to verify that directory replication is working correctly in each ds-cts pod:$ ./bin/ds-debug.sh --pod-name ds-cts-0 rstatus
-
After the
ds-idrepo
pods have been upgraded, run the ds-debug.sh command to verify that directory replication is working correctly:$ ./bin/ds-debug.sh --pod-name ds-idrepo-0 rstatus
-
Start the admin UIs for AM and IDM in the upgraded deployment and verify that:
-
The start page for each admin UI displays the expected component version for the 7.5.0 release.
-
AM and IDM use your custom configuration.
-
-
Rebuild your new images
If you are using ForgeOps deployment in production, you must rebuild base Docker images and custom Docker images for version 7.5.0:
-
Learn more about building base docker images in Your own base Docker images.
-
Learn more about building your Docker images including custom configurations, in Create Docker images for use in production.