跳转至

Smokeping config 文件详解

整个config文件里面只有#是注释

Bash
[root@localhost etc]# cat /usr/local/smokeping/etc/config.dist 

第一部分 General

属于基本配置。值得注意的地方有imgcache和imgurl这两个参数,要注意一下,和apache配置相关联,如果配置不好的话,打开web的时候图片会显示不出来,cgiurl要改成本机IP或者域名

Bash
*** General ***

owner    = Peter Random
contact  = some@address.nowhere
mailhost = my.mail.host
sendmail = /usr/sbin/sendmail
# NOTE: do not put the Image Cache below cgi-bin
# since all files under cgi-bin will be executed ... this is not
# good for images.
imgcache = /usr/local/smokeping/cache
imgurl   = cache
datadir  = /usr/local/smokeping/data
piddir  = /usr/local/smokeping/var
cgiurl   = http://some.url/smokeping.cgi
smokemail = /usr/local/smokeping/etc/smokemail.dist
tmail = /usr/local/smokeping/etc/tmail.dist
# specify this to get syslog logging
syslogfacility = local0
# each probe is now run in its own process
# disable this to revert to the old behaviour
# concurrentprobes = no 
  • owner: 所有者(强制性设定)
  • contact: 联系人(强制设定),邮箱地址
  • mailhost: 可以指定smtp服务器的名称,并使用perl的Net:: smtp模块发送邮件(用于警报和动态客户机脚本),而不是使用sendmail。可以指定几个逗号分隔的邮件主机。如果一个人5秒钟都不回答问题,smokeping就会一个接一个地尝试
  • sendmail: sendmail二进制文件的路径。它将用于发送与支持动态地址相关的邮件
  • imgcache: 缓存图形目录(强制设定)
  • imgurl: 要么是指向imgcache目录的绝对URL,要么是相对于保存smokeping cgi的目录的URL(强制设定)
  • datadir: 保存其rrd文件的目录(强制设定)
  • piddir: pid目录,(强制设定)
  • cgiurl: CGI的路径,一般改成本机IP(强制设定)
  • smokemail: 动态主机邮件模板的路径。此邮件模板必须包含表单<##keyword##>的关键字。有一个示例模板包含在SmokePing中(强制设定)
  • tmail: tSmoke HTML邮件模板文件的路径。有关详细信息,请参阅tSmoke文档
  • syslogfacility: 要使用的syslog工具,例如。local0…local7。注意:只有在指定此日志时才使用syslog日志记录
  • concurrentprobes: 如果使用多个探测或同一探测的多个实例,并且希望它们在单独的进程中并发运行,请将此设置为“yes”。这使您能够为每个探测指定特定于探测器的步骤和偏移参数,并使探测在服务中断的情况下无法彼此阻塞。默认值是“yes”,但如果出于某种原因希望使用旧的行为,可以将其设置为“no”

第二部分 Alerts

是属于报警配置

Bash
1
2
3
4
5
6
7
8
9
*** Alerts ***
to = alertee@address.somewhere
from = smokealert@company.xy

+someloss
type = loss
# in percent
pattern = >0%,*12*,>0%,*12*,>0%
comment = loss 3 times  in a row

第三部分 Database

RRD数据库配置。step和pings这两个参数要在启动smokeping之前配置好,如果在smokeping启动后再配置这两个参数,需要把原来的rrd文件都删除,然后再启动smokeping才可以。所以这个一定要先配置好。默认是step=300 pings=20,每5分钟向目标发送20个探测包

Bash
*** 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
  • step: 基本操作间隔的持续时间(以秒为单位),如果'concurrentprobes'被设置为'yes'(见上文),那么每个探测器都可以覆盖这个变量。请注意,RRD文件中的步骤在最初生成时是固定的,如果在生成后更改步骤参数,则必须删除旧的RRD文件或以某种方式转换它们
  • pings: 应该向每个目标发送多少ping信号。建议:20 ping。最小值:3 ping。这可以被每个探测覆盖。注意,RRD文件中pings的数量在最初生成时是固定的,如果在之后更改此参数,则必须删除旧的RRD文件或以某种方式转换它们。

# consfn mrhb steps total部分: 描述SmokePing数据库的设置。以下是合理的默认值。只有当您了解rrdtool及其工作原理时,才可以更改它们。表中的每一行描述一个RRA

  • 第一列:整合的方法
  • 第二列:必须知道合并区间的哪一部分才能保证有已知的分录
  • 第三列:为每个RRA条目合并多少步骤
  • 第四列:这个RRA应该有多少行

第四部分 Presentation

定义应如何显示smokeping数据

Bash
*** Presentation ***

template = /usr/local/smokeping/etc/basepage.html.dist
#charset = utf-8
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 3 Hours"    3h
"Last 30 Hours"   30h
"Last 10 Days"    10d
"Last 400 Days"   400d

#+ hierarchies
#++ owner
#title = Host Owner
#++ location
#title = Location
  • template:页面模板
  • charset:默认使用'utf-8'字符集
  • htmltitle:默认情况下,SmokePing将在图像中呈现图形的标题,当设置为“yes”时,标题将插入html页面
  • graphborders:默认情况下,SmokePing将在浅灰色背景上呈现灰色边框,如果设置为“no”边框将被隐藏,背景和画布将是透明的。

第五部分 Probes

指针配置,我们一般只用到fping所以就只要以下配置就可以了,确定路径是否正确,这里还可以设置fping包的大小,参数是packetsize,关于其他指针配置请参阅官方文档

Bash
1
2
3
4
5
6
*** Probes ***

+ FPing

binary = /usr/sbin/fping
#packetsize = 2000

第六分部 Slaves

主从关系里面的从服务器相关配置,smokeping里面从服务器只需要安装好就可以了,不需要配置,smokeping的所有配置都是在master上面设置。这里主要设置好secrets密码文件和从服务器配置就可以了。

Bash
1
2
3
4
5
6
7
8
9
*** Slaves ***
secrets=/usr/local/smokeping/etc/smokeping_secrets.dist
+boomer
display_name=boomer
color=0000ff

+slave2
display_name=another
color=00ff00
  • secrets:秘钥文件位置,秘钥文件格式如下:[从节点名字:秘钥]
  1. slave1:secret1
  2. slave2:secret2
  • display_name:从节点名字
  • color:在页面展示中,从节点的显示颜色比如#0000ff 蓝色

slavecolor

第七部分 Targets

目标配置。在这里可以单独配置一台服务器的监控情况,需要从slave服务器上取值的配置也是在这里配置。

这里要注意一下。+代表一级菜单 +下面的++是继承上面的+成为二级菜单。 而且可以有多个一级菜单和二级菜单。

Bash
*** Targets ***

probe = FPing

menu = Top
title = Network Latency Grapher
remark = Welcome to the SmokePing website of xxx Company. \
         Here you will learn all about the latency of our network.

+ Test
menu= Targets
#parents = owner:/Test/James location:/

++ James

menu = James
title =James
alerts = someloss
slaves = boomer slave2
host = james.address

++ MultiHost

menu = Multihost
title = James and James as seen from Boomer
host = /Test/James /Test/James~boomer