Storage considerations
To install IBM® Cloud Pak for Data, you must have a supported file storage system on your Red Hat® OpenShift® cluster.
Storage providers
For your shared persistent storage, Cloud Pak for Data supports and is optimized for several storage providers:
- Red Hat OpenShift Container Storage
- Version: 4.5 or later fixes
Available in the IBM Storage Suite for IBM Cloud® Paks.
- IBM Spectrum® Scale Container Native
- Version: 5.1.0.3 or later fixes
Available in the IBM Storage Suite for IBM Cloud Paks.
- Network File System (NFS)
- Version: 4
- Portworx
- Version:
- 2.5.0.1 or later is required for Red Hat OpenShift Version 3.11
- 2.6.2 or later is required for Red Hat OpenShift Version 4.5 and 4.6
- IBM Cloud File Storage
- Version: Not applicable
Storage comparison
The following table can help you decide which storage solution is right for you.
As you plan your system, remember that not all services support all types of storage. For complete information on the storage types supported by each service, see System requirements for services.
If the services that you want to install don't support the same type of storage, you can have a mixture of different storage types on your cluster.
Details | OpenShift Container Storage | IBM Spectrum Scale Container Native | NFS | Portworx | IBM Cloud File Storage |
---|---|---|---|---|---|
Deployment environments |
|
|
|
|
|
Red Hat OpenShift 3.11 | Not supported | Not supported | Supported | Supported, except for IBM Cloud, which requires 4.5 or 4.6. | Not supported |
Red Hat OpenShift 4.5 and 4.6 | Supported | Supported on 4.6 only. Requires 4.6.6 or later fixes. IBM Spectrum Scale Container Native adheres to the Red Hat OpenShift lifecycle. |
Supported | Supported | Supported |
x86-64 | Supported | Supported | Supported | Supported | Supported |
POWER® | Not supported | Not supported | Supported on Red Hat OpenShift 4.5 or 4.6 only. | Not supported | Not supported |
IBM Z® | Not supported | Not supported | Supported | Not supported | Not supported |
License requirements | A separate license is required. | A separate licenses is not required for IBM Spectrum Scale Container Native. You can use up to 12 TB of IBM Spectrum Scale Container Native, fully supported by IBM in production environments (Level 1 and Level 2), for up to 36 months. If you exceed the terms, a separate license is required. |
No license required. | A separate license is required. For details, see Portworx Enterprise. | No separate license required. For details about the amount of storage you can use, see How many volumes can be ordered. |
Storage classes | The required storage classes are automatically created when you install OpenShift Container Storage. Cloud Pak for Data uses the following storage classes:
|
ibm-spectrum-scale-sc |
NFS storage classes are user-defined. Use a storage class with ReadWriteMany (RWX) access. |
The required storage classes are listed in Creating Portworx storage
classes. You can run the provided script to create the storage classes. |
ibmc-file-gold-gid |
Data replication for high availability | Supported By default, all services use multiple replicas for high availability. OpenShift Container Storage maintains each replica in a distinct availability zone. |
Supported Replication is supported and can be enabled on the Spectrum Scale Storage Cluster in a variety of ways. For details, see Data mirroring and replication in the IBM Spectrum Scale documentation. |
Replication support depends on your NFS server. | Supported By default, most services use a storage class that supports 3 replicas. For details about the replicas for each storage class, see Creating Portworx storage classes. For details about the storage classes required for each service, see System requirements for services. |
Supported, but not enabled by default. You can enable replication from the IBM Cloud console. For details, see Replicating data. |
Backup and restore | Container Storage Interface support for snapshots and clones. Tight integration with Velero CSI plugin for Red Hat OpenShift Container Platform backup and recovery. |
Use the IBM Spectrum Scale Container Storage Interface
Volume snapshot as the primary backup and restore method.
Combine volume snapshots with Container Backup Support provided by IBM Spectrum Protect
Plus. Additionally, there are multiple methods that you can use to backup the Spectrum Scale Storage Cluster. For details, see Data protection and disaster recovery in the IBM Spectrum Scale documentation. |
Limited support. |
|
Supported, but not enabled by default. For details, see Backing up and restoring data. |
Encryption of data at rest | Supported OpenShift Container Storage 4.6 uses Linux Unified Key System (LUKS) version 2 based encryption with a key size of 512 bits and the aes-xts-plain64 cipher. You must enable encryption for your whole cluster during cluster deployment to ensure encryption at rest. It is disabled by default. Working with encrypted data incurs only a very small penalty to performance. Support for FIPS cryptography: By storing all data in volumes that use RHEL-provided disk encryption and enabling FIPS mode for your cluster, both data at rest and data in motion, or network data, are protected by FIPS Validated Modules in Process encryption. You can configure your cluster to encrypt the root filesystem of each node, as described in Customizing nodes. |
Supported For details, see Encryption in the IBM Spectrum Scale documentation. |
Check with your storage vendor on the steps to enable encryption at rest. | Supported with Portworx Enterprise for IBM only.
Portworx uses the LUKS format of dm-crypt and AES-256 as the cipher with xts-plain64 as the cipher mode.
|
Supported IBM Cloud File Storage supports provider-managed encryption-at-rest. This feature is only available in select data centers. All storage that is ordered in these data centers is automatically provisioned with encryption for data-at-rest. All snapshots and replicas of encrypted file storage are also encrypted by default in these select data centers. |
Network requirements | Your network must support a minimum of 10 Gbps. | You must have sufficient network performance to meet the storage I/O requirements. | You must have sufficient network performance to meet the storage I/O requirements. | Your network must support a minimum of 10 Gbps. For details, see Prerequisites. |
You must have sufficient network performance to meet the storage I/O requirements. For details, see Network connection. |
I/O requirements | Each node must have at least one enterprise-grade SSD or NVMe device that meets the Disk requirements in the system requirements. For more information, see Planning your deployment. If SSD or NVMe aren't supported in your deployment environment, use an equivalent or better device. |
For details, see Disk requirements in the system requirements. | For details, see Disk requirements in the system requirements. |
For details, see FIO performance in the Portworx documentation. |
For details, see Disk requirements in the system
requirements. The default I/O settings are typically lower than the minimums specified in the Disk requirements section. To improve the I/O performance for production environments, you must adjust the I/O settings. Contact IBM Software Support for guidance on how to adjust the settings according to Changing the size and IOPS of your existing storage device. |
Minimum amount of storage | A minimum of three nodes. On each node, you must have at least one SSD or NVMe device. Each device should have at least 1TB of available storage. For details, see Storage device requirements. |
1 TB or more of available space | 1 TB or more of available space | A minimum of three storage nodes. On each storage node, you must have:
|
500 GB or more Storage is not automatically expanded and is created in smaller chunks. Increasing the size of the volumes improves I/O performance for production environments. Contact IBM Software Support as indicated in the preceding row. |
Minimum amount of vCPU |
For details, see Resource requirements. |
8 vCPU on each worker node. For details, see the IBM Spectrum Scale Container Native requirements |
8 vCPU on the NFS server. |
|
Not applicable for managed services. |
Minimum amount of memory |
For details, see Resource requirements. |
16GB of RAM on each worker node. For details, see the IBM Spectrum Scale Container Native requirements |
32 GB of RAM on the NFS server | 4 GB of RAM on each storage node | Not applicable for managed services |
Installation documentation | Product documentation for Red Hat OpenShift Container Storage 4.5 or Red Hat OpenShift Container Storage 4.6 | For IBM Spectrum Scale and IBM Spectrum Scale Container Storage Interface, see the IBM Spectrum Scale Container Native installation documentation. | Kubernetes NFS-Client Provisioner | Install Portworx on OpenShift | Installed by default when you install managed Red Hat OpenShift on IBM Cloud. For details, see Storing data on classic IBM Cloud File Storage. |
Troubleshooting documentation | Product documentation for Troubleshooting OpenShift Container Storage 4.5 or Troubleshooting OpenShift Container Storage 4.6 | Refer to the appropriate documentation for your environment: | Refer to the documentation from your NFS provider. | Troubleshoot Portworx on Kubernetes | Troubleshooting persistent storage |
Storage configuration and provisioning
Cloud Pak for Data supports dynamic storage provisioning. A Red Hat OpenShift cluster administrator must properly configure the storage before Cloud Pak for Data is installed. The person who installs Cloud Pak for Data and the services on the cluster must know which storage classes to use during installation.
If you use static provisioning, contact IBM Support for assistance installing the Cloud Pak for Data control plane and services on your cluster.
Use the following guidance when you configure your storage:
Storage type | Guidance |
---|---|
Red Hat OpenShift Container Storage | If you have Red Hat OpenShift Container Storage on your Red Hat OpenShift cluster, no additional configuration is needed. For details, see Infrastructure requirements in the Red Hat OpenShift Container Storage documentation. |
NFS |
|
Portworx |
|
IBM Cloud File Storage | When you configure your Red Hat OpenShift
cluster, ensure that you select IBM Cloud File Storage
(ibmc-file-gold-gid storage class).
No additional configuration is required to use IBM Cloud File Storage. However, you might need to adjust your I/O and storage size settings for production workloads, as indicated in the Storage comparison table. |
Requirements
- The Cloud Pak for Data control plane, see System requirements for IBM Cloud Pak for Data.
- Services, see System requirements for services.
Work with your IBM Sales representative to ensure that you have sufficient storage for the services that you plan to run on Cloud Pak for Data and for your expected workload.
If you are using Portworx, the OpenShift cluster must include CRI-O.
If you are running the Prometheus Cluster Monitoring stack on IBM Cloud, you might notice that pods consume more local storage. You can reduce the retention periods of your logs or you can configure logs to be saved in persistent storage instead of local storage. For more information, see Configuring the monitoring stack. To troubleshoot issues, see Worker nodes show status of disk pressure.
- On-premises deployments
-
- SSD drives
- NVMe drives
- Amazon Web Services deployments
-
- GP2 disks
- IO1 disks or better
For details, see Amazon EBS volume types.
- Microsoft Azure
- Ultra disks or better