6 Métricas principais de desempenho para monitorar em servidores Linux - Parte 1

6 Métricas principais de desempenho para monitorar em servidores Linux - Parte 1

Esta série em 4 partes explicará seis métricas principais de desempenho para monitorar em um servidor Linux. No final desta série, você entenderá quais fatores em um sistema Linux você precisa procurar que contribuam para o desempenho geral do sistema e também sua importância relativa.

O seu servidor Linux é lento ou os aplicativos hospedados nele mostrando comportamento inesperado ou sinais de desempenho lento? Muitos fatores em um servidor Linux afetam seu desempenho geral ou o desempenho dos aplicativos hospedados nele.

Mas existem algumas métricas importantes que você precisa rastrear que podem afetar as coisas mais críticas, como tempo de resposta ou tempo de execução de processos, taxa de transferência - a quantidade total de trabalho que o servidor pode fazer em um determinado tempo e muito mais.

Vejamos as duas primeiras métricas principais de desempenho nesta primeira parte da série.

Índice

1
  • 1. Utilização da CPU Linux
    • Olhos - Ferramenta de monitoramento do Linux
    • TOP - Monitor Processos Linux
    • HTOP - Visualizador de processos Linux
    • Monitore a utilização do núcleo da CPU Linux
  • 2. Monitorar o sistema de CPU do sistema Linux
    • Causas de alto uso da CPU ou carga de CPU
    • Efeitos de alto uso da CPU ou carga de CPU
    • Minimizar o alto uso da CPU e sobrecarga da CPU

1. Utilização da CPU Linux

Sendo o cérebro do sistema, um funcionamento adequado CPU é uma parte crítica do seu servidor Linux ou de qualquer computador. Portanto CPU O uso é um dos aspectos essenciais a rastrear em um servidor Linux, usado para avaliar o desempenho do sistema em termos de rendimento.

Existem várias ferramentas de interface de usuário baseadas em linha de comando e na linha de comando para monitoramento CPU Uso em um sistema Linux, como top, olhares (o meu favorito), htop e muito mais.

Olhos - Ferramenta de monitoramento do Linux

Giro é um utilitário de monitoramento em tempo real de código aberto que monitora vários aspectos do seu sistema Linux, como CPU, memória, disco e uso de rede.

Para instalar olhares Na sua distribuição Linux, execute:

$ sudo apt install olhares [em Debian, Ubuntu e Mint] $ sudo yum instalar olhares [em RHEL/CENTOS/FEDORA e Rocky/Almalinux] $ sudo emerge -a sys -process/olha [em Gentoo Linux] $ sudo apk adicione olhares [em Alpine Linux] $ sudo pacman -s olhares [em Arch Linux] $ sudo zypper install olhares [em OpenSuse] 

A seguir, é apresentada uma captura de tela de uma seção do olhares ferramenta de monitoramento em um Debian Linux servidor mostrando estatísticas de utilização da CPU.

# olhares 
Olhos - Ferramenta de monitoramento do Linux

Aqui o uso geral da CPU é 29.5 % e mais tempo da CPU é utilizado por processos ou aplicativos espaciais do usuário. Ele mostra o número total de tarefas (156), o número de tarefas em execução (7), o número de tarefas no modo de suspensão (81) e outros. Ele também mostra uma lista de processos por consumo de CPU por padrão.

TOP - Monitor Processos Linux

O comando principal fornece uma visão dinâmica em tempo real de todos os processos de execução no sistema Linux, juntamente com a CPU e a utilização da memória.

# principal 
TOP - Mostrar processos de execução do Linux

HTOP - Visualizador de processos Linux

O HTOP é um visualizador interativo de processos do sistema Linux e gerenciador de processos que mostra as informações sobre todos os processos de execução pela CPU e uso de memória em um sistema.

Para instalar htop Na sua distribuição Linux, execute:

$ sudo apt install htop [on Debian, Ubuntu e Mint] $ sudo yum install htop [on RHEL/CENTOS/FEDORA e Rocky/Almalinux] $ sudo emerge -a sys -process/htop [em Gentoo Linux] $ sudo apk adicione htop [on Alpine Linux] $ sudo pacman -s htop [em Arch Linux] $ sudo zypper install htop [on OpenSuse] 

A seguir é uma captura de tela de um htop Ferramenta de monitoramento, que mostra uma lista de processos de execução pelo uso da CPU.

# htop 
HTOP - Visualizador de processos Linux

Com base nos números que você viu nas capturas de tela anteriores, o CPU A métrica de uso é dividida em três categorias ou estados principais:

  • do utilizador - indica a porcentagem do tempo de CPU usado pelos processos de espaço do usuário.
  • sistema - mostra a porcentagem do tempo de CPU usado pelo kernel.
  • parado - mostra a porcentagem de tempo da CPU não sendo usada ativamente.

Além disso, há também os seguintes sub-estados da CPU:

  • legal - é um subconjunto do estado do usuário que indica a porcentagem do tempo da CPU ocupado por processos no nível do usuário com um valor bom positivo (menor prioridade de agendamento do que outros processos).
  • IRQ ou oi - mostra a porcentagem de tempo gasto na CPU, atendendo a interrupções de hardware.
  • Softirq ou si - mostra a porcentagem do tempo gasto na CPU, a manutenção de interrupções de software.
  • Iowait ou wa - Um subconjunto do estado ocioso que mostra a porcentagem de tempo gasto na CPU esperando por operações de E/S, como ler e escrever para ou para o disco.
  • roubar - mostra a porcentagem do tempo de CPU gasto por uma CPU virtual em um hipervisor para esperar involuntariamente por uma CPU física pelo tempo de processamento.

