Any warnings or errors encountered are recorded in log/upgrade.log, as well as on the screen while the utility is running. The upgrade uses an exit code of 0 to indicate a successful upgrade and an exit code of 1 to indicate failure.


During the upgrade, it is important to not make any changes to the running PingAccess environment.

  1. If you are using the upgrade utility, change to the new version's /upgrade/bin directory on the command line.
    cd /pingaccess-6.1.0/upgrade/bin
  2. Upgrade the system:
    • If you are using the upgrade utility on a Windows system, use this command: upgrade.bat [-p <admin_port>] [-i <directory>] [-j <jvm_memory_options_file>] [-l <newPingAccessLicense>] [-s | --silent] <sourcePingAccessRootDir>
      For example.
      upgrade.bat ../pingaccess-5.3.0
    • If you are using the upgrade utility on a Linux system, use this command: ./ [-p <admin_port>] [-i <directory>] [-j <jvm_memory_options_file>] [-l <newPingAccessLicense>] [-s | --silent] <sourcePingAccessRootDir>
      For example.
      ./ ../pingaccess-5.3.0
    • If you are using the incremental update package, open the ReadMeFirst.txt file and make the file changes specified in the readme.

    The command-line parameters are the same regardless of the platform, and are defined as follows.

    Parameter definitions
    Parameter Value description

    -p <admin_port>

    Optional port to be used by the temporary PingAccess instance run during the upgrade. The default is 9001.

    -i <directory>

    An optional directory containing additional library JAR files (for example, plugins, JDBC drivers) to be copied into the target installation.

    Beginning in version 6.0, JAR files are stored in the <PA_HOME>/deploy folder.

    During an upgrade from versions earlier than 6.0, third-party JAR files are migrated from the lib folder to the deploy folder if no directory is specified.

    During an upgrade from version 6.0 or later, the contents of the deploy folder are migrated to the new <PA_HOME>/deploy folder if no directory is specified.


    The PA_HOME for the source PingAccess version.

    -l <newPingAccessLicense>

    An optional path to the PingAccess license file to use for the target version. If not specified, the existing license is reused.

    -j <jvm_memory_options_file>

    An optional path to a file with Java Virtual Machine (JVM) memory options to use for the new PingAccess instance during the upgrade.

    -s | --silent

    Run the upgrade with no user input required. To use this option, specify the source version's credentials using environment variables.

    Environment Variables

    You can specify the username and password for the source version using these environment variables:

    Environment variable Description


    The username for the source version's Admin API. This should be set to Administrator.


    The basic authorization password for the Administrator in the source version's Admin API.

    JVM Memory options

    These options can be included in the JVM memory options file. Memory amounts use m or g to specify the unit.

    Memory option Description


    Minimum heap size.


    Maximum heap size.


    Minimum size for the Young Gen space.


    Maximum size for the Young Gen space.


    Specifies that the parallel garbage collector should be used.

    For example.

    #Sample JVM Memory options file

    You can copy the existing <PA_HOME>/conf/jvm-memory.options file to create a JVM memory options file for the upgrade.

  3. Stop the existing PingAccess replica admin instance.
  4. Start the new PingAccess replica admin instance.

    You're now ready to resume configuration replication for the replica administrative node.

  5. In a browser, go to https://<host>:<admin-port>/pa-admin-api/v3/api-docs/.


  6. Expand the /adminConfig/replicaAdmins endpoint.
  7. Click the GET /adminConfig/replicaAdmins operation.
  8. Click Try it out! and note the id for the replica admin.
  9. Click the GET /adminConfig/replicaAdmins/{id} operation.
  10. Enter the id of the replica admin you want to update and click Try it out!
  11. Copy the Response Body.
  12. Click the PUT /adminConfig/replicaAdmins/{id} operation and enter the id of the replica admin you want to update.
  13. Paste the Response Body you copied and change "configReplicationEnabled" to true.
  14. Click Try it out!

    If the operation is successful, you will receive a response code of 200.

  15. Click Settings and then go to Clustering > Administrative Nodes.
  16. Ensure the Replica Administrative Node displayed and reporting on the Administrative Nodes tab. A healthy node shows a green status indicator.

After you have upgraded the administrative and replica administrative nodes, you can begin upgrading the engines.