Deploying Maximo Data Loader in Red Hat® OpenShift
You can deploy Maximo Data Loader on a OpenShift® cluster by using the OpenShift console.
You must deploy Maximo Data Loader on a cluster on which Maximo® Application Suite, Maximo Manage, and Maximo Civil Infrastructure are deployed.
- Create a project for Maximo Data Loader in
the OpenShift console.
- Log in to your OpenShift console as kubeadmin or another user who has permission to log in to the console.
- From the drop-down list, click Administrator.
- Click Home > Project > Create Project.
- For the project name, specify
mas-instance_name-maxloader, for example,
mas-mci8-maxloader. Note: The remaining steps in the installation procedure assume that you created a project that is called
mas-mci8-maxloader
. If you specify a different project name, you must update the project name where it is referenced in the following steps that are used to deploy Maximo Data Loader on OpenShift. - For the display name, specify IBM Maximo Data Loader.
- Click Create.
- Create a persistent volume claim to store data such as the certificate keystore, log
files, configuration files, and Microsoft Excel workbooks. If the OpenShift pod on which Maximo Data Loader is running does not have a persistent
volume, the data in the pod is lost if the pod is restarted.
- In the OpenShift web console, click Storage > Persistent Volume Claim and select the OpenShift project that you created.
- Click Create Persistent Volume Claim.
- Specify mas-mci8-maxloader in the Persistent Volume Claim Name field.
- For Access Mode, ensure that Single User (RWO) is selected.
- In the Size field, specify 3 to create a 3 GB volume.
- Click Create.
- Create a Docker image pull secret to pull the Maximo Data Loader image from the IBM® Entitled Registry.
- In the OpenShift web console, select Workloads > Secrets > Create > Image pull secret, and select the OpenShift project that you created.
- Specify mas-mci8-maxloader.ibmcloud.secret in the Secret Name field.
- Specify cp.icr.io in the Registry Service Address field.
- Specify cp in the Username field.
- In the Password field, paste the IBM Cloud® entitlement key that you obtained for the IBM Entitled Registry.
- Click Create.
- Create a deployment for Maximo Data Loader.
- In the OpenShift web console, click Workloads > Deployment and select the OpenShift project that you created.
- Click Create Deployment.
- Remove the auto-generated deployment information that is in the Create
Deployment page. Copy the text from the following deployment template and paste it into
the Create Deployment page to create a new deployment that is called
mas-mci8-maxloader:
kind: Deployment apiVersion: apps/v1 metadata: name: mas-mci8-maxloader namespace: mas-mci8-maxloader labels: app: mas-mci8-maxloader spec: replicas: 1 selector: matchLabels: app: mas-mci8-maxloader template: metadata: labels: app: mas-mci8-maxloader deploymentconfig: mas-mci8-maxloader spec: containers: - resources: limits: cpu: '2' memory: 1Gi requests: cpu: '1' memory: 500Mi readinessProbe: exec: command: - stat - /tmp/initialized initialDelaySeconds: 60 timeoutSeconds: 1 periodSeconds: 30 successThreshold: 1 failureThreshold: 3 name: mas-mci8-maxloader workingDir: /maxloader image: >- cp.icr.io/cp/manage/maxloader:8.1.0 volumeMounts: - mountPath: /maxloader/data name: mas-mci8-maxloader imagePullSecrets: - name: mas-mci8-maxloader.ibmcloud.secret ports: - containerPort: 8443 protocol: TCP env: - name: MAXIMO_JAVA value: "/usr/bin/java" - name: MAXLOADER_USERNAME value: "maxloader" - name: MAXLOADER_PASSWORD value: "maxloader" - name: SUMMARY value: "Maximo Data Loader" - name: DESCRIPTION value: "The Maximo Data Loader can load data into, and query data from, a Maximo instance using Excel spreadsheets" volumes: - name: mas-mci8-maxloader persistentVolumeClaim: claimName: mas-mci8-maxloader restartPolicy: Always terminationGracePeriodSeconds: 30 securityContext: {} schedulerName: default-scheduler resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent dnsPolicy: ClusterFirst
- Click Create.
- Create a service for Maximo Data Loader.
- In the OpenShift web console, click Networking > Services and select the OpenShift project that you created.
- Click Create Service.
- Remove the auto-generated service information that is in the Create Service
page. Copy the text from the following service template and paste it into the Create
Service page to create a new service that is called
mas-mci8-maxloader:
apiVersion: v1 kind: Service metadata: name: mas-mci8-maxloader namespace: mas-mci8-maxloader labels: app: mas-mci8-maxloader spec: selector: app: mas-mci8-maxloader deploymentconfig: mas-mci8-maxloader type: ClusterIP ports: - name: mas-mci8-maxloader-443 protocol: TCP port: 443 targetPort: 8443
- Click Create.
- To make Maximo Data Loader accessible from
outside the OpenShift cluster, you
must create a route or an ingress. If you want to create a route, complete step 6. If you want to
create an ingress, complete step 7.
- In the OpenShift web console, click Networking > Route and select the OpenShift project that you created.
- From the drop-down list, click Create Route.
- Specify mas-mci8-maxloader in the Name field.
- In the Hostname field, specify mas-mci8-maxloader.apps.FQDN, where FQDN is the fully qualified domain name of the OpenShift cluster.
- In the Service field, select mas-mci8-maxloader.
- In the Target Port field, select 443 ->8443 (TCP).
- Select the Secure Remote checkbox.
- In the TLS Termination field, select Passthrough.
- Click Create.
- To create an ingress to make Maximo Data Loader accessible from outside the OpenShift cluster, complete the following
steps:
- In the OpenShift web console, click Networking > Ingresses and select the OpenShift project that you created.
- From the drop-down list, click Create Ingress.
- Specify mas-mci8-maxloader in the Name field.
- In the Hostname field, specify mas-mci8-maxloader.apps.FQDN, where FQDN is the fully qualified domain name of the OpenShift cluster.
- In the Service field, select mas-mci8-maxloader.
- In the Target Port field, select 443 ->8443 (TCP).
- Copy the text from the following ingress template and paste it into the Create Ingress page to create a new ingress that is called mas-mci8-maxloader:
apiVersion: networking.k8s.io/v1beta1 kind: Ingress metadata: name: mas-mci8-maxloader namespace: mas-mci8-maxloader spec: rules: - host: mas-mci8-maxloader.apps.masocp45.cp.fyre.ibm.com http: paths: - path: /maxloader backend: serviceName: mas-mci8-maxloader servicePort: 8443
- After you paste the text, update the host value to the fully qualified domain name of your OpenShift cluster.
- Click Create. After you create an ingress, it is added as a route in the OpenShift console.