Skip to content

perf101/xenserver-perf-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XenServer Performance Tools

Description

A set of tools intended to ease the collection, processing, visualisation and analysis of performance data generated by XenServer.

XenServer RRD Tools

These tools automate the visualisation of RRD data stored in XenServer. They provide a facility to extract the RRD data and apply filters to visualise specific variables of interest.

Examples

xsrrd2gnuplot

The xsrrd2gnuplot tool is a shortcut for xsrrd2dat + xsdat2gnuplot.

  1. Generate graphs for cpus, vifs, vbds, memory in guests
    xsrrd2gnuplot <path_to>/var/xapi/blobs/rrds

The output will be gnuplot files in the current directory:

    ./guests_rrd_data_cpu*_600.gnuplot
    ./guests_rrd_data_cpu*_7200.gnuplot
    ./guests_rrd_data_cpu*_604800.gnuplot
    ./guests_rrd_data_cpu*_31622400.gnuplot
    etc

where the numbers 600, 7200 etc indicate the granularity of the RRD data, in seconds.

To visualise the resulting graph, you can either run

    gnuplot ./guests_rrd_data_cpu*_600.gnuplot

or

    ./guests_rrd_data_cpu*_600.gnuplot
  1. Generate graphs for vifs in guests
    xsrrd2gnuplot <path_to>/var/xapi/blobs/rrds guests vif*
  1. Generate graphs for cpu usage in host
    xsrrd2gnuplot <path_to>/var/xapi/blobs/rrds dom0 cpu*
  1. Generate graphs for loadavg in dom0
    xsrrd2gnuplot <path_to>/var/xapi/blobs/rrds dom0 loadavg
  1. Generate graphs for pifs in dom0
    xsrrd2gnuplot <path_to>/var/xapi/blobs/rrds dom0 pif*

xsrrd2dat

  1. Parse an existing set of XenServer RRD files into /tmp/dat:
    mkdir /tmp/dat
    xsrrd2dat <path>/var/xapi/blobs/rrds /tmp/dat

Each vm will have its own dat- directory inside /tmp/dat.

The resulting *.dat files can be loaded eg. in a spreadsheet to create graphs or be further processed using xsdat2gnuplot. The first column of the *.dat files corresponds to the timestamp of the measurement in posix time, and the second column corresponds to the value of the measurement.

xsdat2gnuplot

  1. Create gnuplot files from data for all cpus:
    ./xsdat2gnuplot dom0 "cpu*" /tmp/dat /tmp/dat
  1. The quotes are important:
    ./xsdat2gnuplot guests "cpu*" /tmp/dat /tmp/dat
  1. Create gnuplot files from data for specific guest cpus:
    ./xsdat2gnuplot guests "cpu{0,2}" /tmp/dat /tmp/dat
  1. Output the gnuplot files from data in the current directory:
    ./xsdat2gnuplot guests "cpu{0,2}" /tmp/dat
  1. Create gnuplot files from data for all guest vifs:
    ./xsdat2gnuplot guests "vif*" /tmp/dat
  1. Create gnuplot files from data for guest memory usage:
    ./xsdat2gnuplot guests "memory*" /tmp/dat
  1. Create gnuplot files from data for a specific guest vbd:
    ./xsdat2gnuplot guests "vbd_hda_write" /tmp/dat
  1. Create gnuplot files from data for dom0 pifs:
    ./xsdat2gnuplot dom0 "pif_eth*" /tmp/dat

Tools used

  • rrddump. A binary of rrddump is also provided as a convenience.
  • gnuplot. You should have gnuplot installed to plot the *.gnuplot files in the output.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published