July 15

Very simple and stupid script to check VM ram and CPU using virsh

#!/bin/bash
for i in $(virsh list --all|grep VM|awk '{print $2}');do
cores=$(virsh dumpxml "$i"|grep -w vcpu|awk -F'>' '{print $2}'|awk -F'<' '{print $1}')
ram_kb=$(virsh dumpxml "$i"|grep "memory unit"|awk -F'>' '{print $2}'|awk -F'<' '{print $1}')
ram=$((ram_kb / 1024 / 1024))

echo -e "-----> $i info:\nCPU: $cores\nRAM: $ram GB"
for disks_list in $(virsh dumpxml "$i"|grep "/var/lib/libvirt/images/"|awk -F"'" '{print $2}');do
image_size=$(ls -alh "$disks_list"|awk '{print $5}')
echo -e "DISK: $image_size\nDisk location: $disks_list"
done
echo -e "\n\n"
done


Copyright 2021. All rights reserved.

Posted 15 July 2025 by admin in category "simple memo

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.