今回は、
「vSAN環境のディスク個別の容量の話」
というタイトルでお送りします。
前回、
「vSANデータストアに関する障害の話 - 器用貧乏、仮想化をあつかう
https://masaod94.hatenablog.com/entry/2021/10/23/000000」
で書いた話のときに知ったことで、
以下に記載のコマンドを実行すると、、、
vSANクラスタ内のホストに搭載された
Capacity TierのDiskそれぞれの使用容量が一覧で表示可能です。
cmmds-tool find -t HOSTNAME -f json | egrep "uuid|hostname" | sed -e 's/\"content\"://g' | awk '{print $2}' | sed -e 's/[\",\},\,]//g' | xargs -n 2 | while read hostuuid hostname; do echo -e "\n\nHost Name: $hostname::: Host UUID: $hostuuid\n Disk Name\t\t| Disk UUID\t\t | Disk Usage | Disk Capacity | Usage Percentage" ; cmmds-tool find -f json -t DISK -o $hostuuid | egrep "uuid|content" |sed -e 's/\"content\":|\\"uuid\"://g' | sed -e 's/[\",\},\]//g' | awk '{printf $0}' | sed -e 's/isEncrypted: [0-9]/\n/g'| awk '{print $37 " " $2 " " $5 " " $45}'| while read disknaa diskuuid diskcap maxcomp; do diskcapused=$(cmmds-tool find -f json -t DISK_STATUS -u $diskuuid |grep content |sed -e 's/[\",\},\]//g' | awk '{print $3}'); diskperc=$(echo "$diskcapused $diskcap" | awk '{print $1/$2*100}'); if [ "$maxcomp" != 0 ];then echo -en " $disknaa\t| $diskuuid\t| $diskcapused\t | $diskcap\t | $diskperc%\n"; fi; done; done
ちなみに出力例は、こんな感じになります。
(実データなので固有の情報は省いて転記してますが)
HostName: ESXihostname::: Host UUID:
DiskName|Disk UUID| Disk Usage | Disk Capacity | Usage Percentage
naa. | | 894307540929 | 1515646136320 | 59.005%
naa. | | 945761351297 | 1515646136320 | 62.3999%
naa. | | 1285277856646 | 1820566986752 | 70.5977%
naa. | | 987305565919 | 1515646136320 | 65.1409%
naa. | | 987305565919 | 1515646136320 | 65.1409%
naa. | | 1132718718976 | 1515646136320 | 74.735%
naa. | | 945761351297 | 1515646136320 | 62.3999%
上記の物がクラスタ内のホスト台数分ズラーっと出てくる感じですね。
ご参考まで。