Plugin do Nagios para checar disco via SNMP
Publicado por Andre Luiz Facina 30/10/2008
[ Hits: 11.715 ]
Plugin do Nagios, que utiliza SNMP para checar a utilização do disco.
Usage: check_disk_snmp IP COMMUNITY DISK_MIB WARNING CRITICAL
#!/bin/sh
####################################################
#### Script desenvolvido por André Luiz Facina #####
####################################################
######## Variaveis #########
# Variável de unidade de alocação, obtida a partir da MIB hrStorageAllocationUnits.X, onde X é a partição/disco a ser monitorado
stg_unit=`snmpget -v 1 -c $2 $1 hrStorageAllocationUnits.$3 | awk '{print $4}'`
# Variáveis de tamanho do Disco/Partição, obtida a partir da MIB hrStorageSize, onde X é a partição/disco a ser monitorado
# Tamanho do disco, conforme recebido na MIB sem a unidade de alocacao
mib_disk_size=`snmpget -v 1 -c $2 $1 hrStorageSize.$3 | awk '{print $4}'`
# Tamanho do disco em KB - mib_disk_size * unidade de alocacao
disk_size=$((mib_disk_size*stg_unit))
# Tamanho do disco em MB
disk_size_mb=$(((disk_size/1024)/1024))
# Tamanho do disco em GB
disk_size_gb=$((((disk_size/1024)/1024)/1024))
# Calculo de porcentagem para Warning e Critical
disk_warn=$((disk_size_mb*$4))
disk_crit=$((disk_size_mb*$5))
# porcentagem warning
warning=$((disk_warn/100))
#porcentagem critical
critical=$((disk_crit/100))
# Verificar utilização do disco/partição
# Variavel obtida da MIB hrStorageUsed.X, onde X é a partição a ser monitorada
mib_disk_usage=`snmpget -v 1 -c $2 $1 hrStorageUsed.$3 | awk '{print $4}'`
# Multiplica o valor da MIB pela unidade de alocacao obtida a partir da MIB
disk_usage=$((mib_disk_usage*stg_unit))
# Espaço utilizado em MB
disk_usage_mb=$(((disk_usage/1024)/1024))
# Espaço utilizado em GB
disk_usage_gb=$((((disk_usage/1024)/1024)/1024))
# Verificação dos valores e retorno para o Nagios
# Checking Warning
if [ $disk_usage_mb -ge $warning ]; then
if [ $disk_usage_mb -lt $critical ]; then
echo "Warning: Disk Usage $disk_usage_mb MB of $disk_size_mb MB"
exit 1
fi
fi
# Cheking Critical ;-)
if [ $disk_usage_mb -ge $critical ]; then
echo "Critical: Disk Usage $disk_usage_mb MB of $disk_size_mb MB"
exit 2
fi
# Cheking OK
if [ $disk_usage_mb -lt $warning ]; then
echo "OK: Disk Usage $disk_usage_mb MB of $disk_size_mb MB"
exit 0
fi
Criando um Backup .ISO do seu CD.
Antivírus no Linux para usuários de domínio
Zentheme-Install - Instala e desinstala temas usando interface gráfica
Script para rodar software Mr Bayes em paralelo
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como quebrar senha usando john the ripper
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Não consigo instalar distro antiga no virtualbox nem direto no hd (22)
Podem me chamar de 1mbecil :) [RESOLVIDO] (29)









