Pular para o conteúdo
Início » Monitorando Servidores Linux: Como Verificar a Utilização da CPU, Memória e Disco

Monitorando Servidores Linux: Como Verificar a Utilização da CPU, Memória e Disco

Linux Server - Nerd Expert

O Linux, um sistema operacional de código aberto, desempenha um papel fundamental em muitos ambientes de produção. Para garantir que as aplicações continuem funcionando sem interrupções, é essencial monitorar o servidor e seus serviços. Entre os aspectos mais críticos que precisamos observar estão a utilização da CPU, memória e espaço em disco. Aqui, apresentaremos alguns comandos essenciais que ajudarão você a monitorar esses recursos no servidor Linux.

1. top: Uma Visão Geral do Sistema

Tasks: 100 total, 2 running, 98 sleeping, 0 stopped, 0 zombie
%Cpu(s): 5.3 us, 2.0 sy, 0.0 ni, 92.4 id, 0.2 wa, 0.0 hi, 0.1 si, 0.0 st
KiB Mem: 8167848 total, 6381564 used, 1786284 free, 183044 buffers
KiB Swap: 2097148 total, 0 used, 2097148 free. 4128136 cached Mem

O comando top oferece uma visão em tempo real dos processos em execução no sistema. Por exemplo, ao executar top, você pode ver a utilização da CPU, a quantidade de memória usada, o tempo de atividade do sistema e outras informações vitais.

2. htop: Uma Alternativa Avançada ao Top

1  [|||||||                    14.0%]     Tasks: 32, 60 thr; 2 running
2  [|||                        5.0%]     Load average: 0.00 0.01 0.05 
Mem[|||||||||||||||||     1.58G/7.75G]     Uptime: 10 days, 03:46:09
Swp[                          0K/2.00G]

Semelhante ao top, o htop permite rolar vertical e horizontalmente. Isso significa que você pode visualizar todos os processos em execução no sistema e suas linhas completas de comando. Por exemplo, ao usar htop, você pode facilmente identificar processos que consomem muita memória ou CPU.

3. vmstat: Monitorando a Máquina Virtual

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 1786284 183044 4128136    0    0    10    20  120  240  5  2 92  1  0

Com vmstat, você obtém informações sobre processos, memória, páginas, E/S de blocos, trapas, discos e atividade da CPU. Por exemplo, ao executar vmstat 5, você pode ver estatísticas atualizadas a cada 5 segundos.

4. iostat: Fique de Olho na E/S

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           5.30    0.00    2.00    0.20    0.00   92.50

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               2.00        10.00        40.00     10240      40960

O iostat ajuda a monitorar o desempenho do sistema e dispositivos de E/S, fornecendo detalhes sobre a carga da CPU e a atividade do dispositivo de E/S.

5. mpstat: Detalhes da Utilização da CPU

Linux 4.15.0-29-generic (ubuntu)  Tuesday 28 August  2020  _x86_64_  (2 CPU)

12:01:01 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
12:01:01 PM  all    5.30    0.00    2.00    0.20    0.00    0.10    0.00    0.00    0.00   92.40

Com o mpstat, você pode visualizar informações sobre a utilização da CPU, seja para CPUs individuais ou para todas as CPUs.

6. sar: Relatórios Abrangentes do Sistema

12:00:01 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle
12:10:01 PM     all      5.30      0.00      2.00      0.20      0.00     92.50

O sar coleta, relata e salva estatísticas do sistema, permitindo monitorar a utilização da CPU, atividade de E/S, utilização de memória, entre outros.

7. free: Verificando a Memória

              total        used        free      shared  buff/cache   available
Mem:        8167848     6381564     1786284       98304     183044     4128136
Swap:       2097148           0     2097148

O comando free mostra a quantidade total de memória física e swap, tanto livre quanto usada, além dos buffers e caches do kernel.

8. df: Monitorando o Espaço em Disco

Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda1       10238440  5120480   4612960  53% /
tmpfs            4083920        4   4083916   1% /dev/shm

Com df, você pode visualizar informações sobre o uso do espaço em disco dos sistemas de arquivos.

9. du: Avaliando o Uso do Disco

56K     /home/user/.config
12K     /home/user/.cache
68K     /home/user

O du estima e exibe o uso do espaço em disco de arquivos e diretórios. Por exemplo, du -sh /home/user mostrará o espaço total usado no diretório do usuário.

10. lsof: Identificando Arquivos Abertos

COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF    NODE NAME
bash    8423 user  cwd    DIR    8,1     4096  918734 /home/user
bash    8423 user  rtd    DIR    8,1     4096       2 /

O lsof lista informações sobre arquivos que são abertos por processos.

11. ps: Observando Processos em Execução

PID TTY          TIME CMD
8423 pts/1    00:00:00 bash
8529 pts/1    00:00:00 ps

Com o ps, você pode visualizar informações sobre os processos em execução no sistema.

12. uptime: Quanto Tempo Seu Sistema Está Ativo?

 12:10:01 up 10 days,  3:46,  1 user,  load average: 0.00, 0.01, 0.05

O comando uptime revela o tempo de atividade do sistema, mostrando há quanto tempo o servidor está funcionando sem reiniciar.

Conclusão

Manter a estabilidade e a performance do servidor é uma tarefa contínua e essencial. Ao se familiarizar com os comandos acima, administradores de sistema e engenheiros DevOps estarão equipados para monitorar e manter seus servidores Linux de forma eficaz. Estar ciente da saúde e do desempenho do seu servidor permite uma resposta rápida a possíveis problemas, garantindo operações ininterruptas e eficientes.