Quais ferramentas você usa para monitorar um servidor web?

47

Quais ferramentas você usa para monitorar um servidor web Ubuntu? Mais especificamente, eu gostaria de monitorar o tempo de atividade do servidor, o uso de recursos (RAM, CPU, largura de banda etc.), Apache, MySQL e PHP.

Olivier Lalonde
fonte

Respostas:

23

Nagios é minha ferramenta favorita para monitoramento. Ele pode monitorar servidores web, serviços, hosts e assim por diante. É altamente personalizável e existem muitos plugins disponíveis para diversos fins.

Alguns recursos do nagios:

  • Monitorar serviços de rede (SMTP, POP3, HTTP, NNTP, PING etc.)
  • Monitorar recursos do host (carga do processador, uso do disco etc.)
  • Permitir um design simples de plug-in
  • Faça verificações de serviço paralelizadas
  • Defina uma hierarquia de host de rede usando
  • Entre em contato com os administradores quando ocorrerem problemas de serviço ou host
  • Definir manipuladores de eventos a serem executados durante eventos de serviço ou host para resolução proativa de problemas
  • Rotação automatizada do arquivo de log
  • Suporte à implementação de hosts de monitoramento redundantes
  • Ofereça uma interface da web opcional para exibir o status atual da rede, o histórico de notificações e problemas, o arquivo de log etc.

Aqui está uma demonstração on-line: http://nagioscore.demos.nagios.com/

aneeshep
fonte
2
+1 para nagios: é um software maduro e poderoso, e você encontrará muitos tutoriais sobre como usá-lo.
crncosta
2
Nagios é o padrão de fato para serviços de monitoramento.
Nanne
22

munin e seus plugins são tudo que você precisa.

Ele verifica os recursos (como os outros fazem), mas, diferentemente deles, é totalmente não interativo. Ele grava um lote de arquivos e gráficos HTML sempre que é atualizado. Você pode compactá-las automaticamente e enviá-las por e-mail para você (o script teria que ser o seu trabalho, mas seria simples) ou você pode disponibilizá-las através de Apache et al (basta ligar a raiz de um host virtual /var/www/munin/).

A enorme vantagem sobre outras vias (interativas) é que não é um risco à segurança. A execução do Webmin (como um exemplo) significa que há um processo em execução com o qual as pessoas podem se comunicar. Esse é um vetor de ataque no seu sistema. E ser um aplicativo bastante popular significa que é bem direcionado por pessoas que usam servidores de hackers.

Pode ser um pouco "chapéu de papel alumínio", mas realmente é muito mais fácil trabalhar com segurança quando você tem apenas alguns vetores para cobrir.

Oli
fonte
11
Você também esqueceu de mencionar que ele tem a capacidade de paginar você quando as coisas saem dos limites normais. Observe que munin possui um vetor de ataque, pois o daemon do nó munin escuta em uma porta e pode ser explorável. No entanto, é muito menos provável que os compromissos do webmin.
SpamapS
16

Para uma exibição ao vivo, eu entraria usando ssh e depois executaria htop(para cpu, mem) e nloadpara carregar a rede.

tanto htop e Download de Firmware estão disponíveis nos repositórios do Ubuntu.

LassePoulsen
fonte
13

Depende das necessidades. Mas esta é minha pilha de monitoramento

  1. Nagios : Eu uso o nagios como um sistema de monitoramento centralizado para verificar a integridade de cada servidor. Isso me alerta se algo der errado. Por exemplo, tenho alertas definidos para situações como se meu tempo de resposta a uma API ultrapassasse um valor limite.
  2. Monit : Se algo fica totalmente louco, o monit cuida disso. Suponha que qualquer componente da minha pilha fique inoperante. Isso me alerta e também traz para mim.
  3. Logstash : qualquer atividade suspeita registrada nos meus logs, é o que eu informa.
  4. SeaLion : Agora, todas as opções acima me informam se houve algum problema com minha pilha. Mas o que causou o problema, eu depuro com o SeaLion. No início eu uso para registrar as saídas de ferramentas de perfil do sistema, como sar, top, uptime, iostat, vmstat, netstatetc em arquivos. Mas gerenciar esses enormes logs estava se tornando impossível para mim. O SeaLion executa todos esses comandos e mostra-o em um belo formato de linha do tempo. Também para mencionar que a instalação é tão fácil e simples.

