mirror of
https://github.com/kubernetes/kubernetes.git
synced 2026-03-10 18:40:55 -04:00
Automatic merge from submit-queue (batch tested with PRs 58317, 58687, 57872, 59063, 59328). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Volume metrics support for vSphere Cloud Provider **What this PR does / why we need it**: This PR adds Volume metrics support for vSphere Cloud Provider. With this we can monitor the available space, capacity and used space on volumes created using vSphere. **Which issue(s) this PR fixes** Fixes # https://github.com/kubernetes/kubernetes/issues/43527 Fixes # https://github.com/vmware/kubernetes/issues/208 **Special notes for your reviewer**: Performed following steps to ensure metrics are reported correctly for vSphere Volumes. - Created Dynamic PV using the PV claim of size 1Gi. ``` $ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE thinclaim Bound pvc-bbc18f6a-0a04-11e8-bb1c-0050569c126b 1Gi RWO thin 5m ``` - Created Pod using this claim. - Verified volume stats metrics. ``` / # df -h | grep /dev/sdb Filesystem Size Used Available Use% Mounted on /dev/sdb 975.9M 1.3M 923.4M 0% /mnt/volume1 ``` ``` # HELP kubelet_volume_stats_available_bytes Number of available bytes in the volume # TYPE kubelet_volume_stats_available_bytes gauge kubelet_volume_stats_available_bytes{namespace="default",persistentvolumeclaim="thinclaim"} 9.68261632e+08 # HELP kubelet_volume_stats_capacity_bytes Capacity in bytes of the volume # TYPE kubelet_volume_stats_capacity_bytes gauge kubelet_volume_stats_capacity_bytes{namespace="default",persistentvolumeclaim="thinclaim"} 1.02330368e+09 # HELP kubelet_volume_stats_used_bytes Number of used bytes in the volume # TYPE kubelet_volume_stats_used_bytes gauge kubelet_volume_stats_used_bytes{namespace="default",persistentvolumeclaim="thinclaim"} 1.355776e+06 ``` - Download 512MB file in the Pod on attached volume and Verified volume stats metrics is updated successfully. ``` /mnt/volume1 # df -h | grep /dev/sdb Filesystem Size Used Available Use% Mounted on /dev/sdb 975.9M 513.8M 410.9M 56% /mnt/volume1 ``` ``` # HELP kubelet_volume_stats_available_bytes Number of available bytes in the volume # TYPE kubelet_volume_stats_available_bytes gauge kubelet_volume_stats_available_bytes{namespace="default",persistentvolumeclaim="thinclaim"} 4.30862336e+08 # HELP kubelet_volume_stats_capacity_bytes Capacity in bytes of the volume # TYPE kubelet_volume_stats_capacity_bytes gauge kubelet_volume_stats_capacity_bytes{namespace="default",persistentvolumeclaim="thinclaim"} 1.02330368e+09 # HELP kubelet_volume_stats_used_bytes Number of used bytes in the volume # TYPE kubelet_volume_stats_used_bytes gauge kubelet_volume_stats_used_bytes{namespace="default",persistentvolumeclaim="thinclaim"} 5.38755072e+08 ``` **Release note**: ```release-note Volume metrics support for vSphere Cloud Provider ``` |
||
|---|---|---|
| .. | ||
| aws_ebs | ||
| azure_dd | ||
| azure_file | ||
| cephfs | ||
| cinder | ||
| configmap | ||
| csi | ||
| downwardapi | ||
| empty_dir | ||
| fc | ||
| flexvolume | ||
| flocker | ||
| gce_pd | ||
| git_repo | ||
| glusterfs | ||
| host_path | ||
| iscsi | ||
| local | ||
| nfs | ||
| photon_pd | ||
| portworx | ||
| projected | ||
| quobyte | ||
| rbd | ||
| scaleio | ||
| secret | ||
| storageos | ||
| testing | ||
| util | ||
| validation | ||
| vsphere_volume | ||
| BUILD | ||
| doc.go | ||
| metrics_cached.go | ||
| metrics_du.go | ||
| metrics_du_test.go | ||
| metrics_errors.go | ||
| metrics_nil.go | ||
| metrics_nil_test.go | ||
| metrics_statfs.go | ||
| metrics_statfs_test.go | ||
| OWNERS | ||
| plugins.go | ||
| plugins_test.go | ||
| util.go | ||
| util_test.go | ||
| volume.go | ||
| volume_linux.go | ||
| volume_unsupported.go | ||