Skip to content

Creating a Grafana and influxDB server to monitor Scylla

Tzach Livyatan edited this page Oct 2, 2018 · 4 revisions

For the latest on Scylla monitoring https://docs.scylladb.com/operating-scylla/monitoring/

Instructions below create a Grafana+Influx or Scylla monitoring

Monitoring Box

install collectd

sudo yum -y install collectd

Install Grafana

source: http://docs.grafana.org/installation/rpm/

sudo vi /etc/yum.repos.d/grafana.repo
[grafana]
name=grafana
baseurl=https://packagecloud.io/grafana/stable/el/6/$basearch
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
sudo yum install grafana
sudo service grafana-server start

Install influxdb

source: https://docs.influxdata.com/influxdb/v0.9/introduction/installation/

sudo vi /etc/yum.repos.d/influxdb.repo
[influxdb]
name = InfluxDB Repository - RHEL \$releasever
baseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable
enabled = 1
gpgcheck = 1
gpgkey = https://repos.influxdata.com/influxdb.key
sudo yum install influxdb
sudo service influxdb start

Update influxdb.conf

sudo vi /etc/influxdb/influxdb.conf 

update collectd section: Use the monitoring box IP instead of 127.0.01 below

[collectd]
    enabled = true
    bind-address = "127.0.0.1:25826"
    database = "collectd"
    typesdb = "/usr/share/collectd/types.db"
sudo service influxdb restart

Update Scylla CollectD client

Proxy events from Collectd proxy (rel 0.19 and newer)

Starting from Scylla rel 0.19, by default Scylla write collectd metrics to a local collectd server, which is required to for scylla-top. To also write to an external server, like Grafana, you need to set collectd as a proxy.

Edit /etc/collectd.conf to include the following network configuration:

LoadPlugin network

<Plugin "network">
  Listen "127.0.0.1" "25826"
  Server "remote-ip" "25826"
  Forward true
</Plugin>

Make sure to keep other elements of the file as is.

Writing directly from Scylla (rel 0.18 and older)

sudo vi /etc/sysconfig/scylla-server

SCYLLA_ARGS="--collectd-address=127.0.0.1:25826 --collectd=1 --collectd-poll-period 1000"

[use your monitoring box IP instead of 127.0.0.1 if running a different server]

sudo service scylla-server stop
sudo service scylla-server start
sudo service scylla-jmx start

Update Grafana

Go to the monitoring box public_ip:3000 and add influx db as data source: Add data source

source: http://jansipke.nl/monitoring-hosts-with-collectd-influxdb-and-grafana/

When adding a graph, use collectd as a source use data source

Good Luck

Clone this wiki locally