This topic describes how to deploy and configure Storage Autoscaling. Installation is based on a Helm chart published in github repo.
Prerequisites
- A running EKS cluster, v1.7 or later, with the EBS CSI add-on installed, with one storage class defined 
- Kubectl is installed 
- Access to the Zesty platform 
 For more information, contact Customer Support.
- The Zesty API key 
 For more information, see Find your Zesty API key.
- Outbound HTTPS communication from cluster nodes 
- The AWS account ID of the cluster on which Storage Autoscaling is being installed 
 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 Storage Autoscaling:
- 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
 
- 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=<PORT> - No - Enables the Prometheus exported for Storage Autoscaling solution. We recommend using the Prometheus default port, 8443. - agentManager.prometheusExporter.podMonitor.enabled=<bool> - No - Enables Prometheus autodiscovery of Zesty metrics. - "tolerations[0].operator=<VALUE>,tolerations[0].effect=<VALUE>,tolerations[0].key=<KEY>" - No - Configures tolerations roles. You can set as many as needed while making sure to increase the list index number. - "nodeSelector.<KEY>=<VALUE>" - No - Configures on which nodes Storage 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=<storageClass name> - No - Configures which storage class Storage 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 <Namespace> - No - Specifies on which namespace Storage Autoscaling resources will be deployed.