better bandwidth monitoring display


Is it possible to filter the bandwidth display on a per server, and per group basis? i.e. when I view bandwidth graphs, I get all the servers & virtual machines listed. Since we need to bill clients for bandwidth usage, it would be easier to show all VM's on a specific server, and also a specific group. We have multiple servers in different datacentres around the world, so bandwidth costs differ from DC to DC.



Did anyone notice this feature request?

Sorry, I didn't see this one..

If you are looking for a way to have more control over bandwidth information for billing purposes, you can just the cloudmin list-bandwidth shell command. This can output daily stats by host or group, which you could then combine to get whatever totals you need..

Thanx Jamie,

How do I output the total output for a whole month, for a single host?

It seems like this command gives me the bandwidth for every single day, if I specify the following:

cloudmin list-bandwidth --start 2011-01-01 --end 2011-01-31 --host opennation

30/Jan/2011 08:00    14.39 MB     13.19 MB     42799        18086
30/Jan/2011 09:00    13.96 MB     12 MB        47957        16639
30/Jan/2011 10:00    13.83 MB     12.48 MB     43555        17391
30/Jan/2011 11:00    14.93 MB     12.89 MB     50027        17817
30/Jan/2011 12:00    14.35 MB     12.47 MB     47690        17297
30/Jan/2011 13:00    14.07 MB     12.74 MB     43267        17851
30/Jan/2011 14:00    14.15 MB     12.77 MB     44231        17909
30/Jan/2011 15:00    12.86 MB     11.28 MB     44040        15853
30/Jan/2011 16:00    13.36 MB     11.80 MB     45015        16718
30/Jan/2011 17:00    12.74 MB     11.21 MB     43241        15776
30/Jan/2011 18:00    11.89 MB     10.31 MB     42491        14734
30/Jan/2011 19:00    11.60 MB     9.54 MB      43465        13599
30/Jan/2011 20:00    9.90 MB      8.04 MB      40517        11411
30/Jan/2011 21:00    8.29 MB      6.57 MB      35558        9594
30/Jan/2011 22:00    8.50 MB      6.59 MB      37397        9749
30/Jan/2011 23:00    10.91 MB     8.90 MB      42203        12813
31/Jan/2011 00:00    11.07 MB     9.64 MB      38715        13669

There's no way yet to get a summary, but it shouldn't be too hard to write code to sum up each hour's usage over a month. You could even do it from a shell script, like :

cloudmin list-bandwidth --start 2011-01-01 --end 2011-01-31 --host opennation | awk '{ sum += $3 } END { print sum }'

This would print the sum of the input column.

Thanx Jamie.

How do I get the bandwidth broken down into daily sections, instead of hourly?

And, how can I get the total bandwidth usage for each VM on a given server?

You would have to sum up hourly usage yourself to get daily stats.

To get usage by host system, you can make use of the --host-on flag to limit output to VMs on a specific host.

Jamie, you mis-understood what I'm asking.

On a XEN server with say 10 VM's, how do I get the total for each VM on that server in one go?

You can get the total for the current accounting period with a command like :

cloudmin list-systems --host-on yourxenhost --multiline | grep "Bandwidth usage towards limit"

thanx. That doesn't quite work as well:

root@master1:[~]$ cloudmin list-systems --host-on zaxen01 --multiline | grep "Bandwidth usage towards limit" Bandwidth usage towards limit: 0 bytes Bandwidth usage towards limit: 554.88 MB Bandwidth usage towards limit: 132.84 MB Bandwidth usage towards limit: 172.61 MB Bandwidth usage towards limit: 135.61 MB

Jamie, I realize this doesn't exist right now. So, please consider adding it as a feature: To quickly see each Virtual Machines total bandwidth usage, and over-usage at the end of the month for the whole month. It would be great if it can be done from the interface, from the commandline and the API

Ok, so what you really want to see is usage for the previous billing period (month), after the month has completed?

In the next Cloudmin release you will be able to get this info from the list-systems API command, with the period-ago parameter to select how many months ago to show data for.

Also, you can see it in the UI already at System Monitoring -> Overall Bandwidth Graph. By default that page shows the current period, but you can select a different period from the menu at the top.