precisa monitorar o desempenho do servidor Linux? Experimente estes comandos integrados e algumas ferramentas complementares. A maioria das distribuições vem com toneladas de ferramentas de monitoramento do Linux. Essas ferramentas fornecem métricas que podem ser usadas para obter informações sobre as atividades do sistema. Você pode usar essas ferramentas para localizar as possíveis causas de um problema de desempenho. Os comandos discutidos abaixo são alguns dos comandos mais fundamentais quando se trata de análise do sistema e depuração de problemas do servidor Linux, como:
- Descobrindo os gargalos do sistema
- Gargalos de disco (armazenamento)
- Gargalos de CPU e memória
- Gargalo da rede.
- 1. topo – Comando de monitoramento da atividade do processo
O comando top exibe os processos do Linux. Ele fornece uma visão dinâmica em tempo real de um sistema em execução, ou seja, a atividade real do processo. Por padrão, ele exibe as tarefas mais intensivas da CPU em execução no servidor e atualiza a lista a cada cinco segundos.
Teclas de atalho comumente usadas com as principais ferramentas de monitoramento do Linux
Aqui está uma lista de teclas de atalho úteis:
Tecla de atalho Uso t Exibe informações resumidas desativadas e ativadas. m Exibe informações de memória desligadas e ligadas. UMA Classifica a exibição pelos principais consumidores de vários recursos do sistema. Útil para identificação rápida de tarefas que exigem desempenho em um sistema. f Entra em uma tela de configuração interativa para top. Útil para configurar o topo para uma tarefa específica. o Permite que você selecione interativamente a ordenação no topo. r Emite o comando renice. k Emite o comando kill. z Ativar ou desativar a cor/mono 2. vmstat – Estatísticas de memória virtual
O comando vmstat relata informações sobre processos, memória, paginação, bloco de E/S, traps e atividade da CPU.
# vmstat 3
Saídas de amostra:
procs -------memória---------- ---swap-- -----io---- --system-- -----cpu ------ rb swpd free buff cache si so bi bo in cs us sy id wa st 0 0 0 2540988 522188 5130400 0 0 2 32 4 2 4 1 96 0 0 1 0 0 2540988 522188 5130400 0 0 0 720 1199 665 1 0 99 0 0 0 0 0 2540956 522188 5130400 0 0 0 0 1151 1569 4 1 95 0 0 0 0 0 2540956 522188 5130500 0 0 0 6 1117 439 1 0 99 0 0 0 0 0 2540940 522188 5130512 0 0 0 536 1189 932 1 0 98 0 0 0 0 0 2538444 522188 5130588 0 0 0 0 1187 1417 4 1 96 0 0 0 0 0 2490060 522188 5130640 0 0 0 18 1253 1123 5 1 94 0 0
Exibir Slabinfo de utilização de memória
# vmstat -m
Obter informações sobre páginas de memória ativas/inativas
# vmstat -a
Use o comando smem:
smem
Outra opção é combinar o comando pgrep com o comando grep para descobrir o uso do SWAP:pgrep memcached grep --color VmSwap / proc / 48440 / status
Mostrar saída de formato longo
# ps -Al
Para ativar o modo extra completo (ele mostrará os argumentos da linha de comando passados para o processo):# ps -AlF
Tópicos de exibição (LWP e NLWP)
# ps -AlFH
Assista Threads Após Processos
# ps -AlLm
Imprimir todo o processo no servidor
# ps ax
# ps axuQuer imprimir uma árvore de processos?
# ps -ejH
# ps axjf
# pstreeObter informações de segurança do processo Linux
# ps -eo euser,ruser,suser,fuser,f,comm,label
# ps axZ
# ps -eMVamos imprimir todos os processos executados como usuário Vivek
# ps -U vivek -u vivek u
Configurar a saída do comando ps em um formato definido pelo usuário
# ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
# ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
# ps -eopid,tt,user,fname,tmout,f,wchanTente exibir apenas os IDs de processo do Lighttpd
# ps -C lighttpd -o pid=
OU# pgrep lighttpd
OU# pgrep -u vivek php-cgi
Imprimir o nome do PID 55977
# ps -p 55977 -o comm=
Os 10 principais processos de consumo de memória
# ps -auxf | sort -nr -k 4 | head -10
Mostre-nos os 10 principais processos de consumo de CPU
# ps -auxf | sort -nr -k 3 | head -10
Mostrar todos os processos em execução no Linux6. grátis – Mostra o uso de memória do servidor Linux
O comando free mostra a quantidade total de memória física e de troca livre e usada no sistema, bem como os buffers usados pelo kernel.
# free
Saída de amostra:total de buffers compartilhados gratuitos usados em cache Mem: 12302896 9739664 2563232 0 523124 5154740 -/+ buffers/cache: 4061800 8241096 Trocar: 1052248 0 1052248
7. iostat – Monitorar a carga média da CPU e a atividade do disco do Linux
relatório de comando iostat estatísticas da Unidade de Processamento Central (CPU) e estatísticas de entrada/saída para dispositivos, partições e sistemas de arquivos de rede (NFS).
# iostat
Saídas de amostra:Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 26/06/2009 avg-cpu: %user %nice %system %iowait %roubar %idle 3,50 0,09 0,51 0,03 0,00 95,86 Dispositivo: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 22,04 31,88 512,03 16193351 260102868 sda1 0,00 0,00 0,00 2166 180 sda2 22,04 31,87 512,03 16189010 260102688 sda3 0,00 0,00 0,00 1615 0
Linux Track NFS Directory / Disk I/O Stats
8. sar – Monitorar, coletar e relatar a atividade do sistema Linux
comando sar usado para coletar, relatar e salvar informações de atividade do sistema. Para ver o contador de rede, digite:
# sar -n DEV | more
Os contadores de rede do dia 24:# sar -n DEV -f /var/log/sa/sa24 | more
Você também pode exibir o uso em tempo real usando sar:# sar 4 5
Saídas de amostra:Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 26/06/2009 06:45:12 PM CPU %user %nice %system %iowait %roubar %idle 06:45:16 PM tudo 2,00 0,00 0,22 0,00 0,00 97,78 18h45:20 tudo 2,07 0,00 0,38 0,03 0,00 97,52 06:45:24 PM todos 0,94 0,00 0,28 0,00 0,00 98,78 18h45:28 tudo 1,56 0,00 0,22 0,00 0,00 98,22 18h45:32 tudo 3,53 0,00 0,25 0,03 0,00 96,19 Média: todos 2,02 0,00 0,27 0,01 0,00 97,70
9. mpstat – Monitore o uso de multiprocessadores no Linux
O comando mpstat exibe atividades para cada processador disponível, sendo o processador 0 o primeiro. mpstat -P ALL para exibir a utilização média da CPU por processador:
# mpstat -P ALL
Exemplo de saída:Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 26/06/2009 06:48:11 PM CPU %user %nice %sys %iowait %irq %soft %roubar %idle intr/s 06:48:11 PM todos 3,50 0,09 0,34 0,03 0,01 0,17 0,00 95,86 1218,04 06:48:11 PM 0 3,44 0,08 0,31 0,02 0,00 0,12 0,00 96,04 1000,31 06:48:11 PM 1 3,10 0,08 0,32 0,09 0,02 0,11 0,00 96,28 34,93 06:48:11 PM 2 4,16 0,11 0,36 0,02 0,00 0,11 0,00 95,25 0,00 06:48:11 PM 3 3,77 0,11 0,38 0,03 0,01 0,24 0,00 95,46 44,80 06:48:11 PM 4 2,96 0,07 0,29 0,04 0,02 0,10 0,00 96,52 25,91 06:48:11 PM 5 3,26 0,08 0,28 0,03 0,01 0,10 0,00 96,23 14,98 06:48:11 PM 6 4,00 0,10 0,34 0,01 0,00 0,13 0,00 95,42 3,75 06:48:11 PM 7 3,30 0,11 0,39 0,03 0,01 0,46 0,00 95,69 76,89
Linux exibe cada utilização de vários processadores de CPU SMP individualmente .
10. pmap – Monitora o uso da memória do processo no Linux
comando pmap relata o mapa de memória de um processo. Use este comando para descobrir as causas dos gargalos de memória.
# pmap -d PID
Para exibir as informações da memória do processo para o pid # 47394, digite:# pmap -d 47394
Sample Outputs:47394: /usr/bin/php-cgi Mapeamento de dispositivo de deslocamento do modo Kbytes de endereço 0000000000400000 2584 rx-- 0000000000000000 008:00002 php-cgi 0000000000886000 140 rw --- 0000000000286000 008:00002 php-cgi 00000000008a9000 52 rw--- 00000000008a9000 000:00000 [anônimo] 0000000000aa8000 76 rw--- 00000000002a8000 008:00002 php-cgi 000000000f678000 1980 rw--- 000000000f678000 000:00000 [anon] 000000314a600000 112 rx-- 0000000000000000 008:00002 ld-2.5.so 000000314a81b000 4 r---- 000000000001b000 008:00002 ld-2.5.so 000000314a81c000 4 rw--- 000000000001c000 008:00002 ld-2.5.so 000000314aa00000 1328 rx-- 0000000000000000 008:00002 libc-2.5.so 000000314ab4c000 2048 ----- 000000000014c000 008:00002 libc-2.5.so ..... ...... .. 00002af8d48fd000 4 rw --- 0000000000006000 008:00002 xsl.so 00002af8d490c000 40 rx-- 0000000000000000 008:00002 libnss_files-2.5.so 00002af8d4916000 2044 ----- 000000000000a000 008:00002 libnss_files-2.5.so 00002af8d4b15000 4 r---- 0000000000009000 008:00002 libnss_files-2.5.so 00002af8d4b16000 4 rw--- 000000000000a000 008:00002 libnss_files-2.5.so 00002af8d4b17000 768000 rw-s- 0000000000000000 000:00009 zero (excluído) 00007fffc95fe000 84 rw --- 00007ffffffea000 000:00000 [ pilha ] ffffffffff600000 8192 ----- 00000000000000000 000:00000 [anon] mapeado: 933712K gravável/privado: 4304K compartilhado: 768000K
A última linha é muito importante:
- mapeado: 933712K quantidade total de memória mapeada para arquivos
- gravável/privado: 4304K a quantidade de espaço de endereço privado
- compartilhado: 768000K a quantidade de espaço de endereço que este processo está compartilhando com outros
Linux encontra a memória usada por um programa/processo usando o comando pmap
11. netstat – ferramenta de monitoramento de estatísticas e redes Linux
O comando netstat exibe conexões de rede, tabelas de roteamento, estatísticas de interface, conexões mascaradas e associações multicast.
# netstat -tulpn
# netstat -nat12. ss – Estatísticas de Rede
ss comando usado para despejar estatísticas de soquete. Permite mostrar informações semelhantes ao netstat. Por favor, note que o netstat é principalmente obsoleto. Portanto, você precisa usar o comando ss. Para ss todos os soquetes TCP e UDP no Linux:
# ss -t -a
OU# ss -u -a
Mostrar todos os soquetes TCP com contextos de segurança do processo SELinux:# ss -t -a -Z
Consulte os seguintes recursos sobre os comandos ss e netstat:- ss: Exibe informações de rede e soquete do Linux TCP/UDP
- Obtenha informações detalhadas sobre conexões de endereços IP específicos usando o comando netstat
13. iptraf – Obtenha estatísticas de rede em tempo real no Linux
O comando iptraf é um monitor de LAN IP colorido interativo. É um monitor de LAN IP baseado em ncurses que gera várias estatísticas de rede, incluindo informações de TCP, contagens de UDP, informações de ICMP e OSPF, informações de carregamento de Ethernet, estatísticas de nó, erros de soma de verificação de IP e outros. Ele pode fornecer as seguintes informações em formato fácil de ler:
- Estatísticas de tráfego de rede por conexão TCP
- Estatísticas de tráfego IP por interface de rede
- Estatísticas de tráfego de rede por protocolo
- Estatísticas de tráfego de rede por porta TCP/UDP e por tamanho de pacote
- Estatísticas de tráfego de rede por endereço Layer2
14. tcpdump – Análise detalhada do tráfego de rede
15. iotop – Monitor de E/S Linux
monitor de comando iotop, informações de uso de E/S, usando o kernel Linux. Ele mostra uma tabela de uso de E/S atual classificada por processos ou encadeamentos no servidor.
$ sudo iotop
Saídas de amostra:
Linux iotop: Verifique o que está estressando e aumentando a carga em seus discos rígidos16. htop – visualizador de processo interativo
htop é um visualizador de processos baseado em ncurses gratuito e de código aberto para Linux. É muito melhor do que o comando superior. Muito fácil de usar. Você pode selecionar processos para matar ou renicing sem usar seus PIDs ou sair da interface htop.
$ htop
Saídas de amostra:17. no topo – Sistema Linux avançado e monitor de processos
atop é um monitor interativo e muito poderoso para visualizar a carga em um sistema Linux. Ele exibe os recursos de hardware mais críticos do ponto de vista do desempenho. Você pode ver rapidamente o desempenho da CPU, memória, disco e rede. Ele mostra quais processos são responsáveis pela carga indicada em relação à carga de CPU e memória em um nível de processo.
$ atop
18. ac e lastcomm –
Você deve monitorar o processo e a atividade de login em seu servidor Linux. O pacote psacct ou acct contém vários utilitários para monitorar as atividades do processo, incluindo:
- comando ac: mostra estatísticas sobre o tempo de conexão dos usuários
- Comando lastcomm : Mostra informações sobre comandos executados anteriormente
- Comando accton: Ativa ou desativa a contabilidade do processo
- comando sa : Resume as informações contábeis
19. monit – Supervisão do processo
Monit é um software gratuito e de código aberto que atua como supervisão de processos. Ele vem com a capacidade de reiniciar serviços que falharam. Você pode usar Systemd, daemontools ou qualquer outra ferramenta para o mesmo propósito.
20. nethogs- Descubra os PIDs que usam mais largura de banda no Linux
NetHogs é uma ferramenta de rede pequena, mas útil. Ele agrupa a largura de banda por nome de processo, como Firefox, wget e assim por diante. Se houver uma explosão repentina de tráfego de rede, inicie o NetHogs. Você verá qual PID está causando aumento de largura de banda.
$ sudo nethogs
0 Comentários