Como verificar e monitorar a utilização da CPU no Linux

Como verificar e monitorar a utilização da CPU no Linux

Como administrador do Linux, é importante ficar de olho em como seu servidor (ou servidores) está executando. Uma maneira de medir seu desempenho é rastrear o uso da CPU. Isso lhe dará uma visão do desempenho do sistema, além de mostrar como os recursos de hardware estão sendo divididos nos vários serviços em execução.

Neste guia, examinaremos alguns métodos para verificar e monitorar a utilização da CPU em um sistema Linux. Esteja você encarregado de um servidor ou apenas sua área de trabalho pessoal, o uso da CPU do computador é uma informação útil que é fácil de adquirir.

Neste tutorial, você aprenderá:

  • Como verificar o uso da CPU com o topo
  • Compreendendo a saída de cima e HTOP
  • Monitore o uso da CPU com o pacote Systat
  • Como configurar o monitoramento da CPU altera
Como verificar e monitorar a utilização da CPU no Linux

Requisitos de software e convenções usadas

Requisitos de software e convenções de linha de comando Linux
Categoria Requisitos, convenções ou versão de software usada
Sistema Ubuntu, Debian, Centos, Rhel, Fedora
Programas Apache WebServer
Outro Acesso privilegiado ao seu sistema Linux como raiz ou através do sudo comando.
Convenções # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de sudo comando
$ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular

Como verificar o uso da CPU com o topo

Uma ótima maneira de verificar o uso atual da CPU é com o principal comando. Muita parte da saída deste comando é bastante complexa, mas fornece informações muito granulares sobre como a CPU está sendo utilizada em um sistema.

$ top 

Isso abrirá uma exibição no terminal que tem uma visão ao vivo dos serviços em execução no sistema, a quantidade de recursos do sistema que cada um desses serviços está usando, bem como um resumo da utilização da CPU do sistema, entre outras informações.

Verificando o uso atual da CPU com principal comando. OBSERVAÇÃO
O principal O comando funciona principalmente da mesma forma em todas as distribuições Linux, embora existam algumas variantes que podem exibir as informações de maneira um pouco diferente - em uma ordem diferente, por exemplo.

O programa principal instalado nos sistemas Ubuntu vem do pacote Procps-Ng e é o que trabalharemos neste artigo. Para verificar qual variante seu sistema está em execução, use a bandeira -v com principal:

$ top -v 

Saída esperada:

Procps-ng 3.3.12 


A janela de exibição do comando superior não é muito amigável no início devido à enorme quantidade de informações e a toda a terminologia e abreviações usadas. Abordaremos tudo o que você precisa saber abaixo, para que você possa interpretar os dados do topo.

A primeira linha mostra (em ordem): tempo do sistema, tempo de atividade do sistema (quanto tempo desde a última reinicialização), número de sessões de usuário ativas e a média de carga do sistema. A média de carga é particularmente relevante para nós, pois lança alguma luz sobre o uso da CPU do sistema ao longo do tempo.

Carga média

Existem três números dados para a média de carga. Os números são a carga média acima de 1, 5 e 15 minutos, respectivamente. Pense nesses números como porcentagens - uma carga de 0.2 significa 20%e uma carga de 1.00 significa 100%.

Isso deve ser fácil de entender, mas você também pode ver as médias de carga maiores que 1.00. Isso ocorre porque a média de carga não é uma medição direta do uso da CPU, mas quanto "funcionar" (carregar) seu sistema está tentando processar. Por exemplo, um valor de 2.50 significa que a carga atual é de 250%e também indica que o sistema está sobrecarregado por 150%.

A segunda linha de topo é bastante auto-explicativa e exibe o número de tarefas em execução no sistema, bem como o estado atual em que estão em.

A terceira linha é onde encontramos nosso uso da CPU, com algumas estatísticas detalhadas que tomam um pouco de conhecimento para interpretar.

Uso da CPU do topo
  • nós: Porcentagem do tempo de CPU gasto em espaço do usuário (Executando processos reproduzidos pelo usuário).
  • sy: Porcentagem do tempo gasto na CPU no espaço do kernel (executando sistema processos).
  • ni: Porcentagem do tempo gasto na CPU em processos de execução com uma prioridade definida pelo usuário (um especificado legal valor).
  • eu ia: Porcentagem do tempo gasto na CPU parado.
  • wa: Porcentagem do tempo de CPU gasto esperando em E/S do hardware. Exemplo: aguardando um disco rígido para terminar os dados de leitura.
  • oi: Porcentagem do tempo gasto na CPU Processando interrupções de hardware. Exemplo: a placa de rede (ou qualquer pedaço de hardware) interrompendo a CPU para notificá -la de que novos dados chegaram.
  • si: Porcentagem do tempo gasto na CPU Processando Software interrompe. Exemplo: um serviço de alta prioridade que interrompe a CPU.
  • st: Porcentagem do tempo da CPU que foi roubado De uma máquina virtual. Exemplo: a CPU necessária para "roubar" recursos de uma máquina virtual para processar a carga de trabalho da máquina física.

As próximas duas linhas são dedicadas às informações da memória e não são relevantes para monitorar o uso da CPU. Abaixo disso, há uma lista de processos em execução e uma coluna intitulada %CPU, que contém o uso atual da CPU de cada processo listado.

Porcentagem de uso da CPU

Isso fornece uma visão rápida de quais serviços estão mastigando mais recursos da CPU. Você pode sair do topo a qualquer momento pressionando 'q'.

Tornando o topo mais simples

Como o comando principal mostra muitas informações detalhadas, não é um método ideal para obter uma rápida olhada na utilização da CPU; no entanto, principal nos dá algumas opções para otimizar a saída e poupar alguns dos detalhes complexos.

