Dominar as ferramentas de monitoramento do sistema para Ubuntu Server é essencial para garantir desempenho ideal, diagnosticar problemas e manter a confiabilidade do sistema. Neste tutorial, exploraremos as melhores ferramentas de monitoramento do sistema disponíveis para servidores Ubuntu, incluindo monitoramento de recursos em tempo real, E/S de disco, atividade de rede e painéis de servidor.
Artigo anterior:
01. Introdução ao Ubuntu Server – SysOSX: AI & Cloud
02. Como configurar seu primeiro servidor Ubuntu: guia para iniciantes – SysOSX: AI & Cloud
03.Dominando a linha de comando do Linux para Ubuntu Server – SysOSX: AI & Cloud
04. Gerenciamento de usuários e permissões no Ubuntu Server: guia completo – SysOSX: AI & Cloud
05. Fundamentos de rede para Ubuntu Server: guia completo – SysOSX: AI & Cloud
06. Instalação e gerenciamento de software no Ubuntu Server: guia completo – SysOSX: AI & Cloud
07.Aplicação de patches e atualização do Ubuntu Server: guia completo – SysOSX: AI & Cloud
08. Protegendo seu servidor Ubuntu: passos práticos para reforço e proteção – SysOSX: AI & Cloud
09. Auditoria e registro de logs no servidor Ubuntu
Usar htop e top para monitoramento de recursos em tempo real
Introdução a htop e top
Ambas htop e top são ferramentas de linha de comando essenciais para monitorar os recursos do sistema em tempo real. Elas exibem informações como uso de CPU, consumo de memória e processos em execução.
Instalação e execução de htop (já vem instalado por padrão)
Para instalar htop, execute:
sudo apt update
sudo apt install htop
Para iniciar htop, basta digitar:
htop
Principais recursos e cenários de uso de htop
htop é ideal para:
- Identificar processos que consomem muitos recursos: você pode ordenar os processos por uso de CPU ou memória para encontrar rapidamente os que mais consomem recursos.
- Encerrar processos: Use
F9para encerrar processos que não respondem ou problemáticos diretamente da interface dohtop. - Monitorar threads: expanda os processos para ver threads individuais e seu uso de recursos.
- Personalizar colunas: Pressione
F2para configurar a exibição e adicionar/remover métricas como E/S de disco ou utilização de rede.
Usar top
top é uma ferramenta mais simples, pré-instalada em servidores Ubuntu. Para executá-la:
top
Comandos principais para top:
- Pressione
Shift + ppara ordenar por uso de CPU. - Pressione
Shift + mpara ordenar por uso de memória. - Pressione
qpara sair.
Instalação e configuração de sysstat para métricas de desempenho
O que é sysstat?
sysstat é um conjunto de ferramentas para coletar e relatar métricas de desempenho do sistema ao longo do tempo. Inclui utilitários como iostat, vmstat, e sar.
Instalação de sysstat
Para instalar sysstat:
sudo apt update
sudo apt install sysstat
Configuração de sysstat
Habilite a coleta de dados editando o arquivo de configuração:
sudo nano /etc/default/sysstat
Altere ENABLED="false" para ENABLED="true". Salve, saia e reinicie o serviço:
sudo systemctl restart sysstat
Usar sysstat e suas ferramentas
iostat: monitorar o desempenho de E/S de disco.iostat

vmstat: monitorar estatísticas de memória, CPU e E/S.vmstat

sar: gerar relatórios históricos da atividade do sistema.sar -u 5 10 # CPU usage every 5 seconds for 10 intervals

