言:
    在我们部署服务时,很多时候是几台服务器承载一个服务,如果我们想监控这几台服务器某个key的总和值,就得用到此处的zabbix Aggregate。并且提供了各种聚合方式。有一点一定要注意,聚合某个key是,这个key一定得在本组中的每台机器上都有响应的item。因为zabbix aggregate是从数据库中拉取数据的,要想有数据还得使用zabbix的agent获取数据保存到数据库中。

正文:

    基本语法:

    格式:groupfunc["host group","item key",itemfunc,timeperiod]

     总结:

    <grpmax|grpmin|grpsum|grpavg>["Host group(s)", "Item key", "<last|min|max|avg|sum|count>", "parameter"]

    详解:

    groupfunc

grpavg

平均值

grpmax

最大值

grpmin

最小值

grpsum

总和

    itemfunction

avg

平均值

count

value个数

last

最新值

max

最大值

min

最小值

sum

总值

    参数timeperiod为指定的采集时间,可以使用时间单位,例如可以使用1d代替86400(单位默认为秒)5m代替300

    备注:

    只有第三个参数为last,那么timeperiod参数值将会被server忽略掉

    只有被监控的HOST上启用的item才会被计入aggregate check

    示例:

    如果我们要监控某个组比如说MySQL Servers剩余硬盘空间大小

    我们得先在MySQLServers组中每个HOST上加上vgs.fs.size[/,total]item,只有每个HOST有了相应的key,我们才能用aggregate check来聚合这些key值。

    然后我们新加一个itemType选择为Zabbix aggregatekey设置为grpsum["MySQL Servers","vfs.fs.size[/,total]",last,0],然后就可以对此组中的key进行聚合。

参考来源:http://www.ttlsa.com/zabbix/zabbix-aggregate-checks/