--- title: "See current filesystem utilization - PV autoscaling" slug: "monitor-k8s" updated: 2026-07-21T09:45:50Z published: 2026-07-21T09:45:50Z canonical: "docs.zesty.co/monitor-k8s" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.zesty.co/llms.txt > Use this file to discover all available pages before exploring further. # See current filesystem utilization - PV autoscaling This topic describes various ways to monitor PV autoscaling. Click the link for more information about the desired monitoring method: - [Monitor from the Zesty platform](/v1/docs/monitor-k8s#monitor-from-the-zesty-platform) - [Monitor from Prometheus](/v1/docs/monitor-k8s#monitor-from-prometheus) - [Monitor from Grafana](/v1/docs/monitor-k8s#monitor-from-grafana) - [Monitor with the Kubectl plugin](/v1/docs/monitor-k8s#monitor-with-the-kubectl-plugin) ### Monitor from the Zesty platform #### Prerequisites - Access to the Zesty platform For more information, contact [Customer Support](https://zesty.co/contact-us/?support). #### To monitor Zesty Disk from the Zesty platform: 1. Log in to the Zesty platform at [https://app.zesty.co](https://app.zesty.co) 2. From the main menu, select **Zesty Disk**. 3. From the Managed filesystems tab, review the filesystems that are managed by Zesty Disk, marked as ![](https://cdn.document360.io/0eb80240-664b-49f5-9181-5713ddf9f725/Images/Documentation/zd_managed_by(2).png) 4. Select a filesystem and review filesystem data: ![](https://cdn.document360.io/0eb80240-664b-49f5-9181-5713ddf9f725/Images/Documentation/zd_k8s_tags.png) - In the Metrics tab, you can see the capacity, IOPS, and throughput changes. - In the Tags tab, you can see instance and volume tags. Note the “kubernetes.io/created-for/pvc/name” tag whose value is the Zesty PVC name. ### Monitor from Prometheus To monitor using Prometheus you need to install the PV autoscaling with the Prometheus exporter option. Once installed, Zesty automatically adds the annotations below to the Zesty Storage Agent so it can be discovered by Prometheus. For more details, see [Deploy PV autoscaling](/v1/docs/deploy-storage-autoscaling). ```plaintext prometheus.io/port= prometheus.io/scrape=true ``` #### Available queries You can query the following utilization parameters: - Total PVC capacity `label_replace(sum(kubelet_volume_stats_capacity_bytes) / 1024 / 1024 / 1024, "metric", "Total PVC's capacity", "", "")` - Total PVC used size `label_replace(sum(kubelet_volume_stats_used_bytes) / 1024 / 1024 / 1024, "metric", "Total PVC's used size", "", "")` - PVC average utilization `label_replace(avg(kubelet_volume_stats_used_bytes / kubelet_volume_stats_capacity_bytes) * 100, "metric", "PVC's avg utilization", "", "")` - Amount of PVs in cluster `label_replace(count(kube_persistentvolume_info{csi_driver="ebs.csi.aws.com", job="kubernetes-services"}), "metric", "Amount of PVs in cluster", "", ""` - Amount of StatefulSet PVs in cluster `label_replace(count(kube_persistentvolume_info{csi_driver="ebs.csi.aws.com", job="kubernetes-services"}), "metric", "Amount of Statefulset PV's in cluster", "", "")` - Average PV size `label_replace(avg(kubelet_volume_stats_capacity_bytes) / 1024 / 1024 / 1024, "metric", "Average PV Size", "", "")` - Amount of StatefulSets PVCs in cluster `label_replace(count(kube_statefulset_persistentvolumeclaim_retention_policy{job="kubernetes-services"}), "metric", "Amount of StatefulSets in cluster", "", "")` - Amount of PVCs in cluster `label_replace(count(kube_persistentvolumeclaim_info{csi_driver="ebs.csi.aws.com", job="kubernetes-services"}), "metric", "Amount of PVCs in cluster", "", "")` ### Monitor from Grafana Zesty provides a custom Grafana dashboard that shows PV autoscaling PVCs metrics. To import the dashboard to your Grafana, use the following link: [https://static.zesty.co/ZestyDiskPVC/zesty-pvc-grafana-dashboard.json](https://static.zesty.co/ZestyDiskPVC/zesty-pvc-grafana-dashboard.json) ### Monitor with the Kubectl plugin You can use the Kubectl plugin to generate a CSV with relevant workload and storage information for a Kubernetes cluster. The CSV provides insights into workload types, storage capacities, your storage footprint and more. The CSV includes information about the workload name and type, the Pod name, PV name and size, usage, and utilization. The CSV output is sorted by PV size (descending). PV autoscaling PVs are not included. To install Krew, see [Windows](https://krew.sigs.k8s.io/docs/user-guide/setup/install/) or [MacOS](https://formulae.brew.sh/formula/krew). To use the plugin, you need to install it first. #### Prerequisites - Kubectl is installed #### To install the Zesty Kubectl plugin: 1. Add the Zesty repository to Krew index: `kubectl krew index add zestyIndex https://github.com/zesty-co/kubectl-plugin.git` 2. Verify the repo was added successfully: `kubectl krew index list` 3. Install the plugin: `kubectl krew install zestyIndex/zesty` 4. Verify that the plugin was installed successfully: `kubectl krew list` 5. Validate the Kubectl context: `kubectl config current-context` The current cluster’s name will be displayed. #### To use the kubectl plugin: The following table describes the plugin commands to export information about cluster PVs to a CSV: | To export this | Run this command | Example | | --- | --- | --- | | For PVs in all namespaces, with the default output location | `kubectl zesty generate pv-summary` | `kubectl zesty generate pv-summary` | | For PVs in a specific namespace | `kubectl zesty generate pv-summary --namespace=<name>` | `kubectl zesty generate pv-summary --namespace=default` | | To specify an output path | `kubectl zesty generate pv-summary --output=<path>.csv` | `kubectl zesty generate pv-summary --output=/custom/path/report.csv` | | For PVs in a specific namespace and output path | `kubectl zesty generate pv-summary --namespace=<name> --output=<path>.csv` | `kubectl zesty generate pv-summary --namespace=default --output=/custom/path/report.csv` | | Additional filters | `--workload-type=<type> \` `--min-size=<X>Gi \` `--max-size=<X>Gii \` | `--workload-type=StatefulSet \` `--min-size=1Gi \` `--max-size=100Gi \` |