Setting up Red Hat OpenShift Container Storage
You can set up Red Hat® OpenShift® Container Storage (OCS) for the Red Hat OpenShift Container Platform for use in IBM® Maximo® Application Suite.
- For more information about deploying Red Hat OpenShift Container Storage, see Preparing to deploy Red Hat OpenShift Container Storage.
- For more information about Red Hat OpenShift Container Storage resource requirements, see Resource requirements.
Tip: This task maps to the following Ansible role: ocs. For more information, see IBM Maximo Application Suite installation with Ansible collection.
Procedure
What to do next
You can create S3 compatible object storage that is used by applications that require it, such as
Maximo Assist.
- Create the objectstore.yaml file to create the ceph object
store:
--- apiVersion: ceph.rook.io/v1 kind: CephObjectStore metadata: name: object namespace: openshift-storage spec: dataPool: compressionMode: "" crushRoot: "" deviceClass: "" erasureCoded: algorithm: "" codingChunks: 0 dataChunks: 0 failureDomain: host replicated: requireSafeReplicaSize: false size: 2 targetSizeRatio: 0 gateway: allNodes: false instances: 1 placement: {} port: 8081 resources: {} securePort: 0 sslCertificateRef: "" metadataPool: compressionMode: "" crushRoot: "" deviceClass: "" erasureCoded: algorithm: "" codingChunks: 0 dataChunks: 0 failureDomain: host replicated: requireSafeReplicaSize: false size: 2 targetSizeRatio: 0 preservePoolsOnDelete: false - Apply the objectstore.yaml file to the cluster to create the ceph object
store:
oc apply -f objectstore.yaml - Create the user for the object store YAML file
objectuser.yaml:
--- apiVersion: ceph.rook.io/v1 kind: CephObjectStoreUser metadata: name: object namespace: openshift-storage spec: displayName: s3-user3 store: object - Apply the YAML to the cluster to create the ceph object store
user:
oc apply -f objectuser.yaml - Verify and Check the
svcand secret information.oc get svc | grep -i rook-ceph-rgw-objectSample outputrook-ceph-rgw-object ClusterIP 172.30.160.7 <none> 8081/TCP
- Get the S3 ObjectStore Access information:
oc extract secret/rook-ceph-object-user-object-object -n openshift-storage --keys=AccessKey --to=-Sample output# AccessKey UBQZ3DMD7RZ2EXK38RHL
oc extract secret/rook-ceph-object-user-object-object -n openshift-storage --keys=SecretKey --to=-Sample output# SecretKey 9gWm811InDtx2WwUdpjDbkjxCNNlpwbN5KAGajIU
oc extract secret/rook-ceph-object-user-object-object -n openshift-storage --keys=Endpoint --to=-Sample output# Endpoint http://rook-ceph-rgw-object.openshift-storage.svc:8081
- Create route for external access with Edge
tlstermination by using the following YAML file rgw.yaml:--- apiVersion: route.openshift.io/v1 kind: Route metadata: labels: app: rook-ceph-rgw ceph_daemon_id: object rgw: object rook_cluster: openshift-storage rook_object_store: object name: rgw namespace: openshift-storage spec: host: rgw-openshift-storage.apps.cluster1.ibmmasdocs.com port: targetPort: http tls: termination: edge to: kind: Service name: rook-ceph-rgw-object weight: 100 wildcardPolicy: None - Apply the YAML rgw.yaml to the
cluster:
oc apply -f rgw.yaml - Validate the route information:
oc get route rgwSample outputNAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD rgw rgw-openshift-storage.apps.cluster1.ibmmasdocs.com rook-ceph-rgw-object http edge None
As a result, the Ceph object storage access information is:
- URL
- https:// rgw-openshift-storage.apps.cluster1.ibmmasdocs.com
- Username (accessKey)
- UBQZ3DMD7RZ2EXK38RHL
- Password: (SecretKey)
- 9gWm811InDtx2WwUdpjDbkjxCNNlpwbN5KAGajIU