I needed to get the average availability for a group of servers for some work that I was doing at my day job
These servers were monitored via both SNMP and ICMP, but I only needed to know if they were up or not.
To do that, I created a dummy host so I could set up items on it just for reporting purposes.
On this host, I created a new item of type “Zabbix aggregate”.
For the key, I used the grpavg[] function to average out the ICMP reachability metric for the group of servers. I set the time range for the last day to calculate
grpavg["Server Group","icmpping",last,1d]
I also set a % for the units, and the custom multiplier to 100. The result is a calculation of the average number of servers that are up for the period, in this case I’ve used the last 1 day.
Graphing this would then produce a graph of the average availability of the group “Server Group” for a day.