Skip to content

Commit

Permalink
Merge pull request zabbix#13 from SLMitch/main
Browse files Browse the repository at this point in the history
Add Template for Qumulo Storage
  • Loading branch information
oscar120584 authored Dec 30, 2021
2 parents 9493440 + 3c25afc commit 926e17c
Show file tree
Hide file tree
Showing 4 changed files with 458 additions and 0 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -887,6 +887,8 @@ This repository is dedicated to templates that are created and maintained by Zab
* [SNMP QNAP NAS](Storage_Devices/QNAP/template_zabbix_3.0_qnap_nas_snmp)
* [SNMP QNAP NAS](Storage_Devices/QNAP/template_zabbix_3.4_qnap_nas_snmp)
* [SNMP QNAP NAS](Storage_Devices/QNAP/template_zabbix_4.2_qnap_nas_snmp)
* [Qumulo](Storage_Devices/Qumulo)
* [QUMULO](Storage_Devices/Qumulo/template_qumulo/5.4/)
* [QSAN](Storage_Devices/QSAN)
* [SNMP QSAN XS3224 Storage](Storage_Devices/QSAN/template_qsan_xs3224)
* [ReadyNAS](Storage_Devices/ReadyNAS)
Expand Down
70 changes: 70 additions & 0 deletions Storage_Devices/Qumulo/template_qumulo/5.4/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Qumulo

## Overview

Tested on Qumulo version 4.1.3

Use qq binary, that can be downloaded from qumulo web ui

## Installation
* Get qq binary from your qumulo interface (Apis & Tools menu)
* Put qq on /etc/zabbix/scripts/qq (or adapt next conf file)
* Put zabbix_qumulo.conf on zabbix agent2.d folder, in order to include the userparameter, and change the user/pass on the first line ( UserParameter=qumulo.login,/etc/zabbix/scripts/qq --host qumulo_host login -u zabbix -p zabbix_pwd
)
* Import the template on zabbix.
* Change the 2 macro to the read value of your cluster (10% of usable capacity, and 20% )
* Force the item "Qumulo login" to execute "now" in order the zabbix user have the good "cookies" on the qumulo cluster and in order to have all other check "OK".

## Macros used

|Name|Description|Default|Type|
|----|-----------|-------|----|
|{$QUMULO.10PCENT}|<p>Should be put to 10% of total size of cluster</p>|`21T`|Text macro|
|{$QUMULO.20PCENT}|<p>Should be put to 20% of total size of cluster</p>|`42T`|Text macro|

## Template links

There are no template links in this template.

## Discovery rules

|Name|Description|Type|Key and additional info|
|----|-----------|----|----|
|Disks List|<p>-</p>|`Zabbix agent`|qumulo.cluster_slots|
|Node List|<p>-</p>|`Zabbix agent`|qumulo.nodes_list|

## Items collected

|Name|Description|Type|Key and additional info|
|----|-----------|----|----|
|Disk {#QDISK_ID} serial|<p>-</p>|`Dependent item`|qumulo.cluster_slots[{#QDISK_ID},serial]<p>LLD</p>|
|Disk {#QDISK_ID} state|<p>-</p>|`Dependent item`|qumulo.cluster_slots[{#QDISK_ID},state]<p>LLD</p>|
|{#QNODE_NAME} serial|<p>-</p>|`Dependent item`|qumulo.nodes_list[{#QNODE_ID},serial]<p>LLD</p>|
|{#QNODE_NAME} status|<p>-</p>|`Dependent item`|qumulo.nodes_list[{#QNODE_ID},status]<p>LLD</p>|
|Qumulo date |<p>-</p>|`Zabbix agent`|qumulo.time_status|
|Qumulo restriper time|<p>-</p>|`Zabbix agent`|qumulo.restriper_status[time_remain]|
|Qumulo cluster slots|<p>-</p>|`Zabbix agent`|qumulo.cluster_slots[]|
|Qumulo nodes |<p>-</p>|`Zabbix agent`|qumulo.nodes_list[]|
|Qumulo restriper |<p>-</p>|`Zabbix agent`|qumulo.restriper_status[status]|
|qumulo.free.forecast.24 |<p>-</p>|`Calculated`|qumulo.free.forecast.24|
|qumulo.free.last.1 |<p>-</p>|`Calculated`|qumulo.free.last.1|
|Qumulo free space|<p>-</p>|`Zabbix agent`|qumulo.fs_get_stats[free]|
|Qumulo total space|<p>-</p>|`Zabbix agent`|qumulo.fs_get_stats[total]|
|qumulo.node_chassis_status_get|<p>-</p>|`Zabbix agent`|qumulo.node_chassis_status_get|
|Qumulo login |<p>-</p>|`Zabbix agent`|qumulo.time_status|


## Triggers

|Name|Description|Expression|Priority|
|----|-----------|----------|--------|
|Qumulo free space < 10%|<p>-</p>|<p>**Expression**: last(/Template App QUMULO/qumulo.fs_get_stats[free])<(last(/Template App QUMULO/qumulo.fs_get_stats[total])*0.1)</p><p>**Recovery expression**: </p>|Disaster|
|Qumulo free space < 10% in next 24h|<p>-</p>|<p>**Expression**: timeleft(/Template App QUMULO/qumulo.fs_get_stats[free],12h,{$QUMULO.10PCENT})<24h</p><p>**Recovery expression**: </p>|high|
|Qumulo free space < 20% in next 48h|<p>-</p>|<p>**Expression**: timeleft(/Template App QUMULO/qumulo.fs_get_stats[free],24h,{$QUMULO.20PCENT})<48h</p><p>**Recovery expression**: </p>|Average|
|Qumulo time shift > 5s|<p>-</p>|<p>**Expression**: fuzzytime(/Template App QUMULO/qumulo.time_status,5s)=0</p><p>**Recovery expression**: </p>|Average|
|Restriper is COMPACT|<p>-</p>|<p>**Expression**: last(/Template App QUMULO/qumulo.restriper_status[status])="COMPACT"</p><p>**Recovery expression**: </p>|Information|
|Restriper is REBALANCE|<p>-</p>|<p>**Expression**: last(/Template App QUMULO/qumulo.restriper_status[status])="REBALANCE")</p><p>**Recovery expression**: </p>|Information|
|Very long rebalance running ( > 8h )|<p>-</p>|<p>**Expression**: last(/Template App QUMULO/qumulo.restriper_status[time_remain])>28800</p><p>**Recovery expression**: </p>|Information|



Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
UserParameter=qumulo.login,/etc/zabbix/scripts/qq --host qumulo_host login -u zabbix -p zabbix_pwd
UserParameter=qumulo.nodes_list[*],/etc/zabbix/scripts/qq --host qumulo_host nodes_list
UserParameter=qumulo.cluster_slots[*],/etc/zabbix/scripts/qq --host qumulo_host cluster_slots
UserParameter=qumulo.node_chassis_status_get[*],/etc/zabbix/scripts/qq --host qumulo_host node_chassis_status_get
UserParameter=qumulo.fs_get_stats[*],/etc/zabbix/scripts/qq --host qumulo_host fs_get_stats
UserParameter=qumulo.time_status,/etc/zabbix/scripts/qq --host qumulo_host time_status
UserParameter=qumulo.restriper_status[*],/etc/zabbix/scripts/qq --host qumulo_host restriper_status
Loading

0 comments on commit 926e17c

Please sign in to comment.