Creating Portworx storage classes
If you decide to use Portworx as your storage option, Cloud Pak for Data recommends several storage classes for optimized performance and availability.
- Installation phase
- Setting up a client workstation
- Who needs to complete this task?
- A cluster administrator or a storage administrator must complete this task.
- When do you need to complete this task?
- If you plan to use Portworx storage, you should create the recommended storage classes. You must complete this task before you install IBM Cloud Pak® for Data.
Before you begin
Ensure that you have a minimum of 1 TB of raw, unformatted disk on every compute node that is designated for storage. The raw disk must have the same device name on all of the worker nodes.
About this task
You can use the cpd-cli
manage
command to run a script that creates the recommended storage
classes. The script that you run depends on whether you use Portworx with CSI:
- With CSI
- To create the storage classes on a Portworx with CSI environment, use the
px-sc-csi.sh
script. - Without CSI
- To create the storage classes on a Portworx environment without CSI, use the
px-sc.sh
script.
The scripts create a combination of block storage classes, which use the ReadWriteOnce (RWO) access mode, and file storage classes, which use the ReadWriteMany (RWX) access mode.
Storage class name | Storage type | Used for |
---|---|---|
portworx-cassandra-sc |
Block storage | Block storage for components that store data in Cassandra. (Used only for upgrades where this storage class is already in use.) |
portworx-couchdb-sc |
Block storage | Block storage with 3 replicas for components, such as common core services, that store data in CouchDB. |
portworx-db2-rwo-sc |
Block storage | Block storage with 3 replicas for user data storage for Db2® databases and the Watson™ Knowledge Catalog Db2 metastore. |
portworx-db2-rwx-sc |
File storage | File storage class with 3 replicas for system and backup data for Db2 databases. |
portworx-db2-sc |
Block storage | Block storage with 3 replicas for the Watson Knowledge Catalog Db2 metastore (Used only for upgrades where this storage class is already in use.) |
portworx-db-gp |
Block storage | Block storage with 1 replica for databases. |
portworx-db-gp2-sc |
Block storage | Block storage with 2 replicas for databases. |
portworx-db-gp3-sc |
Block storage | Block storage with 3 replicas for databases. |
portworx-dv-shared-gp |
File storage | File storage class with a single replica, used by the Watson Query service. (Used only for upgrades where this storage class is already in use.) |
portworx-dv-shared-gp3 |
File storage | File storage class with 3 replicas, used by the Watson Query service. (Used only for upgrades where this storage class is already in use.) |
portworx-elastic-sc |
Block storage | Block storage with 2 replicas for components, such as common core services, that store data in Elasticsearch. |
portworx-gp3-sc |
Block storage | Block storage with 3 replicas, used by the common core services for message brokers, such as RabbitMQ and Redis HA. |
portworx-kafka-sc |
Block storage | Block storage for components that store data in Kafka. (Used only for upgrades where this storage class is already in use.) |
portworx-metastoredb-sc |
Block storage | Block storage with 3 replicas for components, such as common core services and the Cloud Pak for Data control plane, that need to store metadata. |
portworx-nonshared-gp2 |
Block storage | Block storage with 3 replicas, used by the common core services for message brokers, such as RabbitMQ and Redis HA. (Used only for upgrades where this storage class is already in use.) |
portworx-rwx-gp2-sc |
File storage | General purpose file storage with 2 replicas, used by components that don't require more specific storage. (Used only for upgrades where this storage class is already in use.) |
portworx-rwx-gp3-sc |
File storage | General purpose file storage class with 3 replicas, used by components that don't require more specific storage. |
portworx-shared-gp |
File storage | File storage with 3 replicas and high IOPS. (Used only for upgrades where this storage class is already in use.) |
portworx-shared-gp1 |
File storage | File storage with 1 replica and high IOPS. (Used only for upgrades where this storage class is already in use.) |
portworx-shared-gp3 |
File storage | General purpose file storage with 3 replicas, used by components that don't require more
specific storage. Previous name for portworx-rwx-gp3-sc . (Used only for upgrades where
this storage class is already in use.) |
portworx-solr-sc |
Block storage | Block storage for components that store data in Solr. (Used only for upgrades where this storage class is already in use.) |
portworx-watson-assistant-sc |
Block storage | Block storage with 3 replicas. Optimized for Watson Assistant. |
Procedure
To create the storage classes on your cluster:
-
Run the
cpd-cli manage login-to-ocp
command to log in to the cluster as a user with sufficient permissions to complete this task. For example:cpd-cli manage login-to-ocp \ --username=${OCP_USERNAME} \ --password=${OCP_PASSWORD} \ --server=${OCP_URL}
Tip: Thelogin-to-ocp
command takes the same input as theoc login
command. Runoc login --help
for details. - Run the appropriate script based on the type of Portworx storage on your environment:
With CSI
cpd-cli manage
px-sc-csi.sh
Without CSI
cpd-cli manage
px-sc.sh
- If you plan to install Informix® on Cloud Pak for Data, create the
portworx-informix-sc
storage class.The
portworx-informix-sc
storage class provisions block storage with 3 replicas. The storage is optimized for Informix. It is recommended, but not required.
With CSI
# Informix cat <<EOF | oc create -f - apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: portworx-informix-sc parameters: repl: "3" priority_io: high io_profile: db block_size: 2048b allowVolumeExpansion: true provisioner: pxd.portworx.com EOF
Without CSI
# Informix cat <<EOF | oc create -f - apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: portworx-informix-sc parameters: repl: "3" priority_io: high io_profile: db block_size: 2048b allowVolumeExpansion: true provisioner: kubernetes.io/portworx-volume EOF