Setting up MobileFirst Application Center on IBM Cloud Private

improve this page | report issue

Overview

IBM MobileFirst Application Center can be used as an Enterprise application store and is a way to share information among different team members within an organization. The concept of Application Center is similar to Apple’s public App Store or Android’s Play Store, except that it targets only private usage within an organization. By using Application Center, users within the same organization can download applications to mobile devices from a single place that serves as a repository of mobile applications. For more information on MobileFirst Application Center, see MobileFirst Application Center documentation.

Jump to:

Prerequisites

You should have IBM Cloud Private account and must have set up the Kubernetes Cluster by following the documentation in IBM Cloud Private.

You require a pre-configured database to install and configure MobileFirst Application Center Charts in IBM Cloud Private. You will need to provide the database information to configure MobileFirst Application Center helm chart. The tables required for MobileFirst Application Center will be created in this database.

Supported Databases: DB2, Oracle, MySQL, PostgreSQL.

To manage containers and images, you need to install the following tools on your host machine as part of IBM Cloud Private setup:

  • Docker
  • IBM Cloud CLI (cloudctl)
  • Kubernetes CLI (kubectl)
  • Helm (helm)

Download the IBM MobileFirst Application Center Passport Advantage Archive

The Passport Advantage Archive (PPA) of MobileFirst Application Center is available here. The PPA archive of Mobile Foundation will contain the docker images and Helm Charts of the following Mobile Foundation components:

  • MobileFirst Server
  • MobileFirst Analytics
  • MobileFirst Application Center

Interim fixes for the MobileFirst Application Center can be obtained from the IBM Fix Central.

Load the IBM MobileFirst Application Center PPA Archive in IBM Cloud Private

Before you load the PPA Archive of Mobile Foundation, you must set up Docker. See the instructions here.

Follow the steps given below to load the PPA Archive into IBM Cloud Private cluster:

  1. Log in to the cluster using IBM Cloud ICP plugin (cloudctl).

    See the CLI Command Reference in IBM Cloud Private documentation.

    For example,

     cloudctl login -a https://<ip>:<port>
    

    Optionally, if you intend to skip SSL validation use the flag --skip-ssl-validation in the command above. Using this option prompts for username and password of your cluster endpoint. Proceed with the steps below, on successful login.

  2. Load the PPA Archive of Mobile Foundation using the following command:
     cloudctl load-ppa-archive --archive <archive_name> [--clustername <cluster_name>] [--namespace <namespace>]
    

    archive_name of Mobile Foundation is the name of the PPA archive downloaded from IBM Passport Advantage,

    --clustername can be ignored if you had followed the previous step and made the cluster endpoint as default for cloudctl.

  3. After you load the PPA Archive, synch the repositories, this ensures that the Helm Charts are listed in the Catalog. You can do this in IBM Cloud Private management console.
    • Select Admin > Repositories.
    • Click Synch Repositories.
  4. You can then view the Docker images and Helm Charts in the IBM Cloud Private management console.
    To view Docker images,
    • Select Platform > Images.
    • Helm Charts are shown in the Catalog.

On completing the above steps, you will see the uploaded version of Helm Charts appearing in the ICP Catalog. The MobileFirst Application Center appears as ibm-mfpf-appcenter-prod in the Catalog.

Environment variables for MobileFirst Application Center

The table below provides the environment variables used in MobileFirst Application Center on IBM Cloud Private.

Qualifier Parameter Definition Allowed Value
arch   Worker node architecture Worker node architecture to which this chart should be deployed. Only AMD64 platform is currently supported.
image pullPolicy Image Pull Policy Default is IfNotPresent.
  name Docker image name Name of the MobileFirst Application Center docker image.
  tag Docker image tag See Docker tag description
mobileFirstAppCenterConsole user Username of the MobileFirst Application Center console  
  password Password of the MobileFirst Application Center console  
existingDB2Details appCenterDB2Host IP address of the DB2 server where Application Center database will be configured  
  appCenterDB2Port Port of the DB2 database that is setup  
  appCenterDB2Database Name of the database to be used The database has to be created prior.
  appCenterDB2Username DB2 user name to access the DB2 database User should have access to create tables and create schema if it does not already exist.
  appCenterDB2Password DB2 password for the database provided  
  appCenterDB2Schema Application Center DB2 schema to be created  
  appCenterDB2ConnectionIsSSL DB2 connection type Specify if your database connection has to be http or https. Default value is false (http). Make sure that the DB2 port is also configured for the same connection mode.
