Para minha configuração do OpenStack, estou usando o LVM como back-end de armazenamento do Cinder Block. Eu criei um vg de volumes de cinza para Thin Provisioning.
Agora, quero monitorar quanto esse vg é usado (não discos separados). Descobri que lvs -a pode fazer isso. Consegui verificar a utilização do meu pool de volumes
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
cinder-volumes-pool cinder-volumes twi-aotz-- 1.49t 26.35 22.20
Posso ver que há aproximadamente 26% de utilização desse pool de volumes. Existe alguma maneira de monitorá-lo. Atualmente utilizo o Zabbix para monitoramento geral de servidores e outros serviços. Mas o Zabbix suporta monitoramento de sistema de arquivos, não de discos e pools LVM.
Você conhece alguma solução que eu possa usar para monitorá-lo? Qualquer coisa como algum script bash ou python que envia e-mail por smtp quando a% de dados é superior a 80% ou mais? Ou algum modelo zabbix??
Edit1: Acho que posso usar essa abordagem.
disk_usage=$(sudo lvs -a | grep -w cinder-volumes-pool | awk '$1 ~ /cinder-volumes-pool/ { POOL = $1 } { DISK += $5 } END { print DISK }')
Compararei esse valor var com meu limite (50% ou 80%). Quando corresponder, configurarei o SMTP para enviar e-mail. Deve ser uma solução decente. Se vocês tiverem algo melhor, sintam-se à vontade para me ajudar.