It is a free open-source software (FOSS) tool, monitors and graphs the performance of computer systems. It was developed by Orbitz and released as open source software in 2008. Graphite collects, stores, and displays time-series data in real time.
The tool has three main components:
- carbon – a Twisted daemon that listens for time-series data
- whisper – a simple database library for storing time-series data (similar in design to RRD)
- graphite webapp – A Django webapp that renders graphs on-demand using Cairo
First add the EPEL repository by using the following command.
yum -y install epel-release
Now add some prerequisites to install Graphite.
yum install -y httpd net-snmp perl pycairo mod_wsgi python-devel git gcc-c++
Now install Python package Manager.
yum install -y python-pip node npm
Now its time to install Graphite as follows
pip install Django==1.10.3 pip install Twisted==16.5 pip install django-tagging pip install whisper pip install graphite-web pip install carbon
Finally add some packages as follows
yum install collectd collectd-snmp git clone https://github.com/etsy/statsd.git /usr/local/src/statsd/
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/
Now Edit the file /opt/graphite/conf/storage-schemas.conf by using vi editor modify the file as follows
Now create a super-user in graphite to save the graphs as follows
cd /opt/graphite/webapp/graphite sudo python manage.py migrate
[root@localhost graphite]# sudo python manage.py migrate Creating tables ... Creating table account_profile Creating table account_variable Creating table account_view Creating table account_window Creating table account_mygraph Creating table dashboard_dashboard_owners Creating table dashboard_dashboard Creating table events_event Creating table url_shortener_link Creating table auth_permission Creating table auth_group_permissions Creating table auth_group Creating table auth_user_groups Creating table auth_user_user_permissions Creating table auth_user Creating table django_session Creating table django_admin_log Creating table django_content_type Creating table tagging_tag Creating table tagging_taggeditem You just installed Django's auth system, which means you don't have any superusers defined. Would you like to create one now? (yes/no): yes Username (leave blank to use 'root'): Email address: firstname.lastname@example.org Password: Password (again): Superuser created successfully. Installing custom SQL ... Installing indexes ... .. . .. . .. .. .. .. . . .. . . . . .. . . . . .. . .. .. ... . .
Now start services as follows
systemctl enable httpd systemctl start httpd /opt/graphite/bin/run-graphite-devel-server.py /opt/graphite/
Now access it in your web-browser http://ip-address:8080
For more articles like us facebook.