Smokeping Network Monitor

See how your network performs over time

Intro

When trying to diagnose network issues it can be nice to have some graphs to show latency over time. Originally I wanted to use Cacti, but that turned out to be a bit overkill for my needs, and the guides I could find had a pretty steep learning curve.

Base machine

Deploy Centos7 template

Smokeping installation

Install packages from repo and enable

yum install smokeping sendmail perl perl-CGI -y
systemctl enable httpd ; systemctl enable httpd
systemctl enable smokeping ; systemctl enable smokeping

Append to /etc/httpd/conf/httpd.conf (99% sure this is needed)

LoadModule cgi_module modules/mod_cgi.so

Edit /etc/smokeping/config and set the following in the General section:

owner    = YOUR NAME
contact  = YOUR EMAIL
mailhost = localhost
sendmail = /sbin/sendmail

In the Alterts section, set the "to" address to where you want warnings sent to, and "from" to the sender address you want to use.

In the Database section, adjust the steps/pings to how many pings per how many seconds. I've set 60/60 which may be way overkill.

Open http firewall port:

firewall-cmd --zone=public --add-port=80/tcp --permanent 
firewall-cmd --reload

Configure smokeping to allow access from other hosts by editing /etc/httpd/conf.d/smokeping.conf

Comment out "Require local" in both places and replace with "Require all granted" or a more narrow restriction if you prefer.

Restart httpd:

systemctl restart httpd

Test if webinterface works - open http://hostname/smokeping/sm.cgi . It should look something like this:

Configuring your own hosts

Basically just edit /etc/smokeping/config and go to the Targets section and copy the syntax.

Restart the smokeping service after changes, and wait a few minutes for some data to be generated.

systemctl restart smokeping