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.
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;
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;
Criar logins de usuário que executasse somente o comando de Shutdown de forma segura automaticamente;
Fazer com que a máquina com MS Windows XP PRO recebesse comandos do software da SMS para poder desligar-se;
Configurar os tempos de utilização de bateria e de shutdown antes do desligamento do nobreak;
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
[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 ...
[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
[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
[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...
[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