Cleaned up and merge other Linux snippit repo
Meged https://git.bprieshof.nl/brammp/linux into ./Linux
This commit is contained in:
221
Linux/Docs/Setup-smokeping.md
Normal file
221
Linux/Docs/Setup-smokeping.md
Normal file
@@ -0,0 +1,221 @@
|
||||
# Setup Smokeping
|
||||
Intructions for setting up SmokePing on Alpine Linux
|
||||
|
||||
## Main(Master)
|
||||
Needed packages: smokeping lighttpd
|
||||
|
||||
make sure to empty the remote secret file (/etc/smokeping/smokeping_secrets),
|
||||
you also need to correct the permissions `chown smokeping:smokeping /etc/smokeping/smokeping_secrets`
|
||||
|
||||
Lighttpd (/etc/lighttpd/lighttpd.conf)
|
||||
```
|
||||
# {{{ modules
|
||||
server.modules = (
|
||||
# "mod_accesslog",
|
||||
"mod_cgi"
|
||||
)
|
||||
# }}}
|
||||
|
||||
# {{{ includes
|
||||
include "mime-types.conf"
|
||||
# }}}
|
||||
|
||||
# {{{ CGI
|
||||
cgi.assign = (
|
||||
".cgi" => "/usr/bin/perl"
|
||||
)
|
||||
# }}}
|
||||
|
||||
# {{{ server settings
|
||||
server.username = "smokeping"
|
||||
server.groupname = "smokeping"
|
||||
server.document-root = "/usr/share/webapps/smokeping"
|
||||
server.pid-file = "/run/lighttpd.pid"
|
||||
server.errorlog-use-syslog = "enable"
|
||||
server.indexfiles = ("smokeping.cgi")
|
||||
server.follow-symlink = "enable"
|
||||
static-file.exclude-extensions = (".cgi")
|
||||
# }}}
|
||||
|
||||
# {{{ mod_accesslog
|
||||
#accesslog.filename = "/var/log/lighttpd-access.log"
|
||||
# }}}
|
||||
|
||||
# vim: set ft=conf foldmethod=marker et :
|
||||
```
|
||||
|
||||
Smokeping config (/etc/smokeping/config)
|
||||
```
|
||||
*** General ***
|
||||
|
||||
owner = MaintainerName
|
||||
contact = some@address.nowhere
|
||||
mailhost = my.mail.host
|
||||
sendmail = /usr/sbin/sendmail
|
||||
imgcache = /var/lib/smokeping/.simg
|
||||
imgurl = img
|
||||
datadir = /var/lib/smokeping
|
||||
piddir = /var/run/smokeping
|
||||
cgiurl = http://some.url/smokeping.cgi
|
||||
tmail = /etc/smokeping/tmail
|
||||
smokemail = /etc/smokeping/smokemail
|
||||
syslogfacility = local0
|
||||
|
||||
#Use to overwrite system hostname
|
||||
#display_name = HostName
|
||||
|
||||
*** Database ***
|
||||
|
||||
step = 300
|
||||
pings = 20
|
||||
|
||||
# consfn mrhb steps total
|
||||
|
||||
AVERAGE 0.5 1 1008
|
||||
AVERAGE 0.5 12 4320
|
||||
MIN 0.5 12 4320
|
||||
MAX 0.5 12 4320
|
||||
AVERAGE 0.5 144 720
|
||||
MAX 0.5 144 720
|
||||
MIN 0.5 144 720
|
||||
|
||||
*** Presentation ***
|
||||
|
||||
template = /etc/smokeping/basepage.html
|
||||
htmltitle = yes
|
||||
graphborders = no
|
||||
|
||||
+ charts
|
||||
|
||||
menu = Charts
|
||||
title = The most interesting destinations
|
||||
|
||||
++ stddev
|
||||
sorter = StdDev(entries=>4)
|
||||
title = Top Standard Deviation
|
||||
menu = Std Deviation
|
||||
format = Standard Deviation %f
|
||||
|
||||
++ max
|
||||
sorter = Max(entries=>5)
|
||||
title = Top Max Roundtrip Time
|
||||
menu = by Max
|
||||
format = Max Roundtrip Time %f seconds
|
||||
|
||||
++ loss
|
||||
sorter = Loss(entries=>5)
|
||||
title = Top Packet Loss
|
||||
menu = Loss
|
||||
format = Packets Lost %f
|
||||
|
||||
++ median
|
||||
sorter = Median(entries=>5)
|
||||
title = Top Median Roundtrip Time
|
||||
menu = by Median
|
||||
format = Median RTT %f seconds
|
||||
|
||||
+ overview
|
||||
|
||||
width = 600
|
||||
height = 50
|
||||
range = 10h
|
||||
|
||||
+ detail
|
||||
|
||||
width = 600
|
||||
height = 200
|
||||
unison_tolerance = 2
|
||||
|
||||
"Last hour" 1h
|
||||
"Last day" 24h
|
||||
"Last week" 7d
|
||||
"Last month" 30d
|
||||
"Last year" 365d
|
||||
|
||||
|
||||
*** Probes ***
|
||||
|
||||
+FPing
|
||||
binary = /usr/sbin/fping
|
||||
step = 60
|
||||
|
||||
*** Slaves ***
|
||||
secrets=/etc/smokeping/smokeping_secrets
|
||||
|
||||
|
||||
*** Targets ***
|
||||
|
||||
probe = FPing
|
||||
|
||||
menu = Top
|
||||
title = Network Latency Grapher
|
||||
remark = Welcome to SmokePing.
|
||||
|
||||
+ Internet
|
||||
menu = Internet
|
||||
title = Hosts on the internet
|
||||
|
||||
++ cloudflare
|
||||
#slaves =
|
||||
host = 1.1.1.1
|
||||
|
||||
++ google
|
||||
#slaves =
|
||||
host = 8.8.8.8
|
||||
|
||||
```
|
||||
|
||||
Start and Enable services on boot `service smokeping start && service lighttpd start && rc-update add smokeping default && rc-update add lighttpd default`
|
||||
|
||||
## Remote(Slave)
|
||||
|
||||
### On Main
|
||||
Add the name and a secret in in the secrets file`/etc/smokeping/smokeping_secrets` using the following format (one per line) `remotehostname:Secret`
|
||||
Add the host to the slaves section using the following example:
|
||||
```
|
||||
+remotehostname
|
||||
display_name=Remote-Hostname
|
||||
color=00ffff
|
||||
```
|
||||
Add the host to the `slaves` section of the targets (should be seperated with a space)
|
||||
Last step on main is to restart smokeping `service smokeping restart`
|
||||
|
||||
### On Remote
|
||||
Needed packages: smokeping
|
||||
|
||||
Put a secret in `/etc/smokeping/secret.txt`
|
||||
set its permissions `chown smokeping:smokeping /etc/smokeping/secret.txt && chmod 600 /etc/smokeping/secret.txt`
|
||||
|
||||
Service file(/etc/init.d/smokeping-remote)
|
||||
```
|
||||
#!/sbin/openrc-run
|
||||
HostName=host1
|
||||
MainURL="http://<MainHost>/smokeping.cgi"
|
||||
|
||||
depend() {
|
||||
need net
|
||||
}
|
||||
|
||||
start() {
|
||||
checkpath --directory --owner smokeping:smokeping /var/run/smokeping
|
||||
|
||||
ebegin "Starting smokeping remote"
|
||||
LC_ALL=C \
|
||||
start-stop-daemon --start --name smokeping \
|
||||
--pidfile /var/run/smokeping/smokeping.pid \
|
||||
--exec /usr/bin/smokeping \
|
||||
--user smokeping:smokeping \
|
||||
-- --master-url=$MainURL --cache-dir=/var/lib/smokeping --pid-dir=/var/run/smokeping --shared-secret=/etc/smokeping/secret.txt --slave-name=$HostName
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
ebegin "Stopping smokeping Remote"
|
||||
start-stop-daemon --stop \
|
||||
--pidfile /var/run/smokeping/smokeping.pid
|
||||
eend $?
|
||||
}
|
||||
```
|
||||
Set permissions service file `chmod +x /etc/init.d/smokeping-remote`
|
||||
Start and Enable service on boot `service smokeping-remote start && rc-update add smokeping-remote default`
|
||||
Add to Root cron tab to auto reload after crash (/etc/crontabs/root) `echo '* * * * * openrc --no-stop' >> /etc/crontabs/root`
|
||||
Reference in New Issue
Block a user