FreeBSD determina se a reinicialização foi devido à perda de energia

1

Estamos executando o FreeNAS (que é construído no FreeBSD) para rodar nossos sistemas de armazenamento de dados. Ele está sendo executado em um APC Smart-UPS 750VA X.

Em algumas ocasiões, tenho sido alertado para o fato de que o servidor está inativo por nossos sistemas de monitoramento. Após alguns minutos, o servidor está funcionando sem problemas.

Quando executo o last , posso ver que o servidor acabou de inicializar e verificar /var/log/messages . Posso ver que ele passou por todo o processo de inicialização, mas não consigo ver nenhum pânico ou qualquer motivo para ele ser desligado . Ele literalmente vai de ser bom para a saída de informações de inicialização.

Então isso me levou a pensar se é uma queda de energia que está causando isso acontecer, mas como posso determinar com certeza que este é o caso? Eu acho que conseguir um cartão interativo para o APC UPS e conectá-lo à rede seria uma maneira ... Qualquer outra maneira de eu descobrir agora por que isso aconteceu?

    
por Chris 16.11.2014 / 00:25

5 respostas

7

Acho que há algumas soluções óbvias para descobrir mais:

  • Conecte um dispositivo adicional à mesma saída do no-break. Se ambos os dispositivos forem reinicializados simultaneamente, isso seria uma evidência de um problema de energia.
  • Conecte alguns equipamentos que podem monitorar a saída de tensão real pela saída do no-break e registrar as alterações ao longo do tempo.
por 16.11.2014 / 02:43
2

Sua máquina não pode dizer o que aconteceu em uma queda de energia: esses elétrons simplesmente param de aparecer. O no-break pode saber (se você está perdendo energia, ao contrário de uma fonte de alimentação escamosa ou algo assim), mas eu não acho que você tenha muita esperança de que o servidor seja capaz de informá-lo.

    
por 16.11.2014 / 01:44
2

O FreeBSD tem uma ótima porta chamada sysutils/apcupsd destinada a interagir com as smart-UPSes da APC.

Conecte seu no-break com o cabo usb ao host. Edite /usr/local/etc/apcupsd/apcupsd.conf:

###
UPSCABLE usb
UPSTYPE usb
DEVICE 
POLLTIME 60
LOCKFILE /var/spool/lock
BATTERYLEVEL 15
MINUTES 10
TIMEOUT 0
ANNOY 300
ANNOYDELAY 60
KILLDELAY 120
UPSCLASS standalone
STATTIME 60
STATFILE /var/log/apcupsd.status
###

Essa configuração significa o próximo comportamento:

  • quando a energia é perdida por menos de ANNOYDELAY segundos, a UPS entra na bateria sem sinal

  • depois que ANNOYDELAY segundos, a UPS começa a apitar.

  • quando (o nível de acesso se torna inferior a BATTERYLEVEL por cento) OU (o tempo estimado na bateria é menor que MINUTOS), apcupsd aguardará KILLDELAY segundos e começará shutdown -h now process.

  • depois que o no-break desligará a carga e entrará em hibernação.

  • quando a energia estiver desligada, o UPS ativa a carga e, se estiver configurado para inicializar após a perda de energia, será inicializado normalmente e o ciclo estará concluído.

por 16.11.2014 / 14:32
2

Eu não sinto que você tenha feito o mínimo de solução de problemas aqui. Isso se tornou uma má pergunta por causa dos detalhes do susto apresentados.

  • Talvez o seu servidor esteja falhando.
  • Que tipo de hardware de servidor você está usando?
  • Você tem gerenciamento fora de banda neste servidor? ( OIT, IPMI, DRAC ) Em caso afirmativo, o que isso significa?
  • Com que frequência isso acontece?
  • Algum dos seus outros dispositivos na mesma sala é redefinido? Comuta? Outros servidores? O que mais é afetado?
  • Onde seu sistema de monitoramento está localizado em relação ao servidor, já que claramente não está tendo problemas?