Monitoramento de E/S de disco e atividade de rede
Monitoramento de E/S de disco com iotop
Use ferramentas como iostat (do sysstat) ou iotop para monitorar a E/S de disco em tempo real.
Para instalar iotop:
sudo apt update
sudo apt install iotop
Execute iotop com:
sudo iotop
No entanto, alguns usuários podem encontrar o seguinte erro ao executar iotop:
CONFIG_TASK_DELAY_ACCT not enabled in kernel, cannot determine SWAPIN and IO %
Como corrigir o erro do iotop .
Esse problema ocorre porque o kernel não tem o recurso CONFIG_TASK_DELAY_ACCT , necessário para que iotop exiba as porcentagens de SWAPIN e IO. Felizmente, isso pode ser resolvido atualizando a configuração do GRUB.
Etapas para corrigir o erro
- Edite o arquivo de configuração do GRUB:
sudo nano /etc/default/grub
- Adicione a opção
delayacctà entradaGRUB_CMDLINE_LINUX_DEFAULT. Se a linha estiver inicialmente vazia (GRUB_CMDLINE_LINUX_DEFAULT=""), atualize-a da seguinte forma:GRUB_CMDLINE_LINUX_DEFAULT="delayacct"Se a linha já contiver outras opções, acrescentedelayacctàs opções existentes, separadas por um espaço. Por exemplo:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash delayacct"
- Atualize o GRUB para aplicar as alterações:
sudo update-grub
- Reinicie o servidor:
sudo reboot
Após a reinicialização, o erro deve estar resolvido e iotop funcionará corretamente.
Usar `iotop
Depois que o problema for corrigido, você pode executar iotop para monitorar a E/S de disco:
sudo iotop
O que você pode fazer com iotop
- Identificar processos que causam alta E/S de disco.
- Monitorar operações de leitura/gravação em tempo real.
- Ordenar processos por uso de disco.
Monitoramento de atividade de rede
Usar iftop
Para instalar iftop:
sudo apt update
sudo apt install iftop
Execute iftop com:
sudo iftop
Usar nload
Para instalar nload:
sudo apt update
sudo apt install nload
Execute nload com:
nload
Configuração de painéis de servidor com o Cockpit
O que é o Cockpit?
Cockpit é um painel gráfico baseado na web para monitorar e gerenciar servidores. Ele fornece informações em tempo real sobre CPU, memória, uso de disco e atividade de rede.
Instalação do Cockpit
Para instalar o Cockpit:
sudo apt update
sudo apt install cockpit
Acesso ao Cockpit
Inicie o serviço do Cockpit:
sudo systemctl start cockpit.socket
sudo systemctl enable cockpit.socket
Acesse o painel navegando até:
https://<your-server-ip>:9090
Recursos do Cockpit
- Monitorar o desempenho do sistema visualmente.
- Gerenciar serviços, logs e contas de usuário.
- Ver o uso de disco e a atividade de rede.
Outras ferramentas de monitoramento recomendadas
Embora ferramentas como htop, sysstat, e Cockpit sejam excelentes para a maioria das necessidades de monitoramento de servidores, existem outras ferramentas avançadas que podem fornecer informações mais detalhadas e melhor visualização para ambientes complexos. Abaixo estão algumas ferramentas de monitoramento adicionais que você pode considerar:
Prometheus e Grafana
Prometheus
Prometheus é um kit de ferramentas de monitoramento e alerta de código aberto projetado para confiabilidade e escalabilidade. É amplamente usado em ambientes nativos da nuvem e é particularmente adequado para monitorar sistemas distribuídos e microsserviços.
Principais recursos:
- Banco de dados de séries temporais: armazena métricas com eficiência, com carimbos de data/hora.
- Linguagem de consulta poderosa (
PromQL) para analisar métricas. - Sistema de alertas: integrado a ferramentas como o Alertmanager para notificações.
- Arquitetura baseada em pull: o Prometheus coleta ativamente métricas dos alvos.
Casos de uso:
- Monitorar o uso de CPU, memória e disco em vários servidores.
- Acompanhar métricas específicas do aplicativo (por exemplo, latência de solicitações HTTP, taxas de erro).
- Gerar alertas para métricas incomuns ou falhas do sistema.
Instruções de instalação:
Para instalar o Prometheus no Ubuntu:
sudo apt update
wget https://github.com/prometheus/prometheus/releases/download/v2.44.0/prometheus-2.44.0.linux-amd64.tar.gz
tar xvf prometheus-2.44.0.linux-amd64.tar.gz
cd prometheus-2.44.0.linux-amd64
./prometheus
Acesse o Prometheus navegando até:
http://<your-server-ip>:9090
Observe que tanto o Prometheus quanto o Cockpit usam a porta 9090 por padrão; se você os usar ao mesmo tempo, talvez queira mudar a porta padrão:
Resolução do conflito de portas entre Prometheus e Cockpit
Opção 1: alterar a porta do Prometheus
Você pode configurar o Prometheus para usar uma porta diferente modificando seu arquivo de configuração.
- Abra o arquivo de configuração do Prometheus:
nano prometheus.yml
- Adicione ou modifique a flag
--web.listen-addressno comando de inicialização do Prometheus ou no arquivo de serviço para especificar uma porta diferente (por exemplo,9091):
--web.listen-address=:9091
- Reinicie o Prometheus para aplicar as alterações:
sudo systemctl restart prometheus
- Acesse o Prometheus usando a nova porta:
http://<your-server-ip>:9091
Opção 2: alterar a porta do Cockpit
A porta padrão do Cockpit também pode ser alterada se você preferir manter o Prometheus na porta 9090.
- Crie um arquivo de configuração personalizado para o Cockpit:
sudo nano /lib/systemd/system/cockpit.socket
- Adicione as seguintes linhas para especificar uma nova porta (por exemplo,
9092):ListenStream=9092 - Reinicie o serviço do Cockpit:
systemctl daemon-reload
systemctl restart cockpit.socket
- Acesse o Cockpit usando a nova porta:
https://<your-server-ip>:9092
Opção 3: usar um proxy reverso
Se mudar as portas não for o ideal, você pode usar um proxy reverso (por exemplo, Nginx ou Apache) para mapear os dois serviços para URLs diferentes, mantendo as portas padrão.
Por exemplo:
- Prometheus:
http://<your-server-ip>/prometheus
- Cockpit:
http://<your-server-ip>/cockpit
Recomendação
Se você usa as duas ferramentas com frequência:
Documente as alterações de porta para referência futura ou para outros administradores.
Altere Prometheus para a porta 9091 , pois o Cockpit é acessado com mais frequência por meio de sua porta padrão 9090.
Grafana
Grafana é uma plataforma de visualização poderosa que se integra perfeitamente ao Prometheus. Ela permite criar painéis dinâmicos para visualizar métricas e tendências.
Principais recursos:
- Suporte a várias fontes: funciona com Prometheus, Elasticsearch, MySQL e muito mais.
- Painéis personalizados: crie gráficos interativos, mapas de calor e tabelas.
- Alertas: configure alertas com base em limites para métricas importantes.
- Compartilhamento: compartilhe painéis facilmente com as equipes.
Casos de uso:
- Visualizar métricas de desempenho do servidor coletadas pelo Prometheus.
- Monitorar tendências ao longo do tempo para um melhor planejamento de capacidade.
- Exibir dados de várias fontes em um painel unificado.
Instruções de instalação:
Para instalar o Grafana no Ubuntu:
sudo apt update
sudo apt install -y software-properties-common
sudo wget -q -O - https://packages.grafana.com/gpg.key | gpg --dearmor | sudo tee /usr/share/keyrings/grafana.gpg > /dev/null
sudo echo "deb [signed-by=/usr/share/keyrings/grafana.gpg] https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
sudo apt update
sudo apt install grafana
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
sudo systemctl status grafana-server
Acesse o Grafana navegando até:
http://<your-server-ip>:3000
Nagios
Nagios é uma das ferramentas de monitoramento de infraestrutura mais populares. Ele fornece monitoramento e alertas abrangentes para servidores, dispositivos de rede e aplicativos. É altamente personalizável e oferece suporte a plug-ins para funcionalidade estendida.
Principais recursos:
- Monitorar a integridade do servidor: acompanhar o uso de CPU, memória, disco e muito mais.
- Monitoramento de rede: detectar problemas com roteadores, switches e firewalls.
- Alertas: enviar notificações por e-mail, SMS ou integrações com o Slack.
- Ampla biblioteca de plug-ins: monitorar bancos de dados, servidores web e outros serviços.
Casos de uso:
- Monitorar servidores e aplicativos críticos em ambientes de produção.
- Receber alertas quando o espaço em disco estiver acabando ou a utilização da CPU estiver alta.
- Monitorar o tempo de atividade e a disponibilidade de dispositivos de rede.
Instruções de instalação:
Para instalar o Nagios no Ubuntu:
sudo apt install nagios4 nagios-plugins
sudo a2enmod rewrite cgi
systemctl restart apache2
sudo systemctl status nagios4
sudo systemctl enable nagios4
sudo systemctl start nagios4
O Nagios requer configuração adicional para definir os alvos de monitoramento. Para obter detalhes de configuração, consulte a documentação do Nagios.
Netdata: ferramenta de monitoramento do sistema em tempo real
Netdata é uma ferramenta de monitoramento leve e em tempo real que fornece informações detalhadas sobre o desempenho do sistema. É fácil de instalar e vem com uma bela interface web para visualizar métricas.
Etapa 1: atualizar os pacotes do sistema
Certifique-se de que seu sistema esteja atualizado executando os seguintes comandos no terminal:
sudo apt update
sudo apt upgrade
Etapa 2: instalar o Netdata
Instale o Netdata a partir do repositório padrão do Ubuntu:
sudo apt install netdata
Etapa 3: configurar o Netdata
Edite o arquivo de configuração do Netdata para permitir acesso remoto:
sudo nano /etc/netdata/netdata.conf
Localize o campo bind socket to IP e substitua 127.0.0.1 pelo endereço IP do seu servidor:
[global]
bind socket to IP = <your-server-ip>
Salve o arquivo e reinicie o serviço do Netdata:
sudo systemctl restart netdata
Etapa 4: configurar o firewall
Permita o acesso à porta padrão do Netdata (19999) e habilite o firewall:
sudo ufw allow 19999
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status
Etapa 5: acessar a interface web do Netdata
Abra seu navegador web e navegue até:
http://<your-server-ip>:19999

Comparação de ferramentas
| Ferramenta | Ideal para | Facilidade de uso | Visualização | Alertas |
|---|---|---|---|---|
| Prometheus | Coleta de métricas em larga escala | Moderada | Limitada | Sim |
| Grafana | Painéis avançados | Fácil | Excelente | Sim |
| Nagios | Monitoramento de infraestrutura | Moderada | Básica | Sim |
| Netdata | Monitoramento leve em tempo real | Fácil | Excelente | Sim |
Conclusão
Monitorar seu servidor Ubuntu é fundamental para manter o desempenho, diagnosticar problemas e evitar tempo de inatividade. Ferramentas como htop, top, sysstat, Cockpit e outras dão aos administradores a capacidade de monitorar recursos com eficácia. Quer você prefira ferramentas de linha de comando ou painéis gráficos, este guia aborda tudo o que você precisa para configurar um sistema de monitoramento robusto.
A seguir: Registro e monitoramento centralizados
No próximo artigo, vamos nos concentrar em registro e monitoramento centralizados para otimizar ainda mais o gerenciamento de servidores e o acompanhamento de desempenho. Os tópicos incluirão:
- Configurar rsyslog ou syslog-ng para registro centralizado.
- Encaminhar logs para um servidor de registro remoto para melhor organização e análise.
- Integrar seu servidor Ubuntu a plataformas de monitoramento robustas como Nagios, Zabbix, ou Prometheus para obter informações mais detalhadas sobre a integridade e o desempenho do sistema.
Fique ligado para aprender a centralizar sua infraestrutura de logs e aproveitar as ferramentas de monitoramento para otimizar as operações do servidor com eficácia!










2 thoughts on “10. System Monitoring Tools for Ubuntu Server: A Comprehensive Guide”