Skip to main content

Install Portworx CSI

After preparing your environment, generate and deploy the Kubernetes manifest from Portworx Central to install Portworx CSI.

Prerequisites

Generate Kubernetes manifest

To generate Kubernetes manifests for Portworx CSI installation, follow these steps:

  1. Navigate to Portworx Central and log in or create an account.

  2. In the Welcome to Portworx! section, select Get Started.

  3. On the Product Line page, in the PX-CSI section, select Continue.

  4. On the Generate PX-CSI Spec page, review the options and select the appropriate values based on your requirements.

    important
    • By default, iSCSI is set as your protocol for data transfer. To change this, use the Storage Area Network dropdown.
    • For Kubernetes cluster, select the Distribution Name option as None.
  5. (Optional) If you are using the secure multi-tenancy feature in FlashArray, follow these steps in the Advanced Settings:

    1. Select Custom from the KVDB Device dropdown.
    2. Check the Enable multitenancy option.
    3. Enter the FlashArray pod name in the Pure FA Pod Name field.
      important

      If you are using multiple FlashArrays with the secure multi-tenancy feature, ensure that the pod names are the same across the realms.

  6. (Optional) If you are using multiple NICs for the iSCSI host, add the environment variable PURE_ISCSI_ALLOWED_IFACES with comma-separated names of NICs in Advanced Settings. Example: "eth1,eth2".

    note

    If your virtual machine has multiple NICs, FlashArray cannot differentiate between those with iSCSI and those without. You must specify the list of NICs; otherwise, Portworx might only utilize one of the available interfaces.

  7. Click Save and Download to generate the specification.

(Optional) Enable CSI topology feature

If you want to use CSI topology feature, follow the steps below to enable CSI topology:

  1. Ensure that you have prepared your environment for using CSI topology.

  2. Set spec.csi.topology.enabled parameter to true in the StorageCluster specification.

    csi:
    enabled: true
    topology:
    enabled: true

Apply Kubernetes manifest

Apply the Operator and StorageCluster specification you generated in the section above:

note
  • If you have modified the specification, use the filename in the kubectl apply command instead of the specification URL generated from Portworx Central.
  • For the Google Anthos platform, download the ZIP file containing the Operator and StorageCluster specs generated in the Generate Kubernetes manifest section. Unzip the file and use the filenames in the kubectl apply command.
  1. Deploy the Operator:

    kubectl apply -f '<url-generated-from-portworx-central-spec-gen>'
    serviceaccount/portworx-operator created
    podsecuritypolicy.policy/px-operator created
    clusterrole.rbac.authorization.k8s.io/portworx-operator created
    clusterrolebinding.rbac.authorization.k8s.io/portworx-operator created
    deployment.apps/portworx-operator created
  2. Deploy the StorageCluster:

    kubectl apply -f '<url-generated-from-portworx-central-spec-gen>'
    storagecluster.core.libopenstorage.org/px-cluster-xxxxxxxx-xxxx-xxxx-xxxx-5db83030471e created

After deployment, Portworx CSI detects the presence of the FlashArray and FlashBlade secrets during startup and uses the specified FlashArray and FlashBlade for backend storage.

Verify Portworx installation

After installing Portworx CSI, verify the status of the Portworx cluster and pods to ensure everything is running correctly.

  1. Verify that all Portworx pods are running.
    kubectl get pods -n <portworx> -o wide | grep -e portworx -e px
  2. Check the status of the Portworx cluster.
    pxctl status
  3. Verify the status of the Portworx cluster provision.
    kubectl get stc -n <portworx>

Portworx CSI license

By default, the Portworx CSI for FA/FB license is applied when you install Portworx CSI. You can verify the status and capabilities of the license using the pxctl license list command.

pxctl license list
DESCRIPTION                                     ENABLEMENT              ADDITIONAL INFO
Number of nodes maximum 1000
Number of attached volumes per node maximum 128
Bare-metal hosts yes
Virtual machine hosts yes
Number of Pure volumes per cluster maximum 100000
Product SKU Portworx CSI for FA/FB lease renewal in 23h, 46m