Deploy PV autoscaling

Deploy PV autoscaling

This topic describes how to deploy and configure PV autoscaling. Installation is based on a Helm chart published in github repo.

Prerequisites

Before deploying, share this ID with a Zesty Customer Support representative. Note that this ID may be different than the one from the Management account (formerly known as Master Payer account).

To install PV autoscaling:

  1. Add or update the Zesty repository to your Helm client:
    • To add the repository:

      helm repo add zestyrepo https://zesty-co.github.io/zesty-helm

    • If the repository is already configured, update it:

      helm repo update

  2. Install the Zesty PVC Helm chart:
   # Minimal
   helm install zesty-pvc --set agentManager.apiKey=<API_KEY> zestyrepo/zesty
   
   # With advanced options
   helm install zesty-pvc --set agentManager.apiKey=<API_KEY> /  
   [--set agentManager.prometheusExporter.port=<PORT>] /  
   [--set "tolerations[0].operator=<VALUE>,tolerations[0].effect=<VALUE>,tolerations[0].key=<KEY>"] /  
   [--set "nodeSelector.<KEY>=<VALUE>"] /  
   [--set storageClassName=<storageClass name>] /  
   [--namespace <Namespace>] /  

The following table describes the popular command arguments. For the full arguments list, see the Helm chart at https://zesty-co.github.io/zesty-helm/.

Argument Mandatory Description
agentManager.apiKey=<API_KEY> Yes Enter the Zesty-provided API Key. You can also enter the API key as a secret, as described in the Helm chart. To get your API key, see Find your Zesty API key.
agentManager.prometheusExporter.port= No Enables the Prometheus exported for PV autoscaling solution. We recommend using the Prometheus default port, 8443.
agentManager.prometheusExporter.podMonitor.enabled= No Enables Prometheus autodiscovery of Zesty metrics.
"tolerations[0].operator=,tolerations[0].effect=,tolerations[0].key=" No Configures tolerations roles. You can set as many as needed while making sure to increase the list index number.
"nodeSelector.=" No Configures on which nodes PV autoscaling is allowed. Use quotes to avoid shell issues.
For example, “nodeSelector.kubernetes.io/os=linux”. Note the ‘\’ before the “.io” in the node selector key that is used as an escape character.
--set storageClassName= No Configures which storage class PV autoscaling will use to provision new disks. If this is not set, the first one found with EBS CSI provisioner (ebs.csi.aws.com) is used.
--namespace No Specifies on which namespace PV autoscaling resources will be deployed.