> version. Another way is to open the console and see the login screen. > This will get the actual data but I want to do automation to see for > all VM's and opening the console is not feasible to automate. Is > there any other way to get it?
Are the VMs networked? You could fetch their public IPs and run nmap -sS -O against them. This should produce fairly accurate results. If they are all on the same Cloudstack network, you could also SSH into a connected VM and run nmap from there. I don't think that there is a generic way to obtain the actual OS running on a VM via Cloudstack. It might be possible through the hypervisor, but nmap will work in most cases.