Skip to main content
Version: 3.4

Installation of Portworx with FlashArray using Helm

This page provides step-by-step instructions for deploying Portworx Enterprise with Pure Storage FlashArray as the backend storage using Portworx Helm charts.

The following collection of tasks describe how to install Portworx with FlashArray:

Complete all the tasks to install Portworx.

Prerequisites

Deploy Portworx

For this example we will deploy Portworx in the portworx namespace. If you want to install it in a different namespace, use the -n <px-namespace> flag.

  1. To install Portworx, add the portworx/helm repository to your local Helm repository.

    helm repo add portworx https://raw.githubusercontent.com/portworx/helm/master/stable/
    "portworx" has been added to your repositories
  2. Verify that the repository has been successfully added.

    helm repo list
    NAME    	URL                                                           
    portworx https://raw.githubusercontent.com/portworx/helm/master/stable/
  3. Create a px_install_values.yaml file and add the following parameters.

    • openshiftInstall – Set to true to install Portworx Enterprise on OpenShift Container Platform (OCP).
    • Environment variable PURE_FLASHARRAY_SAN_TYPE – Set based on the SAN protocol used to connect to FlashArray. Possible values are:
      • ISCSI
      • NVMEOF-RDMA
      • NVMEOF-TCP
      • FC
    openshiftInstall: true
    drives: size=150
    envs:
    - name: PURE_FLASHARRAY_SAN_TYPE
    value: ISCSI
  4. In many cases, you may want to customize Portworx configurations, such as enabling monitoring or specifying specific storage devices. You can pass the custom configuration to the px_install_values.yaml yaml file.

    note
    • You can refer to the Portworx Helm chart parameters for a list of configurable parameters and values.yaml file for configuration file template.
    • The default clusterName is mycluster. However, it's recommended to change it to a unique identifier to avoid conflicts in multi-cluster environments.
  5. Install Portworx using the following command:

    note

    To install a specific version of Helm chart, you can use the --version flag. Example: helm install <px-release> portworx/portworx --version <helm-chart-version>.

    helm install <px-release> portworx/portworx -n <portworx> -f px_install_values.yaml --debug
  6. You can check the status of your Portworx installation.

    helm status <px-release> -n portworx
    NAME: px-release
    LAST DEPLOYED: Thu Sep 26 05:53:17 2024
    NAMESPACE: portworx
    STATUS: deployed
    REVISION: 1
    TEST SUITE: None
    NOTES:
    Your Release is named "px-release"
    Portworx Pods should be running on each node in your cluster.

    Portworx would create a unified pool of the disks attached to your Kubernetes nodes.
    No further action should be required and you are ready to consume Portworx Volumes as part of your application data requirements.

Update Portworx configuration

If you need to update the configuration of Portworx, you can modify the parameters in the px_install_values.yaml file specified during the Helm installation. This allows you to change the values of configuration parameters.

  1. Create or edit the px_install_values.yaml file to update the desired parameters.

    vim px_install_values.yaml
    monitoring:
    telemetry: false
    grafana: true
  2. Apply the changes using the following command:

    helm upgrade <px-release> portworx/portworx -n <portworx> -f px_install_values.yaml
    Release "px-release" has been upgraded. Happy Helming!
    NAME: px-release
    LAST DEPLOYED: Thu Sep 26 06:42:20 2024
    NAMESPACE: portworx
    STATUS: deployed
    REVISION: 2
    TEST SUITE: None
    NOTES:
    Your Release is named "px-release"
    Portworx Pods should be running on each node in your cluster.

    Portworx would create a unified pool of the disks attached to your Kubernetes nodes.
    No further action should be required and you are ready to consume Portworx Volumes as part of your application data requirements.
  3. Verify that the new values have taken effect.

    helm get values <px-release> -n <portworx>

    You should see all the custom configurations passed using the px_install_values.yaml file.

What to do next

Create a PVC: