NoBreak SMS e GNU/Linux (FC5) - Parte 1 - Fazendo o Nobreak funcionar

Olá a todos! Esse é o meu primeiro artigo e primeira parte dele, que fala sobre Nobreaks SMS com Linux, que abrange seus recursos para dar shutdown em 4 servidores (03 GNU/Linux e 01 WIn XP). Existem algumas informações na net, assim como manuais, mas não sanam todas as dúvidas e são para outras distros. Sendo assim, aí vai minha colaboração.

[ Hits: 79.563 ]

Por: Marcos Nomura em 29/01/2007


Situação global da empresa



Na empresa onde trabalho montei a estrutura com 4 servidores e 16 estações de trabalho, e como é uma indústria, infelizmente possuo uma série de problemas com o sistema elétrico da mesma, chegando em situações extremas de num período de 30 dias ter quedas de energia com mais de 4 horas sem o retorno da mesma, além de ruídos contínuos por causa dos motores da indústria. Detalhe, isso levando em consideração que os equipamentos da indústria estão em outra rede elétrica, mas ainda sim influenciam no geral.

Visto esse cenário, a necessidade de nobreaks individuais fica bem definida, sendo assim, por estação de trabalho possuo um nobreak que dá suporte de mais ou menos 15 minutos em modo inversor e nos servidores dois nobreaks com baterias externas de 75Ah cada uma, onde esses me dão em torno de 2 a 3 horas de alimentação ininterrupta, porém necessito então de algo que informe os servidores pra se desligarem, caso cheguem a 2 horas sem energia elétrica, e ele necessita desligar 4 máquinas em dois SOs diferentes.

A solução mais simples seria comprar 1 no-break por servidor, porém não seria a mais inteligente, visto que teria então que comprar uma bateria de 40Ah no mínimo por equipamento, onerando a solução, sem falar o trabalho de ter que gerenciar 4 sistemas de alimentação de energia.

Solução geral

Dessa forma, temos a solução de dois nobreaks fornecendo segurança elétrica e desligando os servidores quando preciso. Os processos foram os seguintes:
    Instalar o no-break SMS Net Manager 3+ no FC5 e fazer o sistema funcionar;
  1. Fazer com que do servidor com o Fedora Core 5 e o nobreak conectasse por meio de shell script e disparasse um serviço de shutdown nos outros três equipamentos;
  2. Criar logins de usuário que executasse somente o comando de Shutdown de forma segura automaticamente;
  3. Fazer com que a máquina com MS Windows XP PRO recebesse comandos do software da SMS para poder desligar-se;
  4. Configurar os tempos de utilização de bateria e de shutdown antes do desligamento do nobreak;
  5. Testar, Testar, Testar!

Especificações de equipamento

Os nobreaks adquiridos foram:

01 NoBreak SMS Net Manager III com suporte de comunicação USB (não é serial), o mesmo vem com um CD e com um cabo USB.

Especificação do servidor ONDE vai ser instalado o No-Break:

Pentium III 800Mhz , 512Mb RAM, hd 80 GB IDE c/ suporte USB
Distribuição Fedora Core 5 sem a parte gráfica

    Próxima página

Páginas do artigo
   1. Situação global da empresa
   2. Conferindo comunicação USB
   3. Baixando e instalando o JAVA JDK 5 update 10
   4. Instalando o SMS Power View
   5. Alterando a configuração da porta
   6. Configurações do No-break
Outros artigos deste autor

NoBreak SMS e GNU/Linux (FC5) - Parte 2 - Criando o serviço

NoBreak SMS e Gnu/Linux (FC5) - Parte 3 - Comunicação entre os servidores Linux sem senha

Leitura recomendada

Driver nVidia se sua placa tem chipset da SiS

Instalando Debian Lenny no laptop Lenovo ThinKPad SL400

Enlightenment no Debian Squeeze e no Ubuntu

Configurando o bind 9 no Debian

Instalação do Gentoo em HD Externo para dual boot com Windows

  
Comentários
[1] Comentário enviado por thelinux em 29/01/2007 - 11:52h

Excelente artigo. Grande solução. Valeu por compartilhar.
Mas me confirma se no item Conferindo comunicação USB no comando
# vi /etc/messages

não seria tail -f /var/log/messages ???

Fico no aguardo.

[2] Comentário enviado por _nomura em 30/01/2007 - 11:55h

Opa, agradeco o comentario, porem eu esqueci de comentar o seguinte

No meu caso, eu havia plugado o no-break ja alguns minutos e teria algumas mensagens no /var/log/messages,

Entao eu recomendo a entrada manual e a conferencia pelo horario da conexao do no-break

Mas se tiver acabado de conectar, ai sim, o tail ja apareceria as ultimas msgs..

Grato
Marcos Nomura

[3] Comentário enviado por prginfo em 24/02/2007 - 22:02h

Não estou conseguindo alterar a porta para /dev/ttyS8, pois quando digito aparece a mensagem ´´opção inválida´´, e quando executei o
./RODAR_SMS.sh, foi apresentada o link simbólico normal como /dev/ttyS8.
Grato.
Paulinho ...

[4] Comentário enviado por _nomura em 26/02/2007 - 09:26h

Ola prginfo!

Confira por meio de um tail -f /var/log/messages se o seu no-break esta comunicando.. aparentemente nao esta, e qual a distro que vc ta usando!?

[5] Comentário enviado por prginfo em 26/02/2007 - 13:49h

Boa Tarde...
A distro é Hed Hat 7.2 com kernel 2.4 e através do comando tail -f /var/log/messages realmente percebe-se que o no-break não está se comunicando, mas o dispositivo está habilitado na BIOS.
Grato ...

[6] Comentário enviado por wbh16 em 14/10/2007 - 16:42h

Fiz tudo de acordo com o descrito, mas dá este erro:

[root@localhost app]# ./RODAR_SMS.sh
Criando link simbolico para USB-Serial.
ln: criando link simbólico `/dev/ttyS8' to `/dev/ttyUSB0': Arquivo existe
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE

[7] Comentário enviado por wbh16 em 14/10/2007 - 16:42h

Alguem pode me ajudar?

[8] Comentário enviado por prginfo em 01/12/2007 - 11:54h

Status sempre em OFF

Estou com Fedora Core 6, modo console rodando em servidor e após todas as configurações do JDK e Software da SMS, não estou conseguindo fazer funcionar. Pelo log em /var/log/messages, após a desconexão e conexão do cabo USB, aparece a comunicação com o No-break; os módulos foram levantados, mas sempre o status está em OFF.
A porta esta certa como /dev/ttyS8 (link simbólico) e a 8080 como comunicação.
no echo $JAVA_HOME e echo $PATH também está tudo correto.

Segue abaixo o log feito as 11:50 de hoje.
Dec 1 07:35:15 kernel: eth1: link down
Dec 1 08:53:59 kernel: eth1: link up, 100Mbps, full-duplex, lpa 0x45E1
Dec 1 11:49:57 kernel: usb 1-2: USB disconnect, address 2
Dec 1 11:49:57 kernel: cypress 1-2:1.0: device disconnected
Dec 1 11:50:01 kernel: ohci_hcd 0000:00:01.2: wakeup
Dec 1 11:50:01 kernel: usb 1-2: new low speed USB device using ohci_hcd and address 3
Dec 1 11:50:01 kernel: usb 1-2: configuration #1 chosen from 1 choice
Dec 1 11:50:01 kernel: cypress 1-2:1.0: HID->COM RS232 Adapter converter detected
Dec 1 11:50:01 kernel: usb 1-2: HID->COM RS232 Adapter converter now attached to ttyUSB1

Alguém poderia me dar uma luz..

Obrigado...

[9] Comentário enviado por mr.wolf em 20/08/2008 - 16:06h

Este artigo é um dos melhores que já li...

Porém comigo não está sendo mil maravilhas... Fiz tudo que o artigo manda... porém após rodar o "RODAR_SMS.sh" (o qual não dá erro nenhum)... rodo o "CONSOLE.sh", vou a opção 3 para verificar as configurações, e ele mostra que a porta é ttyS0, então aperto 1 para alterar para ttyS8, conforme indicado no artigo e também no script "RODAR_SMS.sh", mas então ele dá uma mensagem assim :
" Porta de Comunicação:
Erro: Você primeiro precisar iniciar o sistema.
Pressione <ENTER> para finalizar... "

Então pressiono ENTER, e ele cai fora, se rodo CONSOLE.sh novamente e peço 1 - Status, sempre aparece OFF...

Alguém tem uma luz...

Estou utilizando o Fedora 9 x64...

Obrigado

[10] Comentário enviado por tuxsp em 23/01/2010 - 11:12h

Muito bom o artigo do nosso amigo _nomura.

Ao instalar o aplicativo me deparei com o erro de que não era possível estabelecer conexão:


Jan 22 17:18:30 [Log.RedirectOutputStream]: [main - ERROR] java.rmi.ConnectIOException: Exception creating connection to: 127.0.0.1; nested exception is: java.net.SocketException: Network is unreachable


Após alguma pesquisa encontrei a solução abaixo referente ao motivo do problema:

_=_=_=

From: Heikki Henriksen <heikkih@gmail.com>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: net.ipv6.bindv6only=1 breaks java networking
Date: Tue, 08 Dec 2009 16:11:44 +0100

Package: sun-java6-jdk
Version: 6-17-1
Severity: important

Netbase has recently introduced the sysctl-setting
net.ipv6.bindv6only=1 in /etc/sysctl.d/bindv6only.conf and this setting
will probably be the default in squeeze.

This setting breaks networking in java, and any traffic will always
result in a "java.net.SocketException: Network is unreachable".

It should probably be an rc-bug, but setting as important for now, since
users can easily rectify the issue.

Quick fix for users hit by this:

sudo sed -i 's/net.ipv6.bindv6only\ =\ 1/net.ipv6.bindv6only\ =\ 0/' \
/etc/sysctl.d/bindv6only.conf && sudo invoke-rc.d procps restart
cheers,
Heikki

[11] Comentário enviado por nfermat em 24/02/2010 - 01:32h

Alguém tem o arquivo de instalação antigo que possa enviar?
Tem algum bug no novo que não funciona em meu sistema

# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007fa50b6fc462, pid=11502, tid=140348050437904
#
# JRE version: 6.0_18-b07
# Java VM: Java HotSpot(TM) 64-Bit Server VM (16.0-b13 mixed mode linux-amd64 )
# Problematic frame:
# C [librxtxSerial.so+0x6462] read_byte_array+0x52
#

[12] Comentário enviado por rogerio.vaz em 06/07/2011 - 19:37h

Um pouco fora de tempo, mas para resolver esse problema citado pelo nfermat, faça assim:

Instale o pacote libxtx-java através do comando apt-get install librxtx-java

Substitua o arquivo librxtxSerial.so que está em PastaDeInstalacao/libs/64 pelo arquivo /usr/lib/jni/librxtxSerial.so

Execute novamente o Power View e seja feliz!

[13] Comentário enviado por sylviomgs em 14/02/2013 - 14:29h

Mas é possível um no-break gerenciável ser configurado para desligar um servidor com Windows e outro com Linux?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts