Os principais componentes em qualquer sistema de computação de informações são o subsistema de autenticação e identificação, autorização, backup e, claro, o monitoramento da carga da infraestrutura. Os meios e métodos que podem realizar essas funções dependem de cada caso específico.
Se considerarmos uma infraestrutura de rede corporativa de médio e grande porte, então, muito provavelmente, para um monitoramento eficaz, precisaremos de uma solução cliente-servidor, que terá um agente leve para diferentes tipos de SO e um servidor tolerante a falhas, como o Zabbix. Para sistemas pequenos, usaremos soluções locais, que nos permitirão fazer medições manuais da máquina, além de essa ferramenta ser útil no momento de uma rápida avaliação do servidor.
Ferramenta de Coleta de Dados atop Linux
Vamos imaginar que o cliente forneceu seu servidor para implantação de serviços e não temos ideia sobre sua capacidade e possíveis processos em execução e programados para serem executados no cron, virtualizações e assim por diante. Podemos medi-lo com utilitários básicos, mas então veremos a carga apenas no momento de uso, o que não dará uma imagem completa. Para isso, existe a ferramenta atop, que permite salvar dados sobre a carga da máquina em ordem cronológica com um certo intervalo.
Para testar a ferramenta, vamos implantar o servidor em nuvem na Serverspace, selecionando uma das plataformas de nuvem e clicando no botão "Create Server".
Após selecionar o data center onde queremos implantar nosso servidor e especificar os parâmetros básicos para ele: CPU, RAM, Disco Rígido e interface de rede. Defina um nome e clique no botão "Order". Ótimo, agora podemos nos conectar via SSH, especificando uma chave ou senha para autenticação do usuário. No lado direito do painel principal, você pode ver instruções mais detalhadas para conectar-se com segurança.
No Debian/Ubuntu, usaremos o gerenciador de pacotes apt e a sintaxe apropriada para ele. Se você estiver usando uma distribuição diferente, considere a sintaxe do seu gerenciador de pacotes e especifique o atop para instalar no final. Digite o seguinte comando em uma janela de terminal:
Uma vez que os índices e pacotes estão atualizados, podemos começar a instalar o atop:
Uma característica distinta do atop é a capacidade de visualizar a carga nos 4 principais parâmetros não apenas no total, mas também separadamente para cada processo. Vamos iniciar o gerenciador de processos e observar sua aparência.
A tela é dividida em dois campos horizontais, cada um dos quais fornece informações detalhadas sobre cada um dos processos. No topo está a informação total do sistema, descrevendo a carga em tempo real nos 4 principais parâmetros e, na parte inferior, a mesma, mas dividida por processo. Para pausar o monitoramento, pressione z, para sair do painel, pressione q e, para alterar o período de atualização dos dados, pressione i. Outra característica interessante do atop é o registro do desempenho do sistema à noite, a cada 10 minutos, por padrão.
Medição durante o período
Normalmente, os dados são armazenados no diretório /var/log/atop, com a notação atop_YYYYMMDD, que indica a data em que o registro foi salvo. Decodifique os dados usando o comando:
No seu caso, substitua pelo arquivo que pertence ao seu sistema. Depois de escrever o comando, podemos ver os resultados interpretados do arquivo de registro.
O tempo de coleta depende dos parâmetros que você especificar. Por padrão, a ferramenta captura uma vez por dia, medindo os resultados em um ponto no tempo. Você pode visualizar os registros para o dia atual com o comando:
Para iniciar a gravação, use a seguinte sintaxe de comando: atop -w arquivo [-S] [-a] [intervalo [amostras]]. Onde a opção -w especifica o arquivo de gravação, -S registra chamadas de sistema e -a especifica que os dados devem ser gravados de todos os processos, não apenas dos ativos no momento. O intervalo especifica o período de tempo entre capturas, e as amostras, o número de capturas necessárias. Quando a tarefa é concluída pelas capturas, a gravação é encerrada. No entanto, se não estiverem especificadas, continuará até ser interrompida manualmente. Por exemplo, vamos criar uma tarefa para registrar 5 capturas em intervalos de 5 segundos:
Após o processo ser executado, podemos ir à pasta e abrir o registro recém-criado:
Para mover entre intervalos, usamos a tecla t, para retroceder no tempo usamos Shift+t. A dificuldade está em comparar os valores manualmente. Se estivéssemos usando Zabbix, essa cronologia da carga do servidor poderia ser refletida na forma de um gráfico. Mas, se não houver como implantá-lo, o atop ainda é uma boa solução, pois aqui você pode alterar a exibição por processo com teclas de atalho. Para uma visualização mais perceptível, filtre os processos por:
- m — ordena por uso de memória;
- d — ordena pela atividade do disco;
- u — mostra a tabela de atividades por usuários;
- v — exibe informações detalhadas sobre os processos;
- g — retorna à exibição padrão.
Mas, se pressionarmos Shift + com as opções acima, os valores não só serão filtrados, mas também ordenados pela opção selecionada.
Um pouco mais sobre gerenciamento: se não quisermos passar por uma longa lista de capturas, podemos usar a combinação -b e especificar o horário no formato YYYYMMDDhhmm para buscar o intervalo desejado.
Embora o atop forneça muitos dados, sua interface é intuitiva e nos permite monitorar convenientemente processos e recursos do sistema. Uma combinação de teclas de atalho permite filtrar e ordenar rapidamente os dados para obter as informações necessárias.
Assim, o atop é uma ferramenta útil para analisar o desempenho do sistema e monitorar a carga, especialmente em situações onde sistemas de monitoramento mais sofisticados e escaláveis não estão disponíveis.