Monitore a utilização do núcleo da CPU Linux

Se o seu servidor tiver mais de um processador (às vezes chamado de sistema de vários núcleos), você também pode monitorar a utilização de cada núcleo. Em olhares, Simplesmente pressione 1 para ter uma visão como a mostrada na próxima captura de tela.

Olhos - Monitore a utilização do núcleo da CPU

Você também pode executar o seguinte comando para encontrar o número total de processadores em seu servidor:

# cat /proc /cpuinfo | Processador Grep ^ 

Para encontrar os processos de execução superior pelo uso da CPU, execute o seguinte comando PS:

# ps -eo pid, ppid, cmd,%mem,%cpu - -sort = -%cpu | cabeça 
Encontre os principais processos de execução do uso da CPU

Você pode gostar também:

  • Cpustat - monitora a utilização da CPU através de processos de execução no Linux
  • Como matar o processo Linux usando Kill, Pkill e Killall
  • Como limitar o tempo e o uso da memória dos processos no Linux
  • 9 comandos úteis para obter informações da CPU no Linux

2. Monitorar o sistema de CPU do sistema Linux

O CPU Carga é o número de processos/threads que estão usando ou desejam usar o tempo da CPU. No Linux, não apenas se trata de tarefas executáveis ​​(não bloqueadas por nada, prontas para ser executadas na CPU ou esperando na fila de corrida), mas também tarefas no estado de sono ininterrupto, por exemplo, um processo que aguarda uma operação de E/S Para completar ou outras coisas.

Não é o mesmo que o uso da CPU que abordamos acima. A média de carga é a carga média do sistema ao longo de algum tempo, geralmente um, cinco e quinze minutos no Linux. Seu sistema está ocioso se as médias de carga forem 0.0.

Se você possui um servidor multi-core com 12 núcleos e uma média de carga de 8.32 Como mostrado na captura de tela a seguir, significa que a CPU está funcionando sob capacidade e pode levar mais carga. Caso a média de carga seja 12, implica capacidade total.

# olhares 
Verifique a média de carga do Linux

Por outro lado, uma média de carga maior que o número total de núcleos da CPU indica que os processos estão na fila - a carga está aumentando. A captura de tela a seguir mostra um sistema que não é saudável, está sobrecarregado.

Monitore a média de carga Linux

Lembre-se de que, caso a média de 1 minuto seja superior à média de 5 ou 15 minutos, como é o caso no exemplo anterior (68.24, 27.55, 12.11), então é um indicador de que a carga da CPU está disparando. Mas se a média de 1 minuto for menor que a média de 5 ou 15 minutos, então a carga está diminuindo.

Você também pode usar o tempo de atividade ou w comando Para visualizar as médias de carga. Neste exemplo, a carga está aumentando.

# uptime ou # w 
Veja a média de carga Linux

Causas de alto uso da CPU ou carga de CPU

Algumas das causas mais comuns da CPU alta ou extremamente alta incluem a execução de vários aplicativos/serviços intensivos em CPU no mesmo servidor (com baixas especificações de recursos) e malware projetado para se replicar repetidamente para esgotar os recursos do sistema. As aplicações de streaming e jogo também podem causar uso de CPU extremamente alto e carga de CPU quando o tráfego é alto.

Além do mais, Dos ou DDoS Os ataques podem desencadear um número absurdamente alto de conexões e solicitações para aplicações hospedadas que exigem cálculos complexos adicionais pela CPU. Bugs ou código não otimizado em aplicativos às vezes podem trazer loops infinitos que podem esgotar o tempo de CPU disponível.

Observação: É possível ter uma baixa porcentagem de uso da CPU, mas um sistema ou carga de CPU muito alta. Essa situação pode ser causada por muitos fios em um estado de sono ininterrupto e demanda normal de CPU.

Você pode gostar também:

  • Dicas básicas de segurança para proteger o sistema Linux
  • Como melhorar a segurança do sistema Linux
  • 5 práticas recomendadas para impedir ataques de login de força bruta ssh no Linux
  • 7 Recursos e ferramentas úteis de segurança do Linux para iniciantes

Efeitos de alto uso da CPU ou carga de CPU

Se o seu sistema estiver sobrecarregado, os aplicativos com uso intensivo de CPU poderão congelar ou falhar, outros aplicativos em execução podem ficar lentos e, eventualmente, parar de responder à entrada do usuário; Trabalhos automatizados, como backups e alertas do sistema, podem falhar e os aplicativos podem abrir no ritmo de um caracol ou não abertos, e muito mais.

Minimizar o alto uso da CPU e sobrecarga da CPU

A seguir, são apresentadas algumas maneiras de lidar com alto uso de CPU ou carga do sistema em servidores Linux:

  • Adicione rapidamente mais CPUs, especialmente em ambientes virtuais.
  • Reinicie as aplicações intensivas em CPU, quando necessário.
  • Pare/desative serviços/aplicativos não utilizados.
  • Verifique se há bugs ou código não otimizado em aplicativos de usuário que podem resultar em loops infinitos.
  • Limite o número de conexões ou solicitações permitidas em servidores da web, servidores de aplicativos e sistemas de banco de dados para mitigar os ataques de DOS ou DDoS.
  • Reinicie o servidor, quando necessário, se começar a congelar.
  • Use scripts ou aplicativos de monitoramento para configurar alertas do sistema que são acionados quando o uso da CPU é anormalmente alto.

É tudo por agora. Na próxima parte desta série, abordaremos como monitorar a utilização da memória em um servidor Linux. Até então, fique conosco.