Skip to content

Instantly share code, notes, and snippets.

@voduytuan
Forked from relaxdiego/graphite.md
Last active August 29, 2015 14:22
Show Gist options
  • Save voduytuan/74ce426f52395d24113d to your computer and use it in GitHub Desktop.
Save voduytuan/74ce426f52395d24113d to your computer and use it in GitHub Desktop.

Follow these steps to install graphite on OS X Mavericks.

Prerequisites

  • Homebrew
  • Python 2.7
  • Git

Install dependencies

Install Cairo and friends

brew install cairo 
(in my yosemite, it will install version 1.14, it's buggy and make huge font bug in render chart, so i need to install version 1.12.16). Go to github and open history of Formula cairo, open version tag 1.12.16 and copy it, overwrite data to cairo.rb on local, and install cairo again, it's work for me ^^!)

brew install py2cairo
brew install cffi
brew install cairocffi

Install Django

pip install Django==1.5
pip install django-tagging

Install Graphite

sudo pip install carbon
pip install whisper
sudo pip install graphite-web
sudo pip install Twisted==11.1.0 

sudo chown -R <your username>:staff /opt/graphite

Configure graphite

cp /opt/graphite/conf/carbon.conf{.example,}
cp /opt/graphite/conf/storage-schemas.conf{.example,}

Create default database

cd /opt/graphite/webapp/graphite

# Modify this file to change database backend (default is sqlite).
cp local_settings.py{.example,}

# Initialize database
python manage.py syncdb

Start carbon

python /opt/graphite/bin/carbon-cache.py start

Start Graphite

python /opt/graphite/bin/run-graphite-devel-server.py /opt/graphite

Hope that it works!

Go to:

http://localhost:8080

You should see this if it works properly:

bacon

If you get a broken image, it most likely means that something is wrong py2cairo and cairo.

Check the debug output here:

http://localhost:8080/render

Optional convenience aliases

Add this to your .bashrc or .bash_profile:

alias carbon='python /opt/graphite/bin/carbon-cache.py'
alias graphite-web='python /opt/graphite/bin/run-graphite-devel-server.py /opt/graphite'

Additional resources

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment