Introduction
Graphite is a highly scalable real-time graphing system that can be used to gather various system information and display it in an intuitive web interface. Graphite is also free and open-source software.
This tutorial will cover the process of installing Graphite on a CentOS 7 Server instance.
Prerequisites
- A CentOS 7 instance.
- A sudo user.
Step 1: Install Required Packages
The Graphite packages are not available in the CentOS default yum repository. Install the EPEL repository.
sudo yum install -y http://epel.mirror.constant.com/7/x86_64/Packages/e/epel-release-7-12.noarch.rpmNext, install the requires packages for Graphite as follows:
sudo yum install -y graphite-web python-carbonStep 2: Configure Graphite
Next, we will need to modify storage schema file. The values in this file will instruct Carbon on how long to store values.
sudo nano /opt/graphite/conf/storage-schemas.conf Add the following lines:
[default]
pattern = .*
retentions = 12s:4h, 2m:3d, 5m:8d, 13m:32d, 1h:1ySave the file and start Carbon using the following command:
sudo systemctl enable carbon-cache
sudo systemctl start carbon-cache Next, change the timezone and SECRET_KEY values in /etc/graphite-web/local_settings.py.
Once you are done, run the database setup script using following command:
PYTHONPATH=/usr/share/graphite/webapp django-admin syncdb --settings=graphite.settingsStep 4: Configure Apache for Graphite
First, remove the default index page from apache:
echo > /etc/httpd/conf.d/welcome.confNext, edit /etc/httpd/conf.d/graphite-web.conf and replace everything in the 'Directory "/usr/share/graphite/"' block with:
Require all granted
Order allow,deny
Allow from allAssign the proper permissions to the Graphite directory:
sudo chown apache:apache /var/lib/graphite-web/graphite.dbAnd work around a bug related to building indexs with:
touch /var/lib/graphite-web/indexStart Apache and enable auto-start:
sudo systemctl start httpd
sudo systemctl enable httpd Access Graphite Web Interface
You may need to enable port 80 in firewalld:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reloadYou can now access Graphite in your web browser by visiting your server’s IP address.