环境:
Server: CentOS6.3_X86 zabbix 2.0.8
Clinet: windows/Linux
需求:
由于业务需求的扩展,需要监控所有服务器的在线人数,然后把所有的在线人数都统计到一起.然后我们根据这一需求进行实施,前期准备工作我们都已经做完,zabbix的本地服务器的在线人数我们都已统计出来,我们现在要做的就是把本地统计好的数据汇聚到一起,然后图标展示出来。
思路:
1. 首先创建一个组,把所有的host都添加到这个组里面
2. 然后创建Template,来监控agent服务器的在线人数
3. 然后我们在使用zabbix聚合把所有在agent的人数统计到一起
4. 然后绘图查看是否成功
实施:
1. 首先创建zabbix template 这个是监控agend本地的模板,创建的模板是” Dota_Server_TCP_CCU”然后加入到”dota_server_all”这个组中,PS:这个组”dota_server_all”已经创建好!
2. 然后创建items,创建好Items需要添加到关联的host上,然后在hosts上配置key即可。切记需要在每个hosts上都关联需要监控的在线人数
如下是添加的items:
然后查看items文件,PS两个items的方式设置一样。
设置客户端的key.根据自己的业务来定义
UserParameter=SUM.tcp.conn[*],netstat -an|findstr "51[0-9][0-9]" |find "ESTABLISHED" /c
UserParameter=SUM2.tcp.conn[*],netstat -an|findstr "61[0-9][0-9]" |find "ESTABLISHED" /c
3. 创建聚合templates以及items
首先创建templates,需要注意的是聚合的templates还是属于”dota_server_all”组。
创建items文件:
需要注意三个地方,Type类型需要设置成 “Zabbix aggregate”.key的设置方式需要按照如下方式设置:
groupfunc[“Host group”,“Item key”,itemfunc,timeperiod]
groupfunc: group类别
grpavg Average value 平均值
grpmax Maximum value 最大值
grpmin Minimum value 最小值
grpsum Sum of values 统计值
ITEM FUNCTION: TEEMS类别
avg Average value
count Number of values
last Last value
max Maximum value
min Minimum value
sum Sum of values
PS 需要注意的是,我们这里的”Host group”指的是我们统一加入到的一个 组“dota_server_all”,我们的Item key则是在我们客户端能获取值的KEY,其实就是“DOta_server_CCU”中的两个KEY!如此就配置完成了,我们只需要把刚配置的templates应用到一个agent hosts即可。
因此KEY是这样的:
grpsum["dota_server_all","SUM.tcp.conn",last,0]
grpsum["dota_server_all","SUM2.tcp.conn[*]",last,0]
具体如图所示:
4. 应用刚才配置的模板到其中一台客户端机器上即可。
5. 然后查看是否有数据产生,PS,图片是在创建DOTA_CUU的时候创建的Graphs。查看在Monitoring—Graphs—选择对应的主机-对应的Graphs就可以看到了!
6. 切记一定要把所有的机器加入到”dota_server_all”这个组中:本来这一步是在要做的,结果忘记截图了!
7. 完成
参考文章:
https://www.zabbix.com/documentation/2.0/manual/config/items/itemtypes/aggregate