On Sat, Jun 24, 2006 at 09:24:40AM +0100, Ian Pratt wrote:
> > Is it realistic to use XML-RPC for tasks such as resource monitoring?
> > Seems like there should be an optional, lower-latency, lighter-weight
> > mechanism to retrieve things such as host_cpu.utilisation,
> > VBD.IO_bandwidth/incoming_kbs, etc.
> The whole stats reporting interface certainly needs more thought.
> However, I think it definitely should still use the xml-rpc interface,
> we just need to 'cook' the raw data into something more directly useful
> within xend so that there's no need to do high-rate polling on the API.
> This might involve using something like rrdtool to generate averages
> over different time scales etc.
Cooking the data before making it available to applications is not very
desirable, because it is making an assumption that the way XenD cooks
it is compatible with the format in which monitoring applications need
the data for processing / analysis. It would be like saying you can only
access Linux kernel performance stats from the averaged SAR records - it
is fine if all you want to do with the data is render graphs, or perform
long term trend analysis, however, if you want to analyse the 'live' data
to do actively monitor system performance you really need access to the
raw data over a low-latency, high performance channel.
It may be that this is impossible over a protocol like XML-RPC, in which
case we need to consider an alternate channel enabling local applications
to bypass XML-RPC and collect the raw performance / utilization statitics
without incurring a performance hit. Perhaps this alternate channel is
simply to make direct HyperCalls, which is something libvirt already does
when running as root - calling virDomainGetInfo to collect a domain's
CPU utilization is about 350x faster when dones as a hypercall, compared
to using HTTP/SEXPR
|=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=|
|=- Perl modules: http://search.cpan.org/~danberr/ -=|
|=- Projects: http://freshmeat.net/~danielpb/ -=|
|=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|
xen-api mailing list