Desempenho

Monitore E / S de disco com iotop no Linux

Monitore E / S de disco com iotop no Linux
Em servidores Linux, você tem muitos processos em execução e cada um desses processos está fazendo algumas operações de I / O. Portanto, esses processos estão consumindo a largura de banda do disco de armazenamento.

Podemos usar o comando htop para ver uma lista de todos os processos em execução do nosso servidor Linux. Mas e se quisermos monitorar quanta largura de banda do disco cada um desses processos está consumindo? Bem, podemos usar iotop.

iotop é uma ferramenta de monitoramento de I / O interativa no Linux, assim como o htop. Com o iotop, você pode monitorar facilmente o uso de largura de banda de leitura e gravação de disco para cada execução processada no Linux.

Neste artigo, vou mostrar como instalar o iotop em distribuições populares do Linux e como usar o iotop para monitorar o uso de largura de banda de leitura e gravação de disco por processo em execução. Vou usar o Ubuntu 18.04 LTS para a demonstração, mas os mesmos comandos devem funcionar em qualquer distribuição Linux moderna. Então vamos começar.

Instalando o iotop no Ubuntu:

iotop está disponível no repositório oficial de pacotes do Ubuntu. Então, você pode facilmente baixar o iotop usando o gerenciador de pacotes APT.

Primeiro, atualize o cache do repositório de pacotes APT com o seguinte comando:

$ sudo apt update

Agora, instale o iotop com o seguinte comando:

$ sudo apt install iotop

iotop deve ser instalado.

Agora, verifique se o iotop está funcionando com o seguinte comando:

$ iotop --version

iotop está funcionando como você pode ver.

Instalando o iotop no CentOS 7:

iotop está disponível no repositório oficial de pacotes do CentOS 7. Você pode instalá-lo facilmente com o gerenciador de pacotes YUM da seguinte maneira:

$ sudo yum install iotop -y

Uso básico do iotop:

Para monitorar o uso do disco de cada processo em execução com o iotop, execute o iotop da seguinte maneira:

$ sudo iotop

Como você pode ver, a janela interativa do iotop é aberta. Aqui, você pode ver qual processo está usando o disco.

Como você pode ver na imagem abaixo, no lado superior esquerdo, a velocidade total de leitura do disco / largura de banda é exibida. Da mesma forma, no lado superior direito, a velocidade de gravação / largura de banda total do disco é exibida.

Como você pode ver, o iotop exibe colunas para,

Na maioria dos casos, o Thread ID (TID) é equivalente ao ID do processo (PID).

Exibindo processos que realizam apenas operações de I / O:

Por padrão, o iotop mostra todos os processos em execução, estejam eles fazendo operações de I / O ou não. Então, a lista é muito longa. É mais difícil encontrar os processos de que precisamos e monitorá-los.

Felizmente, o iotop permite que você exiba apenas os processos que estão realizando operações de I / O. Para fazer isso, você pode usar o -o ou -só opção de iotop.

Para exibir apenas os processos que realizam operações de I / O, execute iotop da seguinte maneira:

$ sudo iotop -o

Ou

$ sudo iotop --only

Como você pode ver, o processo com TID 1345 e 1957 está fazendo operações de I / O agora.

Este é o comando que estou executando para simular as operações de E / S neste artigo.

$ dd if = / dev / urandom of = iotest.img bs = 1M contagem = 1000

NOTA: Se você ainda não começou iotop com o -o ou -só opção, você ainda pode alternar para este modo pressionando o o tecla no seu teclado. Você pode alternar entre esses 2 modos de iotop usando o o chave.

Exibindo o uso total de E / S por processo:

O iotop também permite monitorar a quantidade de leituras e gravações de disco no total que cada processo fez depois que o iotop foi iniciado. Para fazer isso, você deve usar o -uma ou -acumulado opção. Você também pode usá-lo com o -o ou -só opção também.

Por exemplo,

$ sudo iotop -ao

Como você pode ver, o total de leituras e gravações de disco por processo é exibido.

Exibindo PID em vez de TID:

Como afirmei anteriormente, Thread ID (TID) é o mesmo que Process ID (PID) na maioria das vezes. Você pode usar estes de forma intercambiável. Mas se você realmente deseja ter certeza de que está trabalhando exatamente com o ID do processo (PID), então o iotop tem o -P ou -processos opção que você pode usar para alterar a coluna TID padrão para coluna PID.

Para exibir a coluna PID em vez da coluna TID, execute iotop da seguinte maneira:

$ sudo iotop -P

Ou

$ sudo iotop --processes

Como você pode ver, a coluna TID é substituída pela coluna PID.

Filtrando processos iotop:

Você pode filtrar processos iotop com base no ID do processo (PID), ID do segmento (TID) e o proprietário processado (USUÁRIO).

Por exemplo, se você deseja monitorar a E / S de disco dos processos com o PID 2024 e 2035 apenas, você executaria o iotop da seguinte maneira:

$ sudo iotop -P -p 2024 -p 2035

Como você pode ver, apenas os processos com o PID 2024 e 2035 estão sendo monitorados.

Se você quiser monitorar a E / S do disco das threads apenas com o TID 2024 e 2035, execute o iotop da seguinte maneira:

$ sudo iotop -P -p 2024 -p 2035

Novamente, digamos que você deseja monitorar a E / S do disco dos processos em execução como o usuário . Para fazer isso, execute o iotop da seguinte maneira:

$ sudo iotop -P -u shovon

Como você pode ver, apenas os processos em execução como o usuário é exibido.

Se você deseja monitorar vários usuários ao mesmo tempo, também pode fazer isso.

Por exemplo, para monitorar I / O de disco de todos os processos que os usuários e lírio estão em execução, execute iotop da seguinte maneira:

$ sudo iotop -P -u shovon -u lírio

Então, é basicamente assim que você usa o iotop para monitorar E / S de disco no Linux. Obrigado por ler este artigo.

Como aumentar o FPS no Linux?
FPS significa Quadros por segundo. A tarefa do FPS é medir a taxa de quadros em reproduções de vídeo ou desempenho de jogos. Em palavras simples, o nú...
Top jogos do Oculus App Lab
Se você é proprietário de um fone de ouvido Oculus, deve estar informado sobre o carregamento lateral. Sideload é o processo de instalação de conteúdo...
Os 10 melhores jogos para jogar no Ubuntu
A plataforma Windows tem sido uma das plataformas dominantes para jogos devido à grande porcentagem de jogos que estão sendo desenvolvidos hoje para o...