I've been wondering whether there's a tool for monitoring how OpenStack is using physical resources (cluster [cpus, ram], network [interfaces, switches]) for its virtual infrastructures? The virtual infrastructures are visible in Horizon, however how this has been mapped to the physical resources is not. Is there a way to get this information?
Added Monitoring resource utilisation on the physical infrastructure is one thing (thank you Jeroen for showing me the direction), however what also interests me is information such as VM X is running on CPU Y on host Z using interface A and disk B (where Y, Z, A, B are parts of a cluster where OpenStack is running at). OpenStack needs to keep this information somehow, so I'm wondering whether there's any tool for that or a way to extract it or whether it requires some hacking on my own?
Also what interests me is how OpenStack decides which resources should be assigned to a starting vm instances. Let's say that OpenStack is running on some cluster and someone is starting a vm instance. How does it assign physical resources to it from the cluster? Is it using any clever strategy or algorithm or is it random? Could you please list any sources, which could be helpful for the further studies of this problem? Which is resource allocation in IAAS, especially in OpenStack.