Monitorando No-Break no Ubuntu 12.04

Este artigo indica os passos para monitorar um No-Break com saída serial. As funcionalidades são: envio de SMS e e-mail com os eventos relevantes (falha na comunicação serial, falta de energia, retorno de energia, bateria baixa) e desligamento das máquinas via SSH, quando necessário.

[ Hits: 24.938 ]

Por: wagner nascimento em 23/11/2012


Configurações: ações baseadas nos eventos e desligamento das outras máquinas



Configurar as ações baseadas nos eventos do No-Break

Vamos editar o arquivo /etc/nut/upsmon.conf.

# nano /etc/nut/upsmon.conf

Este arquivo é muito bem comentado. As configurações que precisamos alterar são:

RUN_AS_USER ti #coloque o nome do usuário que estava utilizando ao adicionar o evento na agenda Gmail pela primeira vez
MONITOR netroom@localhost 1 upsmon pass master SHUTDOWNCMD "/home/ti/scripts/desliga_servidores.sh" #o script que vou utilizar para desligar as máquinas via SSH
NOTIFYCMD /home/ti/scripts/envia_alerta.sh #o script genérico para envio de SMS
NOTIFYMSG  ONLINE              "MINHAEMPRESA -Nobreak_operando_energia_DME"
NOTIFYMSG  ONBATT              "MINHAEMPRESA -Nobreak_operando_por_bateria"
NOTIFYMSG  LOWBATT            "MINHAEMPRESA- Nobreak_baterias_pouca_carga"
NOTIFYMSG  FSD                     "MINHAEMPRESA-Nobreak_Forced_shutdown_in_progress"
NOTIFYMSG  SHUTDOWN          "MINHAEMPRESA- Nobreak_Auto_logout_and_shutdown_proceeding"
NOTIFYMSG  REPLBATT          "MINHAEMPRESA-Nobreak_Trocar_baterias"
NOTIFYMSG  NOCOMM              "MINHAEMPRES A-Nobreak_sem_Comunicacao_5_MINUTOS"
NOTIFYMSG  COMMOK              "MINHAEMPRES A-Nobreak_Comunicacao_OK"
NOTIFYMSG  COMMBAD            "MINHAEMPRESA- Nobreak_sem_Comunicacao"
NOTIFYFLAG  ONLINE            SYSLOG+WALL+EXEC
NOTIFYFLAG  ONBATT            SYSLOG+WALL+EXEC
NOTIFYFLAG  LOWBATT          SYSLOG+WALL+EXEC
NOTIFYFLAG  FSD                  ; SYSLOG+WALL+EXEC
NOTIFYFLAG  COMMOK            SYSLOG
NOTIFYFLAG  COMMBAD          SYSLOG
NOTIFYFLAG  SHUTDOWN        SYSLOG+WALL+EXEC
NOTIFYFLAG  REPLBATT        SYSLOG
NOTIFYFLAG  NOCOMM            SYSLOG+WALL+EXEC

Configurar computador para comandar desligamento das outras máquinas

Para dar um pouco mais de segurança, o acesso à máquina alvo é feito via SSH, protegida por senha. A conta utilizada está configurada para que seu primeiro comando ao logar seja comandar o desligamento do computador.

Passo I - Instalar sshpass com senha no micro sensor:

sudo apt-get install sshpass

Passo II - Criar arquivo "desliga_servidores.sh":

sudo nano /home/ti/scripts/desliga_servidores.sh

Com o conteúdo:

#!/bin/bash
sshpass -p senha ssh shutdown@172.16.x.x

Passo III - Alterar permissões do script:

# chmod 711 /home/ti/scripts/desliga_servidores.sh

Passo IV - Conferir as permissões:

ls -la /etc/nut/
-rw-r--r--   1 root nut   1472 Out  8 13:18 nut.conf
-rw-r-----   1 root nut   3732 Out  8 13:19 ups.conf
-rw-r-----   1 root nut   2744 Mai 30 16:50 upsd.conf
-rw-r-----   1 root nut   2171 Out  8 14:04 upsd.users
-rw-r--r--   1 root nut   12919 Out  8 15:46 upsmon.conf
-rw-r-----   1 root nut   3887 Mai 30 16:50 upssched.conf

ls -la /home/ti/scripts/
-rwx--x--x  1 ti nut   168 Nov 13 15:57 desliga_servidores.sh
-rwx--x--x  1 ti nut   35 Out  8 13:43 envia_alerta.sh


Página anterior     Próxima página

Páginas do artigo
   1. Configurar serial do No-Break - Criar script genérico
   2. Configurações: ações baseadas nos eventos e desligamento das outras máquinas
   3. Configurar computador para desligar mediante comando de outra máquina
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Codificação de caracteres de arquivos ASCII

Diagnosticando problemas variados em ambientes GNU/Linux (parte 1)

Apache2, PHP5, MySQL5 e PhpMyAdmin com certificação SSL no Debian Etch

Instalação do CRUX 3.0 em Virtualbox

Balanceamento de 3 links com redundância no Linux

  
Comentários
[1] Comentário enviado por markintux em 23/11/2012 - 10:08h

Artigo muito interessante!

Abraços.

[2] Comentário enviado por removido em 23/11/2012 - 11:28h

Ótimo trabalho! Excelente contribuição.

Parabéns!!!



[3] Comentário enviado por xjc em 23/11/2012 - 14:58h

ae cara muito bom tutorial, eu gosto de usar o apcups ele lê o protocolo da apc e tem também os agentes remotos, bem mais simples que isso tudo que você escreveu.

[4] Comentário enviado por igor_rocha em 23/11/2012 - 23:07h

Show de Bola!

[5] Comentário enviado por adrianoh2 em 25/11/2012 - 15:09h

Será que funciona em um Nobreak SMS? To com ele aqui, e tanto o software como o suporte são uma porcaria. Não recomendo!

[6] Comentário enviado por fernandoborges em 26/11/2012 - 14:51h

Parabéns pelo artigo. Sobre os SMS, concordo!

[7] Comentário enviado por WagNasc em 28/11/2012 - 09:22h


[5] Comentário enviado por adrianoh2 em 25/11/2012 - 15:09h:

Será que funciona em um Nobreak SMS? To com ele aqui, e tanto o software como o suporte são uma porcaria. Não recomendo!


Olá adrianoh2,
aqui eu não tenho um Nobreak SMS para testar, mas parece promissor.
Motivo:
Acessei a página indicada no link "Network UPS Tools - Hardware compatibility list" do artigo e ali consta que o nobreak SMS (Brazil) utiliza o driver "blazer_ser". Acho que vale a pena você fazer um teste...

[8] Comentário enviado por marceloeng em 29/04/2014 - 02:57h

Muito legal o artigo, gostaria de aproveitar e pedir sugestões de no-break para um ambiente de um cliente.

Meu cliente é uma gráfica digital e por trabalhar com muito papel, todos os dias por volta das 19:0 a chave geral da energia elétrica é desligada, sendo religada novamente às 7:30. O problema é que esses horários, às vezes podem variar.


Gostaria de sugestão de no-break, ou mesmo se é possível programá-lo para se adequar a este cenário, para que, principalmente o servidor, não sofra danos decorrentes de mau desligamento.


Obrigado,
Marcelo Costa


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts