Upgrading PMF 9.x to latest fix pack (On-prem)

This topic is meant for upgrading PMF Version 9.1 or 9.2 to the latest PMF fix pack level.

Upgrade scenario

  • Persistent Mobile Foundation 9.1 Persistent Mobile Foundation 10.x
  • Persistent Mobile Foundation 9.2 Persistent Mobile Foundation 10.x

Prerequisites

  1. PMF-PKG-<version>.zip file (Provided by Persistent Systems) for PMF 10.x.
  2. OpenSearch should be up and running.

    The Elasticsearch component has being replaced by OpenSearch in PMF 10.x. For more information, see Installing and configuring OpenSearch.

Pre-installation tasks

  1. Check java and java_home path by using the following command.

     Java -version
     echo $JAVA_HOME
    
  2. Upload PMF product to server.

    a. Create a 10.x folder inside /opt/PSL directory.

    b. Upload PMF-PKG-<version>.zip file to the /opt/PSL/10.x and extract by using the following command.

    unzip PMF-PKG-<version>.zip

    c. Provide permissions by using the following command.

    chmod 775 -R /opt/PSL/10.x

  3. Backup WebSphere® Application Server.

    a. Stop the server.

    b. Backup the database.

    c. Take WAS backup by using the following command.

     tar -cvzf wlp.tar.gz wlp
    
  4. Migrate the Elasticsearch data to OpenSearch. For more information, see Migrating Elasticsearch data to OpenSearch.

    a. Go to tools/elasticsearch-opensearch-migration directory of the extracted package and install application prerequisites by running the following command.

     export PATH=/< extracted path>/tools/elasticsearch-opensearch-migration/node-linux-x64/bin:$PATH
     cd /<extracted path>/tools/elasticsearch-opensearch-migration/analytics-data-migration-tool
     npm install
     node -v
    

    b. Update the config.json parameters as required.

    c. Export Elasticsearch data by using the following command.

     cd /<extracted path>/tools/elasticsearch-opensearch-migration/analytics-data-migration-tool
     npm run export -- -b 100
    

    d. Migrate data to OpenSearch by using the following command.

     npm run migrate -- -b 100
    

    e. Validate migration by using the following command.

     npm run migrate -- -v
    

Procedure

  1. Update PMF Analytics Receiver component configuration file.

    a. Go to /opt/PSL/10.x/Persistent_Mobile_Foundation/AnalyticsReceiver/configuration-samples and edit the configure-liberty-analytics-receiver.xml file to set the values of the JNDI properties.

    Note: You can use the PMF 9.x configure-liberty-analytics-receiver.xml file as a reference.

    b. Save the file after the properties are defined.

    c. Run the following commands to show a list of possible targets for the Ant file.

     cd /opt/PSL/10.x/Persistent_Mobile_Foundation/tools/apache-ant-1.9.4/bin 
     ./ant -f /opt/PSL/10.x//Persistent_Mobile_Foundation/AnalyticsReceiver/configuration-samples/configure-liberty-analytics-receiver.xml
    

    d. Migrate Analytics Receiver component by using the following command.

     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/AnalyticsReceiver/configuration-samples/configure-liberty-analytics-receiver.xml update
    
  2. Update PMF Analytics component configuration file.

    a. Go to /opt/PSL/10.x/Persistent_Mobile_Foundation/Analytics/configuration-samples and edit the configure-liberty-analytics.xml file to set the values of the JNDI properties.

    Note: You can use the PMF 9.x configure-liberty-analytics.xml file as a reference.

    b. Save the file after the properties are defined.

    c. Run the following commands to show a list of possible targets for the Ant file.

     cd /opt/PSL/10.x/Persistent_Mobile_Foundation/tools/apache-ant-1.9.4/bin 
     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/Analytics/configuration-samples/configure-liberty-analytics.xml 
    

    d. Migrate Analytics component by using the following command.

     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/Analytics/configuration-samples/configure-liberty-analytics.xml update
    

    e.Add the following properties to the server.xml file.

     <jndiEntry jndiName="analytics/datastore_url" value="<OpenSearchURL>"/>
     <jndiEntry jndiName="analytics/datastore_username" value="OpenSearchUser"/>
     <jndiEntry jndiName="analytics/datastore_password" value="OpenSearchPassword"/>
     <jndiEntry jndiName="analytics/tenant" value="OpenSearchTenant"/>
    

    f. Edit config.properties file and whitelist your servers.

    /…/wlp/usr/servers/<servername>/config.properties

    g. Start the server.

    h. Go to browser and verify you can access the Analytics console.

    http://<host>:<port>/analytics/console

  3. Update PMF Application Center component configuration file.

    a. Go to /opt/PSL/10.x/Persistent_Mobile_Foundation/ApplicationCenter/configuration-samples and edit the configure-appcenter-liberty-db2.xml file to set the values of the JNDI properties.

    Note: You can use the PMF 9.x configure-appcenter-liberty-db2.xml file as a reference.

    b. Save the file after the properties are defined.

    c. Run the following commands to show a list of possible targets for the Ant file.

     cd /opt/PSL/10.x/Persistent_Mobile_Foundation/tools/apache-ant-1.9.4/bin 
     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/ApplicationCenter/configuration-samples/ configure-appcenter-liberty-db2.xml  
    

    d. Migrate AppCenter component by using the following command.

     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/ApplicationCenter/configuration-samples/configure-appcenter-liberty-db2.xml update
    

    e. Start the server.

    f. Go to browser and verify you can access the ApplicationCenter console.

    http://<host>:<port>/appcenterconsole

  4. Update PMF Admin, Runtime, LiveUpdate, Push components configuration files.

    a. Go to /opt/PSL/10.x/Persistent_Mobile_Foundation/MobileFoundationServer/configuration-samples and edit the configure-liberty-db2.xml file to set the values of the JNDI properties.

    Note: You can use the PMF 9.x configure-liberty-db2.xml file as a reference.

    b. Save the file after the properties are defined.

    c. Run the following commands to show a list of possible targets for the Ant file.

     cd /opt/PSL/10.x/Persistent_Mobile_Foundation/tools/apache-ant-1.9.4/bin 
     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/MobileFoundationServer/configuration-samples/configure-liberty-db2.xml  
    

    d. Migrate Admin component by using the following command.

     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/MobileFoundationServer/configuration-samples/configure-liberty-db2.xml admupdate
    

    e. Migrate Runtime component by using the following command.

     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/MobileFoundationServer/configuration-samples/configure-liberty-db2.xml rtmupdate   
    

    f. Migrate LiveUpdate component by using the following command.

     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/MobileFoundationServer/configuration-samples/configure-liberty-db2.xml liveupdateupdate
    

    g. Migrate Push component by using the following command.

     ./ant -f /opt/PSL/10.x/Persistent_Mobile_Foundation/MobileFoundationServer/configuration-samples/configure-liberty-db2.xml pushupdate
    

    h. Edit config.properties file and whitelist your servers.

    /…/wlp/usr/servers/<servername>/config.properties

    i. Start the server.

    j. Go to browser and verify you can access the Admin console.

    http://<host>:<port>/mfpconsole

Rolling back

You can roll back from PMF 10.x to PMF 9.x by using the backup you took in the Step#3 of Pre-installation tasks section.

Roll back the migration as follows.

  1. Stop server.
  2. Rollback the database.
  3. Rename the wlp directory to wlp_10.x by using the following command.

    mv wlp wlp_10.x

  4. Revert wlp directory to previous PMF 9.x stage by using the following command.

    tar -xvzf wlp.tar.gz

  5. Start server, services resume with PMF 9.x.
Last modified on