keystores keystoresSecretName Refer to Install and configure IBM Mobile Foundation Helm Charts, describing the steps to create the secret with the keystores and their passwords.  
resources limits.cpu Maximum amount of CPU allowed Default is 1000m
See here for more information.
  limits.memory Maximum amount of memory allowed Default is 1024Mi
See here for more information.
resources.requests requests.cpu Describes the minimum amount of CPU required. If not specified, this defaults to limits (if specified) or otherwise implementation-defined value. Default is 1000m.
  requests.memory Describes the minimum memory required. If not specified, the memory will default to the limits (if specified) or the implementation-defined value. Default is 1024Mi.

Install and Configure MobileFirst Application Center

Before you install and configure MobileFirst Application Center, you should have the following:

  • [Mandatory] a DB2 database configured and ready to use. You will need the database information to configure MobileFirst Server helm. MobileFirst Server requires schema and tables, which will be created (if it does not exist) in this database.

  • [Optional] a secret with your keystore and truststore. You can provide your own keystore and truststore to the deployment by creating a secret with your own keystore and truststore.

    Prior to the installation, follow the steps below:

    • Create a secret with keystore.jks, keystore-password.txt, truststore.jks, truststore-password.txt and provide the secret name in the field keystores.keystoresSecretName.

    • Keep the files keystore.jks and its password in a file named keystore-password.txt and truststore.jks and its password in a file named truststore-password.jks.

    • Go to the command line and execute:
      kubectl create secret generic mfpf-cert-secret --from-file keystore-password.txt --from-file truststore-password.txt --from-file keystore.jks --from-file truststore.jks
      

      Note: The names of the files should be the same as mentioned i.e, keystore.jks, keystore-password.txt, truststore.jks and truststore-password.txt.

    • Provide the name of the secret in keystoresSecretName to override the default keystores.

    For more information refer to Configuring the MobileFirst Server Keystore.

Follow the steps below to install and configure IBM MobileFirst Application Center from IBM Cloud Private management console.

  1. Go to Catalog in management console.
  2. Select ibm-mfpf-appcenter-prod helm chart.
  3. Click Configure.
  4. Provide the environment variables. Refer to Environment Variables for MobileFirst Application Center for more information.
  5. Click Install.

Verifying the Installation

After you have installed and configured MobileFirst Analytics (optional) and MobileFirst Server, you can verify your installation and the status of the deployed pods by doing the following:

In the IBM Cloud Private Management Console. Select Workloads > Helm Releases. Click on the release name of your installation.

Accessing MobileFirst Application Center

After successful installation of MobileFirst Application Center Helm Chart you can access, MobileFirst Application Center Console from the browser using <protocol>://<external_ip>:<port>/appcenterconsole.

The protocol can either be http or https. Also, note that the port will be NodePort in case of NodePort deployment. To get the ip_address and NodePort of your installed MobileFirst Application Center Charts, follow the steps below:

  1. In IBM Cloud Private Management Console, select Workloads > Helm Releases.
  2. Click on the release name of your helm chart installation.
  3. See the Notes section.

Note: To access the MobileFirst Application Center mobile client, download the application center package from Passport Advantage. Learn more.

Upgrading Helm Charts and Releases

Please refer to Upgrading bundled products for instructions on how-to upgrade helm charts/releases.

Sample scenarios for Helm release upgrades

  1. To upgrade helm release with changes in values of values.yaml, use the helm upgrade command with –set flag. You can specify –set flag multiple times. The priority will be given to the right most set specified in the command line.
      helm upgrade --set <name>=<value> --set <name>=<value> <existing-helm-release-name> <path of new helm chart>
    
  2. To upgrade helm release by providing values in a file, use the helm upgrade command with -f flag. You can use –values or -f flag multiple times. The priority will be given to the right most file specified in the command line. In the following example, if both myvalues.yaml and override.yaml contain a key called Test, the value set in override.yaml would take precedence.
      helm upgrade -f myvalues.yaml -f override.yaml <existing-helm-release-name> <path of new helm chart>
    
  3. To upgrade helm release by reusing the values from the last release and overriding some of them, a command such as below can be used:
      helm upgrade --reuse-values --set <name>=<value> --set <name>=<value> <existing-helm-release-name> <path of new helm chart>
    

Uninstall

To uninstall MobileFirst Application Center, use the Helm CLI. Use the following command to completely delete the installed charts and the associated deployments:

helm delete --purge <release_name>

release_name is the deployed release name of the Helm Chart.

References

See here for more information on MobileFirst Application Center.

Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on May 17, 2019