Alguma dica sobre software para monitorar se um servidor web está instalado e funcionando no Linux? Ele deve ser capaz de executar sem saber nada além do URL. E deve ter funcionalidade para enviar um alerta por email quando o site for desativado. Não deve ser difícil escrever um script para isso, mas parece inútil se já houver algo legal por aí.
Observe que vou monitorar servidores internos, portanto, essa deve ser uma ferramenta executada na minha máquina na mesma rede, não serviços externos baseados na Web.
E observe que soluções pequenas e simples são preferidas.
Atualização : Eu finalmente criei um pequeno script python que estou usando atualmente para isso, pode ser encontrado aqui .
linux
web-server
monitoring
uptime
Zitrax
fonte
fonte
Respostas:
Você pode usar o wget em um script como este
E você receberá um email se o wget não puder acessar o site pela primeira vez em três segundos.
Configure um trabalho cron para executar o script a cada poucos minutos.
Existem muitas outras alternativas, mas essa é provavelmente a mais simples de configurar do zero.
fonte
--no-check-certificate
? Ser avisado sobre a implantação interrompida do TLS também é uma informação valiosa.Você tem muitas opções, eu vou lhe dar duas.
O Nagios é um aplicativo de monitoramento completo capaz de monitorar muito mais que o http, mas também lida com isso. Ele também pode criar todos os tipos de repots ("Diga-me a porcentagem de tempo de atividade do nosso servidor / serviço X nesta semana / mês / ano ...")
Monit é outra escolha popular. Talvez não seja tão cheio de recursos quanto Nagios, mas, no entanto, é legal.
fonte
Bem, se você quiser executar algo você mesmo.
Estas são algumas opções:
Ou se você deseja uma solução gerenciada:
Pessoalmente, acho que o Zabbix e o Zenoss são um exagero se você simplesmente deseja monitorar o status de um servidor da web. Mas se você também planeja monitorar qualquer outra coisa, eles têm mais recursos do que você precisará;)
fonte
Votei positivamente na resposta de Richard e Janne, mas se você quiser mais detalhes sobre o que o servidor da web está enviando e recebendo, os primeiros capítulos do livro de O'Reilly, "Web Client Programming with Perl", de Clinton Wong, oferecem uma ótima visão geral. do protocolo HTTP. Se você deseja um monitoramento mais detalhado do que apenas para cima / para baixo e deseja incluir códigos de resposta, etc., é um bom ponto de partida.
O livro é antigo, mas ainda válido. Publicado em 1997, O'Reilly publicou o conteúdo do livro on-line gratuitamente em http://oreilly.com/openbook/webclient/ como parte de sua iniciativa OpenBook.
fonte
Eu votaria na resposta de Janne se tivesse representante.
Nota importante sobre o Nagios, o fato de ser totalmente desenvolvido não significa que seja uma instalação longa e difícil. É bastante simples e amigável.
Segundo, você deve realmente verificar o que o seu fornecedor de hardware tem a oferecer. Por exemplo, estou usando o HP Proliants e eles têm rpm muito bons que ajudam.
fonte
Se você gosta do que o Nagios faz, mas não quer se aprofundar nos internos, também pode conferir o Opsview . É o Nagios e algumas outras ferramentas, mas entregues através de uma boa interface gráfica. É um bom ponto de partida.
fonte
Concordo que o Nagios é um ótimo software, mas se você quiser um freeware, sugiro que você dê uma olhada no AppPerfect Agentless Monitor . O Monitoramento do servidor Linux com AppPerfect é extremamente leve e adiciona uma sobrecarga insignificante ao sistema de destino durante o monitoramento. Você pode monitorar todas as estatísticas importantes relacionadas à CPU, disco, rede e memória usando esta ferramenta. A instalação é muito simples e o software é muito fácil de usar. Uma documentação e tutorial claros também estão disponíveis aqui para monitoramento de servidor Linux
fonte
Uma solução que tenho usado é o cônsul da HashiCorp .
Certamente é mais do que um script simples com saída de email, mas a configuração do tipo de monitoramento de que você está falando ainda é muito fácil (algumas linhas de YAML ou JSON).
Você provavelmente criaria um modelo, mas o monitoramento de um único servidor pode ser feito da seguinte maneira:
Um motivo para sugerir isso é que ele permite que você vá além do monitoramento 'apenas' do front-end da web, se desejar, e também permite agrupar verificações por serviço (por exemplo, seu
report_server
serviço pode ter uma verificação do front-end da web). end, um para o back-end da web e outro para o banco de dados primário, os quais forneceriam alertas vinculados a esse serviço único).fonte