Coisa óbvia a fazer ...

  • Conecte o cabo serial preto da APC ao seu no-break e ao seu servidor FreeNAS.
  • Veja os registros do seu serviço apcupsd. ( /var/log/serviceapcupsd.events no Linux )

(fácil)

2014-10-27 05:18:35 -0400  Power failure.
2014-10-27 05:18:38 -0400  Power is back. UPS running on mains.
2014-10-27 13:20:22 -0400  Power failure.
2014-10-27 13:20:25 -0400  Power is back. UPS running on mains.
2014-10-29 08:00:51 -0400  Power failure.
2014-10-29 08:00:54 -0400  Power is back. UPS running on mains.
2014-10-29 08:02:13 -0400  Power failure.
2014-10-29 08:02:16 -0400  Power is back. UPS running on mains.
2014-11-01 10:05:41 -0400  Power failure.
2014-11-01 10:05:44 -0400  Power is back. UPS running on mains.
  • Verifique o status da sua bateria. Eles duram 3-5 anos. Se for mais antigo, não está mantendo sua carga de energia sob transferência para a energia da bateria.
  • Verifique a sensibilidade da sua UPS às flutuações de energia. Eles padrão para alta. Eu costumo mudar isso para BAIXO em ambientes de baixa qualidade.
  • O seu servidor FreeNAS possui fontes de alimentação duplas? ( se não, deve ) Conecte um na parede para contornar o no-break e eliminar o no-break como uma causa. Isso também pode ajudar a registrar se o servidor estiver reinicializando.
  • Atualize seu firmware do UPS.
  • Atualize o firmware do seu servidor.
  • Ligue para o suporte da APC .

(também fácil)

[root@General /var/log]# apcaccess status localhost:3551
APC      : 001,052,1316
DATE     : 2014-11-17 08:24:55 -0500
HOSTNAME : General
VERSION  : 3.14.10 (13 September 2011) redhat
UPSNAME  : UPS_IDEN
CABLE    : Custom Cable Smart
DRIVER   : APC Smart UPS (any)
UPSMODE  : Stand Alone
STARTTIME: 2014-09-24 14:14:05 -0400
MODEL    : SMART-UPS 2200 RM XL
STATUS   : ONLINE LOWBATT
LINEV    : 119.6 Volts
LOADPCT  :  60.8 Percent Load Capacity
BCHARGE  : 100.0 Percent
TIMELEFT :   3.0 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME  : 0 Seconds
MAXLINEV : 120.9 Volts
MINLINEV : 118.9 Volts
OUTPUTV  : 119.6 Volts
SENSE    : High
DWAKE    : 000 Seconds
DSHUTD   : 180 Seconds
DLOWBATT : 02 Minutes
LOTRANS  : 103.0 Volts
HITRANS  : 132.0 Volts
RETPCT   : 000.0 Percent
ITEMP    : 44.5 C Internal
ALARMDEL : 5 seconds
BATTV    : 56.1 Volts
LINEFREQ : 60.0 Hz
LASTXFER : No transfers since turnon
NUMXFERS : 11
XONBATT  : 2014-11-15 09:05:48 -0500
TONBATT  : 0 seconds
CUMONBATT: 44 seconds
XOFFBATT : 2014-11-15 09:05:52 -0500
SELFTEST : NO
STESTI   : 336
STATFLAG : 0x07000048 Status Flag
DIPSW    : 0x00 Dip Switch
REG1     : 0x00 Register 1
REG2     : 0x00 Register 2
REG3     : 0x00 Register 3
MANDATE  : 11/05/05
SERIALNO : QS0545111716
BATTDATE : 11/05/05
NOMOUTV  : 115 Volts
NOMBATTV :  48.0 Volts
EXTBATTS : 0
FIRMWARE : 83.14.D
END APC  : 2014-11-17 08:25:04 -0500
    
por 17.11.2014 / 14:37
1

Salve seus registros em disco. Você pode alterar o caminho do log para o disco por este utilitário ou alterar o caminho manualmente. Na próxima reinicialização você pode descobrir um motivo.

    
por 16.11.2014 / 21:58