Zabbix + SMS = GoogleCL (Google Command Line)
Para tornar seu monitoramento com o Zabbix mais efetivo, vamos utilizar o envio de SMS (Short Message Service) pela API do Google, tornando nosso monitoramento mais poderoso.
Parte 2: Configuração
Configurando conta do Google
A primeira vez que vamos utilizar a API, e somente na primeira, devemos configurar a conta a ser utilizada.* Lembrando que a nossa agenda deve existir.
Logo, tomando como partida que ela exista, devemos tentar adicionar um evento em nossa agenda com o seguinte comando:
google calendar add "Hello Word"
Assim, será solicitado que seja inserido a conta que será utilizada, e caso a página web não seja aberta, você deverá copiar o link, colar em seu Web Browser.
A mensagem abaixo será exibida.
Um serviço de terceiros está solicitando permissão para acessar Conta do Google.
Para permitir que um serviço de terceiros acesse a sua conta, faça login.
Uma vez permitido, você não terá mais que realizar este procedimento e caso seja necessário revogar esse acesso, é necessário apenas ir nas configurações do seu e-mail.
Voltamos, então, ao shell do servidor Zabbix.
Pronto, está configurado a conta do Google. Verificamos na agenda se o evento foi criado, logo, deve-se configurar para que novos eventos sejam enviados via notificação por SMS.
Obs.: Quando temos diversos destinatários para esses SMS, devemos então compartilhar a agenda com esses e os mesmos, deverão também configurá-la (agenda) para que novos eventos disparem as notificações via SMS.
Configurando o Zabbix Server
Agora podemos manipular este comando de diversas maneiras, por exemplo, como um comando remoto no servidor, facilmente implantado no servidor Zabbix. Porém, vou utilizar um script bem simples que pode ser incrementado:
#!/bin/bash
# Script para utilizar o google agenda para mandar sms
# Criado por Eduardo Lopes - 19/12/2012
# recebe como argumento o nome do HOST+Trigger+Status
google calendar add "$1"
# Script para utilizar o google agenda para mandar sms
# Criado por Eduardo Lopes - 19/12/2012
# recebe como argumento o nome do HOST+Trigger+Status
google calendar add "$1"
Adicionamos esse script em /etc/zabbix/scripts, não podemos esquecer de alterar nos arquivos de configuração do servidor zabbix em /etc/zabbix/zabbix_server.conf e zabbix_agentd.conf, habilitando external scripts e comandos remotos.
Agora, em nosso servidor Zabbix, podemos criar ações e adicionar em "Operações da Ação" um comando remoto como a seguinte sintaxe:
zabbix: sudo /etc/zabbix/scripts/sms.sh "[{HOSTNAME}]{TRIGGER.NAME}:{TRIGGER.STATUS}"
Conforme imagem abaixo: Logo, quando uma Trigger for disparada, será adicionado um evento na agenda do Google, que por sua vez, manda um SMS para o seu celular com a notificação.
Abaixo, um exemplo de SMS recebido: É isso.