Upgrading PMF 9.x to latest fix pack (Cloud)
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
Procedure
Proceed as follows.
-
Download the
PMF-OpenShift-Pak-<version>.tar.gzpackage.a. Extract
PMF-OpenShift-Pak-<version>.tar.gz packageby using the following command.tar -xvzf PMF-Openshift-Pak-<VERSION>.tar.gzNote: The Elasticsearch component has being replaced by OpenSearch in PMF 10.x. For more information, see Installing and configuring OpenSearch.
-
Migrate the Elasticsearch data to OpenSearch. For more information, see Migrating Elasticsearch data to OpenSearch.
a. Go to
tools/elasticsearch-opensearch-migrationdirectory 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 -vb. Update the
config.jsonparameters as required.Optional: Data exported from Elasticsearch can be imported into a different tenant in OpenSearch, to do so proceed as follows.
i. Create
tenant.xmlfile by using following details.<server> <jndiEntry jndiName="analytics/tenant" value='<TENANT-NAME>'/> </server>ii. Create a ConfigMap using the
tenant.xmlfile by using the following command.oc create ConfigMap analytics-custom-config --from-file=tenant.xmliii. Provide the created ConfigMap to the Analytics component in the
charts_v1_mfoperator_cr.yamlCR file.customConfiguration: "analytics-custom-config"c. Export Elasticsearch data by using the following command.
cd /<extracted path>/tools/elasticsearch-opensearch-migration/analytics-data-migration-tool npm run export -- -b 100d. Migrated data to OpenSearch by using the following command.
npm run migrate -- -b 100e. Validate migration by using the following command.
npm run migrate -- -v -
Upgrade components for PMF.
a. Go to deploy directory of the above extracted package and modify following deployment of YML files.
- service_account.yaml - Provide created imagePullSecret.
- role_binding.yaml - Provide namespace.
-
charts_v1_mfoperator_cr.yaml
- Copy the values from the old version of
charts_v1_mfoperator_cr.yamlto the newcharts_v1_mfoperator_cr.yamlfile. -
Add values for VAPT properties as per your requirement. For more information, see config.properties file parameters.
-
Add values for OpenSearch properties in the Analytics component.
opensearch: url: "<OpenSearchURL>" username: "<OpenSearchUser>" password: "<OpenSearchPassword>" -
Provide create push custom ConfigMap, In version 10.x, we introduced support for multiple apps with different FCM accounts. To use the push feature in 10.x, proceed as follows.
-
Create ConfigMap using different fcm accounts JSON files by using the following command.
oc create ConfigMap push-custom-config --from-file=app1.json,app2.json,appx.json... -
Provide created ConfigMap to push components.
customConfiguration: " push-custom-config". -
Create ConfigMap to map environment variable to JSON files by using the following command.
oc create ConfigMap push-fcm-v1-ConfigMap --from-literal=ENV_APP1=/opt/ibm/wlp/usr/servers/mfpf-push/configDropins/overrides/app1.json --from-literal=ENV_APP2=/opt/ibm/wlp/usr/servers/mfpf-push/configDropins/overrides/app2.json --from-literal=ENV_APPx=...
-
- Copy the values from the old version of
c. Go to deploy directory and apply following commands.
oc apply -f crds/charts_v1_mfoperator_crd.yaml oc apply -f service_account.yaml oc apply -f role.yaml oc apply -f role_binding.yaml oc apply -f deploy/operator.yamld. Run the following command to upgrade components CR once PMF operator pod is up and running.
oc apply -f crds/charts_v1_mfoperator_cr.yaml -
Verify that the consoles are up and running by using the following URLs.
<<protocol>>://<<hostname>>/mfpconsole