Netdata - uma ferramenta de monitoramento de desempenho em tempo real para sistemas Linux
netdata é um utilitário Linux extremamente otimizado que fornece monitoramento de desempenho em tempo real (por segundo) para sistemas Linux, aplicativos, dispositivos SNMP, etc. e mostra gráficos interativos completos que renderizam absolutamente todos os valores coletados pela web navegador para analisá-los.
Não perca: 20 ferramentas úteis de linha de comando para monitorar o desempenho do Linux
Ele foi desenvolvido para ser instalado em cada sistema Linux, sem interromper os aplicativos em execução no momento. Você pode usar esta ferramenta para monitorar e obter uma visão geral do que está acontecendo em tempo real e do que acabou de acontecer em seus sistemas e aplicativos Linux.
Isto é o que ele monitora:
- Uso total e por núcleo da CPU, interrupções, softirqs e frequência.
- Uso total de memória, RAM, Swap e Kernel.
- E/S de disco (por disco: largura de banda, operações, backlog, utilização, etc.).
- Monitora interfaces de rede, incluindo: largura de banda, pacotes, erros, quedas, etc.).
- Monitora conexões, eventos, erros do firewall Netfilter/iptables Linux, etc.
- Processos (em execução, bloqueados, bifurcados, ativos, etc).
- Aplicativos do sistema com a árvore de processos (CPU, memória, swap, leituras/gravações de disco, threads, etc).
- Monitoramento de status Apache e Nginx com mod_status.
- Monitoramento de banco de dados MySQL: consultas, atualizações, bloqueios, problemas, threads, etc.
- Fila de mensagens do servidor de e-mail Postfix.
- Largura de banda do servidor proxy Squid e monitoramento de solicitações.
- Sensores de hardware (temperatura, tensão, ventiladores, potência, umidade, etc).
- Dispositivos SNMP.
Instalação netdata em sistemas Linux
A versão mais recente do netdata pode ser facilmente instalada no Arch Linux, Gentoo Linux, Solus Linux e Alpine Linux usando seu gerenciador de pacotes conforme mostrado.
sudo pacman -S netdata [Install Netdata on Arch Linux]
sudo emerge --ask netdata [Install Netdata on Gentoo Linux]
sudo eopkg install netdata [Install Netdata on Solus Linux]
sudo apk add netdata [Install Netdata on Alpine Linux]
No Debian/Ubuntu e no RHEL/CentOS/Fedora, há um script de instalação de linha que instalará o netdata mais recente e também o manterá atualizado automaticamente.
bash <(curl -Ss https://my-netdata.io/kickstart.sh [On 32-bit]
bash <(curl -Ss https://my-netdata.io/kickstart-static64.sh) [On 64-bit]
O script acima irá:
- descobre a distribuição e instala os pacotes de software necessários para construir o netdata (pedirá confirmação).
- baixa a árvore de origem netdata mais recente para /usr/src/netdata.git.
- instala o netdata executando
./netdata-installer.sh
da árvore de origem. - instala
netdata-updater.sh
em cron.daily, então seu netdata será atualizado diariamente (você receberá um alerta do cron somente se a atualização falhar).
Nota: O script kickstart.sh
progride todos os seus parâmetros para netdata-installer.sh
, para que você possa defina mais parâmetros para modificar a fonte de instalação, ativar/desativar plugins, etc.
Alternativamente, você também pode instalar o netdata mais recente manualmente clonando seu repositório, mas antes de começar a instalar o netdata, certifique-se de ter esses pacotes básicos de ambiente de construção instalados no sistema, se não, instale-os usando sua respectiva distribuição gerenciador de pacotes conforme mostrado:
No Debian/Ubuntu
apt-get install zlib1g-dev gcc make git autoconf autogen automake pkg-config
No Centos/Redhat/Fedora
yum install zlib-devel gcc make git autoconf autogen automake pkgconfig
Em seguida, clone o repositório netdata do git e execute o script do instalador netdata para construí-lo.
git clone https://github.com/firehol/netdata.git --depth=1
cd netdata
./netdata-installer.sh
Nota: O script netdata-installer.sh
criará o netdata e o instalará em seu sistema Linux.
Assim que o instalador do netdata terminar, o arquivo /etc/netdata/netdata.conf
será criado em seu sistema.
Agora é hora de iniciar o netdata executando o seguinte comando no terminal.
/usr/sbin/netdata
Você também pode parar netdata encerrando seu processo com o comando killall conforme mostrado.
killall netdata
Nota: Netdata salva ao sair as informações do banco de dados round robbin no arquivo /var/cache/netdata
, para que quando você começar novamente netdata, ele continuará de onde foi interrompido da última vez.
Iniciando e testando netdata
Agora abra seu navegador e navegue até o seguinte endereço para acessar o site de todos os gráficos:
http://127.0.0.1:19999/
Confira o vídeo que mostra como é feito o monitoramento de desempenho do Linux em tempo real aqui: https://www.youtube.com/watch?v=QIZXS8A4BvI
Você também pode visualizar a configuração em execução do netdata a qualquer momento, acessando:
http://127.0.0.1:19999/netdata.conf
Atualizando dados de rede
Você pode atualizar o daemon netdata para a versão mais recente acessando o diretório netdata.git
que você baixou antes e executando:
cd /path/to/netdata.git
git pull
./netdata-installer.sh
O script do instalador netdata acima criará uma nova versão e reiniciará o netdata.
Referência: https://github.com/firehol/netdata/