Skip to content

Instantly share code, notes, and snippets.

@dillera
Created January 18, 2012 17:59
Show Gist options
  • Save dillera/1634493 to your computer and use it in GitHub Desktop.
Save dillera/1634493 to your computer and use it in GitHub Desktop.
Install Graphite 0.9.9 and Statsd on Centos 6
# FOR CENTOS 6
# Andrew Diller Jan 2012
# Get EPEL Repo installed
rpm --httpproxy proxy --httpport 3128 --import https://fedoraproject.org/static/0608B895.txt
rpm -Uvh http://download.fedora.redhat.com/pub/epel/6/i386/epel-release-6-5.noarch.rpm
vi /etc/yum.repos.d/epel.repo
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
# then comment all the mirrorlist= lines
# and uncomment the #baseurl lines
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
yum install -y pycairo mod_python Django python-ldap python-memcached python-sqlite2 bitmap bitmap-fonts python-devel python-crypto pyOpenSSL gcc python-zope-filesystem python-zope-interface git gcc-c++ zlib-static
# Install Graphite and dependancies
wget "http://launchpad.net/graphite/0.9/0.9.9/+download/whisper-0.9.9.tar.gz"
wget "http://launchpad.net/graphite/0.9/0.9.9/+download/carbon-0.9.9.tar.gz"
wget "http://launchpad.net/graphite/0.9/0.9.9/+download/graphite-web-0.9.9.tar.gz"
# install easy_install for python 2.6
# Centos 6 has python 2.6 as default now
wget 'http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg#md5=bfa92100bd772d5a213eedd356d64086'
sudo sh ./setuptools-0.6c11-py2.6.egg
# Carbon
pushd carbon-0.9.9
sudo python ./setup.py install
popd
# Whisper
pushd whisper-0.9.9
sudo python ./setup.py install
popd
# Web
sudo easy_install django-tagging
sudo easy_install twisted
sudo easy_install txamqp
[graphite-web-0.9.9 ]$ python ./check-dependencies.py
All necessary dependencies are met.
All optional dependencies are met.
sudo python ./setup.py install
# Perform these AS ROOT
chown -R apache:apache /opt/graphite/storage/
cp /opt/graphite/webapp/graphite/local_settings.py.example \
/opt/graphite/webapp/graphite/local_settings.py
python /opt/graphite/webapp/graphite/manage.py syncdb
cp /opt/graphite/conf/carbon.conf.example /opt/graphite/conf/carbon.conf
vi /opt/graphite/conf/carbon.conf
cp /opt/graphite/conf/storage-schemas.conf.example /opt/graphite/conf/storage-schemas.conf
vi /opt/graphite/conf/storage-schemas.conf
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
[everything_1min]
priority = 100
pattern = .*
retentions = 60s:2160s,300s:10080s,600s:12960s,3600s:26280s
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
# Deal with an HTTP Proxy
git config --global http.proxy http://proxy:3128
git config --global http.sslverify false
* Node for Statsd
yum -y install zlib-static
git clone https://github.com/joyent/node.git
pushd node
./configure && make && sudo make install
popd
# install express as root
npm install express --proxy 'http://proxy:3128' --registry http://registry.npmjs.org
@wendelicious
Copy link

Thanks for this. I suspect this isn't really meant to be publicly consumable, but since I found it invaluable, I'll provide a few comments:

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