Install Graphite In CentOS 7

Graphite is a highly scalable real-time graphing system. As a user, you write an application that collects numeric time-series data that you are interested in graphing, and send it to Graphite’s processing backend, carbon, which stores the data in Graphite’s specialized database. The data can then be visualized through graphite’s web interfaces.

My System:

[[email protected] ~]# cat  /etc/centos-release
CentOS Linux release 7.0.1406 (Core)
  • IP= 192.168.119.131

Installation

Update and install some dependencies:

yum -y update
yum install -y httpd net-snmp perl pycairo mod_wsgi python-devel git gcc-c++

Add the EPEL repo from:

Install Python Package manager:

yum install -y python-pip node npm

I have installed the graphite within pip,

pip install 'django<1.6'
pip install 'Twisted<12'
pip install django-tagging
pip install whisper
pip install graphite-web
pip install carbon

Add extra packages:

yum install collectd collectd-snmp
git clone https://github.com/etsy/statsd.git /usr/local/src/statsd/

Configuration

Please make these configurations:

cp /opt/graphite/examples/example-graphite-vhost.conf /etc/httpd/conf.d/graphite.conf
cp /opt/graphite/conf/storage-schemas.conf.example /opt/graphite/conf/storage-schemas.conf
cp /opt/graphite/conf/storage-aggregation.conf.example /opt/graphite/conf/storage-aggregation.conf
cp /opt/graphite/conf/graphite.wsgi.example /opt/graphite/conf/graphite.wsgi
cp /opt/graphite/conf/graphTemplates.conf.example /opt/graphite/conf/graphTemplates.conf
cp /opt/graphite/conf/carbon.conf.example /opt/graphite/conf/carbon.conf
chown -R apache:apache /opt/graphite/storage/
vi /opt/graphite/conf/storage-schemas.conf
[default]
pattern = .*
retentions = 10s:4h, 1m:3d, 5m:8d, 15m:32d, 1h:1y

Create a super-user in graphite to save your graphs.

cd /opt/graphite/webapp/graphite
sudo python manage.py syncdb

Getting Started

systemctl enable httpd
systemctl start httpd
/opt/graphite/bin/carbon-cache.py start

You can run the graphite  server:

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

If everything works, it will be started on port :8080

Open  http://ip:8080

graphite

That’s it.

  • Isengard

    Please change the django-tagging install to:

    pip install ‘django-tagging<0.4'

    Otherwise syncdb does not run.

  • Isengard

    I also recommend to install these packages in order to get a smooth text on graphite-web.

    yum install fontconfig freetype* urw-fonts

  • suresh

    Hi Guys,

    Graphite is running on non-ssl port i want to configure it on ssl port. How do we enable ssl for Graphite?

    Thanks
    Suresh