Enquanto principal está em execução, você pode pressionar a tecla 'T' para percorrer algumas visualizações diferentes e obter uma saída mais simples do uso da CPU:

Gráfico de uso da CPU

Outra opção é usar htop, que é semelhante a principal Mas voltou mais para tarefas normais. Você pode usar o seu gerenciador de pacotes para instalá -lo.

Ubuntu e Debian:

$ sudo apt-get install htop 

Centos e Red Hat:

# yum instalar htop 

Fedora:

# dnf install htop 

Depois de instalado, basta digitar htop para abri -lo.

$ htop 
Comando HTOP

Como você pode ver na captura de tela acima, a saída de htop é mais conciso e mais adequado do que principal Para medição simples do uso da CPU.

Você pode sair dessa tela da mesma maneira que o TOP, pressionando 'q'.



Mais maneiras de verificar a utilização da CPU

Existem mais algumas ferramentas que podemos usar para verificar o uso da CPU e elas estão contidas no pacote Sysstat. Você terá que instalar este pacote para usar os comandos.

Ubuntu e Debian:

$ sudo apt-get install sysstat 

Centos e Red Hat:

# yum install sysstat 

Depois que o pacote sysstat for instalado, você terá acesso ao mpstat comando. Isso mostra muitas das mesmas informações que principal, Mas em uma saída concisa e única.

usuário@ubuntu1: ~ $ mpstat linux 5.0.0-23-Genérico (Ubuntu1) 16/01/2020 _X86_64_ (1 CPU) 02:31:05 cpu %usr %nice %sys %iowait %irq %mole rouba %gnice %gnice %Idle 02:31:05 Sou tudo 1.41 0.05 0.40 0.04 0.00 0.00 0.00 0.00 0.00 98.09 

Outro comando que vem com este pacote é sar. É mais útil quando associado a um número no comando. Isso permite especificar com que frequência (em segundos) o sar O comando deve gerar informações sobre a utilização da CPU.

Por exemplo, para verificar o uso da CPU a cada 4 segundos:

$ SAR 4 

A saída será assim e produzirá uma nova linha a cada 4 segundos:

Usuário@ubuntu1: ~ $ SAR 4 Linux 5.0.0-23-Genérico (Ubuntu1) 16/01/2020 _X86_64_ (1 CPU) 02:33:24 Am CPU %Usuário %Nice %Sistema %Iowait %roubo %Idle 02:33:25 Todos os 9.09 0.00 0.00 0.00 0.00 90.91 

Fazer sar Pare após um certo número de saídas, especifique um segundo número. Por exemplo:

$ SAR 2 5 

Isso fará sar Verifique o uso da CPU a cada 2 segundos, 5 vezes. Ele também mostrará a média de todas as 5 de suas sondas no final da saída.

Monitoramento gráfico

Se você estiver usando um cliente de desktop ou tiver uma GUI instalada, deve haver uma ferramenta gráfica para monitorar o uso do sistema. O Ubuntu usa o GNOME por padrão como seu ambiente de desktop e o comando para iniciar o gerenciador de sistemas é:

$ gnome-sistema-monitor 

Isso abrirá uma janela semelhante ao gerenciador de tarefas da Window, onde você pode classificar processos pelo uso da CPU. Outras distribuições e ambientes de desktop devem ter uma ferramenta semelhante.

Monitoramento gráfico com o monitor do sistema GNOME no Ubuntu 20.04 Desktop

Como configurar alertas de monitoramento

Existem muitas maneiras diferentes de codificar um script que monitora o uso da CPU. Nesta parte do guia, analisaremos um script possível em que o uso da CPU é monitorado a cada minuto e configurá -lo para enviar um e -mail quando o uso da CPU ficar alto.

#!/bin/bash cpu = $ (sar 1 5 | grep "média" | sed 's/^.* // ') cpu = $ (printf "%.0f "$ cpu) se [" $ cpu "-lt 20] então eco" o uso da CPU é alto!"| Sendmail [email protected] fi
cópia de

Este script usa sed para pegar a porcentagem média de IDLE da CPU de sar. Em seguida, ele usa uma função IF para verificar se a porcentagem inativa está abaixo de um determinado número e enviará um email ao administrador se for. Nesse caso, ele está configurado por 20% - em outras palavras, se o uso da CPU estiver além de 80%, o administrador recebe um email.

O script pode ser ajustado conforme necessário, como se você quiser ecoar um aviso no terminal ou gravar em um arquivo de log em vez de enviar um email com enviar correio.

Claro, você precisaria chamar esse script de Cron, se quiser que ele corra rotineiramente.

$ CRONTAB -E 

Para executá -lo a cada minuto, você escreveria esta linha:

* * * * */caminho/para/cpu-alert.sh 

Conclusão

Neste artigo, vimos como verificar e monitorar a utilização da CPU em um sistema Linux. Aprendemos sobre várias ferramentas que podem nos ajudar com o monitoramento e também aprendemos a configurar alertas de uso para que possamos ser notificados quando a utilização da CPU é alta.

Usando os vários métodos deste guia, você sempre saberá a melhor ferramenta para acompanhar o uso do seu sistema - se você precisa de informações detalhadas ou apenas precisará ver rapidamente como seu sistema está alocando sua CPU.

Tutoriais do Linux relacionados:

  • Coisas para instalar no Ubuntu 20.04
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Coisas para fazer depois de instalar o Ubuntu 22.04 Jellyfish…
  • Download do Linux
  • Coisas para instalar no Ubuntu 22.04
  • Como testar o estresse da sua CPU no Linux
  • Arquivos de configuração do Linux: os 30 primeiros mais importantes
  • Otimização de desempenho do Linux: ferramentas e técnicas
  • Como fazer bota dupla kali linux e windows 10