All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.
Tracking bandwidth usage KVM node

I'm trying to find how much bandwidth is being used by each VM on one of our KVM nodes. We are using the Virtualizor but the backend doesn't seem to have proper bandwidth monitoring. There is traffic accounting of sorts, but it's not a live read out of the network utilization. As far as I can see, there is no display in /mbit, which makes tracking down bandwidth hogs a little tricky.
I'm sure KVM has the monitoring tools built in but I'm not too familiar with KVM yet.
Our traditional monitoring tools like SNMP on switches and Netflow onrouters are fine for finding big stuff but identifying an individual VM is providing to be quite time consuming and with a significant margin of error.
SNMP on the switch only shows how much bandwidth is being used on the switch port, so not very useful. And Netflow is showing details of traffic for the router handling multiple gigabit of traffic, so tracking down a 100Mbit of usage among Gigabits of traffic is unfortunately quite unclear. Netflow directly on the KVM node would be nice, but I'm not sure if NetFlow is supported.
Anyone have any suggestions?
Comments
I am looking for a similar tools which provide per IP traffic analysis in real time basis .
virt-top -2 -o nettx
virt-top -2 -o netrx
Works on both SolusVM/Virtualizor servers. Displays in/out bytes and packets.
Example:
Perhaps do a quick loop through using iftop on the bridged interfaces on the host node?
Yes using iftop but wanted something which logs in some x minutes basis for all nodes together
vnstat?
does this per IP checking options ? seems it shows total node servers which is quite useless for purpose
atopsar
Per network interface. If there is only one network interface that host can see, it won't work.
Is that for physical interface or does it work on bridged ones too?
It gets data from kernel (you can get that same data from /proc/something_i_dont_remember), so If the interface you want to monitor/log is shown in ifconfig you can easily configure vnstat to log that interface data.
Wow wonder how a provider can offer services and not even know the basics ...
Because we are mainly doing dedicated servers, and then Xen and Virtuozzo based VMs, and only recently KVM.
It's not so basic any way. Getting raw data is not the same thing as being able to get useful, human readable data. And getting instant LIVE data does not show the full picture, since you often need at least several minutes of logs to get an average over a given period of time.
Don't forget that there is a lot of data to sift through sometimes. Even if your monitoring logs are extremely accurate, it is jumbled up with lots of other data, and finding what you are looking for is not always so easy.
You can think of it a bit like calculating your fuel economy when driving. Easiest way to get average fuel economy is to divide distance over fuel consumed, but what if you want to know about a specific time frame between fuel stops, or between drivers, or between different types of traffic conditions. Then what if you have a fleet of cars of different make/models, using different fuel types and different cost of fuels... When you deal with a lot of different data, it's not always terribly easy to manage and collate.
Would suggest using vnstat, works pretty fine for us - especially with KVM. You just need to run a script periodically which adds / removes new guest interfaces to vnstat.
iptraf shows live traffic in/out in mbps for each VM.
virsh domifstat vmname vmnicname
Visit Impanix to gain complete knowledge about spamming internet forums.
[Edited by Amitz]
Okay.
@Amitz
Done. ;-)