Ferramentas úteis para monitorar e depurar o desempenho de E/S do disco no Linux

Ferramentas úteis para monitorar e depurar o desempenho de E/S do disco no Linux

Resumo: Neste guia, discutiremos as melhores ferramentas para monitorar e depurar a atividade de E/S de disco (desempenho) nos servidores Linux.

Uma métrica de desempenho importante para monitorar em um servidor Linux é a atividade de E/S de disco (entrada/saída), que pode afetar significativamente vários aspectos de um servidor Linux, particularmente a velocidade de salvar ou recuperar do disco, de arquivos ou dados (especialmente nos servidores de banco de dados). Isso tem um efeito cascata no desempenho de aplicativos e serviços.

1. iostat - mostra estatísticas de entrada e saída do dispositivo

O iosat é um dos muitos utilitários de monitoramento de sistemas baseados em terminais no pacote Sysstat, que é um utilitário amplamente utilizado projetado para relatar estatísticas da CPU e estatísticas de E/S para dispositivos e partições de bloco.

Usar iostat No seu servidor Linux, você precisa instalar o Sysstat Pacote no seu sistema Linux executando o comando aplicável para sua distribuição Linux.

$ sudo apt install sysstat [on Debian, Ubuntu e Mint] $ sudo yum install sysstat [on RHEL/CENTOS/FEDORA e Rocky Linux/Almalinux] $ sudo emerge -A App -Admin/Sysstat [ON Gentoo Linux] $ sudo apk adicione sysstat [em Alpine Linux] $ sudo pacman -s sysstat [em Arch Linux] $ sudo zypper install sysstat [on OpenSuse] 

Para mostrar um relatório de utilização de dispositivos simples, execute iostat com o -d opção de linha de comando. Geralmente, o primeiro relatório fornece estatísticas sobre o tempo desde a inicialização do sistema (tempo de inicialização) e cada relatório subsequente está preocupado com o tempo desde o relatório anterior.

Use o -x para um relatório de estatísticas estendidas e o -t sinalizador para ativar o tempo para cada relatório. Além disso, se você deseja eliminar dispositivos sem nenhuma atividade na saída do relatório, adicione o -z bandeira:

# iostat -d -t ou # iostat -d -x -t 
iostat - Monitor estatísticas do dispositivo no Linux

Para exibir estatísticas em kilobytes por segundo, em oposição a blocos por segundo, adicione o -k sinalizar ou usar o -m sinalizador para exibir estatísticas em megabytes por segundo.

# iostat -d -k ou # iostat -d -m 

iostat também pode exibir relatórios de dispositivos contínuos em x Segundo intervalos. Por exemplo, o comando a seguir exibe relatórios em intervalos de dois segundos:

# iostat -d 2 

Relacionado ao comando anterior, você pode exibir n número de relatórios em x Segundo intervalos. O comando a seguir exibirá 10 relatórios em intervalos de dois segundos. Como alternativa, você pode salvar o relatório em um arquivo para análise posterior:

# iostat -d 2 10 ou # iostat -d 2 10> disk_io_report.TXT & 

Para obter mais informações sobre as colunas do relatório, leia o iostat Página do homem:

# cara iostat 

2. SAR - Mostrar atividade do sistema Linux

sar é outra utilidade útil que é enviada com o Sysstat Pacote, destinado a coletar, relatar ou salvar informações de atividade do sistema. Antes de começar a usá -lo, você precisa configurá -lo da seguinte maneira.

Primeiro, permita coletar dados no /etc/default/sysstat arquivo.

# vi/etc/default/sysstat 

Procure a seguinte linha e altere o valor para "verdadeiro" como mostrado.

Enabled = "true" 
Ativar SAR no Linux

Em seguida, você precisa reduzir o intervalo de coleta de dados definido no Sysstat Jobs Cron. Por padrão, é definido como cada 10 minutos, você pode abaixá -lo para cada 2 minutos.

Você pode fazer isso no /etc/cron.d/sysstat arquivo:

# vi /etc /cron.d/sysstat 
Configurar Sar Cron em Linux

Salve o arquivo e feche-o.

Finalmente, ativar e iniciar o Sysstat Serviço usando o seguinte comando SystemCTL:

# SystemCtl Habilable - -agora Sysstat.Serviço # SystemCtl Ativar Sysstat.serviço 

Em seguida, espere por 2 minutos para começar a visualizar sar relatórios. Use o sar comando e o -b Opção de linha de comando para relatar estatísticas de E/S e taxa de transferência e -d para relatar a atividade para cada dispositivo de bloco, como mostrado.

# SAR -D -B 
SAR - Monitorar a atividade do sistema Linux

3. IOTOP - Monitore o uso de E/S do disco Linux

Semelhante à ferramenta de monitoramento superior em termos de design, o IOTOP é um utilitário simples que permite monitorar a atividade e o uso de E/S de disco por processo.

Você pode instalá -lo no seu servidor Linux da seguinte forma (lembre -se de executar o comando apropriado para sua distribuição Linux):

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

Para monitorar a atividade de E/S por processo, você pode executar iotop sem nenhum argumento da seguinte maneira. Por padrão, o atraso entre as iterações é 1 segundo. Você pode mudar isso usando o -d bandeira.

# iotop ou # iotop -d 2 
IOTOP - Monitorar o uso do disco Linux

iotop por padrão exibirá todos os threads de um processo. Para mudar esse comportamento para que ele mostre apenas processos, use o -P opção de linha de comando.

# iotop -p 

Além disso, usando o -a opção, você pode instruí -lo a exibir E/S acumulada em vez de mostrar largura de banda. Neste modo, iotop mostra a quantidade de processos de E/S realizados desde iotop foi invocado.

# iotop -p -a 

Isso é tudo o que tivemos para você! Gostaríamos de saber seus pensamentos sobre este guia ou as ferramentas acima. Deixe um comentário através do formulário de feedback abaixo.

Você também pode nos informar sobre as ferramentas que você acha que estão faltando nesta lista, mas merecem aparecer aqui.