Since Graphite renders graphs using Cairo, it depends on several graphics-related libraries not typically found on a server. If you’re installing from source you can use the check-dependencies.py script to see if the dependencies have been met or not.
In general, Graphite requires:
Also both the Graphite webapp and Carbon require the whisper database library.
There are also several optional dependencies, some of which are necessary for high performance.
See also
On some systems it is necessary to install some fonts, if you get the webapp running and only see broken images instead of graphs, this is probably why.
Usually the hardest dependency to fulfill is Pycairo because it requires Cairo, which in turn requires fontconfig, etc... Often your distribution’s package manager will be able to install cairo and all of its dependencies for you, but in order to build Pycairo (which is often not covered by the package manager) you’ll need the cairo-devel package so C headers are available.
We are currently working on getting RPMs and DEB packages ready for Graphite. As of this writing, Whisper is available in Ubuntu. To install it you can simply:
apt-get install python-whisper
The Graphite webapp and Carbon do not yet have binary packages available.
You can download the latest source tarballs for grahite, carbon, and whisper from the Graphite project page, https://launchpad.net/graphite
To install, simply extract the tarball and install like any other python package.
# First we install whisper, as both Carbon and Graphite require it
tar zxf whisper-0.9.8.tgz
cd whisper-0.9.8/
sudo python2.6 setup.py install
cd ..
# Now we install carbon
tar zxf carbon-0.9.8.tgz
cd carbon-0.9.8/
sudo python2.6 setup.py install
cd ..
# Finally, the graphite webapp
tar zxf graphite-web-0.9.8.tgz
cd graphite-web-0.9.8/
./check-dependencies.py
# once all dependencies are met...
sudo python2.6 setup.py install
This will install whisper as a site-package, while Carbon and Graphite will be installed in /opt/graphite/.
If you run into any issues with Graphite, feel free to post a question to our Questions forum on Launchpad
That covers the basics, the next thing you should probably read about is The URL API.