Add kvmstats.sh script

This commit is contained in:
Alexis Ben Miloud--Josselin 2018-06-01 18:31:10 +02:00
parent 663d38d808
commit 2f86db5cb7
1 changed files with 26 additions and 0 deletions

26
kvmstats.sh Normal file
View File

@ -0,0 +1,26 @@
#!/bin/sh
TMPFILE=$(tempfile)
for VM in $(virsh list --all --name)
do
VCPU=$(hxselect -c 'domain vcpu' </etc/libvirt/qemu/$VM.xml)
RAM=$(hxselect -c 'domain memory' </etc/libvirt/qemu/$VM.xml)
for DEV in $(hxselect -s'\n' 'domain devices disk[device=disk] source' </etc/libvirt/qemu/$VM.xml | cut -d\" -f2)
do
case $DEV in
/dev/drbd/*) DISK=$(lvs --units b --nosuffix | awk "/$VM/ { ans += \$NF } END { print ans / 1024^3 }") ;;
*.qcow2) DISK=$(du -sBG $DEV | awk '{ print substr($1, 0, length($1) - 1) }') ;;
*) DISK=0;;
esac
done
echo $VM $VCPU $RAM $DISK
done >$TMPFILE
(
echo vm vcpu ram disk
cat $TMPFILE
awk '{ vcpu += $2; ram += $3; disk += $4 } END { print "TOTAL", vcpu, ram, disk }' <$TMPFILE
) | column -t
rm $TMPFILE