Saída SeaLion

stylusbrook
fonte
O SeaLion é uma ótima ferramenta gratuita para gravar coisas acontecendo em um servidor!
Kouton
@stylusbrook existe alguma opção para configurar o servidor SeaLion na intranet, como o servidor NagiOS. por que confiamos nesse servidor remoto SeaLion?
Rahul Patil
3

Se você precisar de informações rápidas e simples, o ubuntu possui uma ferramenta chamada landscape-sysinfo

Isso imprimirá: carregamento do sistema, uso do disco rígido, uso da memória, número de processos e endereços IP da sua caixa

Basta entrar no seu console:

landscape-info
alexandru.topliceanu
fonte
11
Em 12,04 este comando é chamado de paisagem-sysinfo e ser capaz de usá-lo, você deve instalar o pacote paisagem-comum
gerasalus
2

Se você precisar de algo escalável (em outras palavras, você pode acabar monitorando vários servidores web, servidores DNS, etc.), recomendo o Cacti .

Ele tem uma curva de aprendizado mais acentuada do que a maioria, mas eu a usei no passado para coletar mais de 800 estatísticas a cada minuto, de várias fontes. O processo de coleta, uma vez encadeado, é concluído em cerca de 40 segundos.

Ele usa o RRDtool para representar graficamente as fontes. É baseado na Web e está nos repositórios.

Scaine
fonte
Eu amarrei a minha cabeça, mas os plugins e todos eram demais. pode revisitá-lo se eu precisar de algumas estatísticas do mongoDB.
theTuxRacer
Sim, é um pouco assustador para começar, mas siga o básico e se exercite, você ficará surpreso com seu poder e (eventualmente) simpatia geral.
Scaine
2

Eu gosto de usar um pacote que a maioria das pessoas provavelmente usará chamado Webmin

É um programa baseado na Web que permite monitorar quase todas as estatísticas do servidor, permite alterar as opções de energia (como desligar, reiniciar). Você pode adicionar usuários, iniciar / parar serviços e quase tudo o que você precisa fazer para um servidor. Eu recomendo que você tente!

Aqui está um bom tutorial para instalá-lo

Diz Jaunty, mas deve funcionar com qualquer versão do Ubuntu :)

O Webmin é considerado altamente inseguro, no entanto.

russjr08
fonte
O Webmin não é tanto para monitorar um servidor quanto para configurar um. Infelizmente, pode ser extremamente invasivo e, portanto, não recomendo que as pessoas o usem.
SpamapS
11
hmm, eu concordo que ele é usado principalmente para configurar servidores .. mas eu já o uso há algum tempo para monitorar também. usado ao lado do Monit (para trazer os serviços imediatamente de volta). sem mencionar o protocolo RDP muito útil e o backup completo do sistema, possui um módulo para enviar e-mails, SMS ou páginas (para alertar o administrador sobre qualquer coisa que não esteja cooperando). quanto a ser invasivo: como? Ele usa seu próprio servidor incorporado. Ele pode ser bloqueado usando certificados, endereço de host ou autenticação de dois fatores. e você pode remover o webmin a qualquer momento sem quebrar nada
RapidWebs
1

"Quais ferramentas você usa para monitorar um servidor web Ubuntu?"

Prefiro soluções caseiras a pacotes grandes e volumosos como o Nagios, que tendem a inundar minha caixa de entrada já inundada. Eu tenho uma pequena caixa Ubuntu Linux em execução na minha rede local:

http://www.newegg.com/Product/Product.aspx?Item=N82E16856119070

Ele coleta informações de outras caixas (incluindo servidores da Web) usando scripts personalizados e depois envia um email para um usuário local. Ele executa o Postfix (SMTP) e o Dovecot (POP3) para que o Postfix receba o email e o entregue ao Dovecot. Depois, uso o Thunderbird na área de trabalho para apontar para Dovecot e recuperar as mensagens geradas.

Descobri que, a menos que eu faça a coisa personalizada, acabo recebendo um zilhão de mensagens que simplesmente ignoro, mesmo que exista um problema que eu precise examinar. Gráficos bonitos são bons, mas saber exatamente qual é o problema é muito melhor. No entanto, um controle refinado como esse só é possível com software personalizado.

daoperator
fonte
Você tem um repositório público para esses scripts?
Gabriel Fair