Coletar métricas personalizadas para uma VM do Linux com o Agente InfluxData Telegraf

Cuidado

Este artigo faz referência ao CentOS, uma distribuição do Linux que está se aproximando do status de EOL (fim da vida útil). Considere seu uso e planejamento adequadamente. Para obter mais informações, veja a orientação CentOS End Of Life.

Este artigo explica como implantar e configurar o agente InfluxData Telegraf em uma VM do Linux para publicar métricas no Azure Monitor.

Observação

InfluxData Telegraf é um agente de código aberto e não tem suporte oficial do Azure Monitor. Para problemas com o conector do Telegraf, consulte a página do Telegraf no GitHub aqui: InfluxData

Agente InfluxData Telegraf

O Telegraf é um agente controlado por plug-in que permite a coleta de métricas de mais de 150 fontes diferentes. Dependendo de quais cargas de trabalho executam em sua VM, você pode configurar o agente para usar plug-ins de entrada especializados em coletar métrica. Exemplos são o Apache, MySQL e NGINX. Ao usar o plug-ins de saída, o agente pode então escrever destinos que você escolhe. O agente Telegraf integrou-se diretamente à API REST de métricas personalizadas do Azure Monitor. Dá suporte a um plug-in de saída do Azure Monitor. Usando esse plug-in, o agente pode coletar métricas de carga de trabalho específica em sua VM do Linux e enviá-los em métricas personalizadas para o Azure Monitor.

Um diagrama mostrando a visão geral do agente Telegraph.

Conectar-se à VM

Crie uma conexão SSH com a VM na qual você deseja instalar o Telegraf. Selecione o botão Conectar na página de visão geral de sua máquina virtual.

Uma captura de tela da Página de visão geral da máquina virtual com o botão Conectar realçado.

Na página Conectar-se à máquina virtual, mantenha as opções padrão para conectar-se ao nome DNS pela porta 22. Em Logon usando a conta local de VM, o comando de conexão é mostrado. Selecione o botão para copiar o comando. O exemplo a seguir mostra a aparência do comando de conexão SSH:

ssh azureuser@XXXX.XX.XXX

Cole o comando de conexão SSH em um shell, como o Azure Cloud Shell ou Bash no Ubuntu no Windows, ou usar um cliente SSH de sua escolha para criar a conexão.

Instalar e configurar o Telegraf

Para instalar o pacote Telegraf Debian na VM, execute os seguintes comandos de sua sessão SSH:

Adicionar o repositório:

# download the package to the VM
curl -s https://repos.influxdata.com/influxdb.key | sudo apt-key add -
source /etc/lsb-release
sudo echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
sudo curl -fsSL https://repos.influxdata.com/influxdata-archive_compat.key | sudo apt-key --keyring /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg add

Instale o pacote:

   sudo apt-get update
   sudo apt-get install telegraf

O arquivo de configuração do Telegraf define as operações. Por padrão, um arquivo de configuração de exemplo é instalado no caminho /etc/telegraf/telegraf.conf. O arquivo de configuração de exemplo lista todos os plug-ins de entrada e saída possíveis. No entanto, criaremos um arquivo de configuração personalizado e faremos com que o agente o use executando os seguintes comandos:

# generate the new Telegraf config file in the current directory
telegraf --input-filter cpu:mem --output-filter azure_monitor config > azm-telegraf.conf

# replace the example config with the new generated config
sudo cp azm-telegraf.conf /etc/telegraf/telegraf.conf

Observação

O código anterior permite somente dois plug-ins de entrada: cpu e mem. Você pode adicionar mais entradas plug-ins, dependendo da carga de trabalho que é executado em seu computador. Exemplos são o Docker, MySQL e NGINX. Para obter uma lista completa de entrada de plug-ins, consulte a seção Adicionais de configuração.

Por fim, para que o agente comece a usar a nova configuração, nós o forçamos a parar e iniciar executando os comandos a seguir:

# stop the telegraf agent on the VM
sudo systemctl stop telegraf
# start and enable the telegraf agent on the VM to ensure it picks up the latest configuration
sudo systemctl enable --now telegraf

Agora o agente coleta métricas de cada um dos plug-ins de entrada especificados e os emite para o Azure Monitor.

Plotar as métricas do Telegraf no portal do Azure

  1. Abra o portal do Azure.

  2. Navegue até a nova guia Monitor e selecione Métricas.

  3. Selecione sua VM no seletor de recursos.

  4. Selecione o namespace Telegraf/CPU, depois selecione a métrica usage_system. É possível optar por filtrar conforme as dimensões nessa métrica ou dividi-las.

    Uma captura de tela mostrando um gráfico de métricas com métricas do Telegraph selecionadas.

Configuração adicional

O passo a passo anterior fornece informações sobre como configurar o agente do Telegraf para coletar métricas de alguns plug-ins de entrada básicos. O agente do Telegraf tem suporte para mais de 150 plug-ins de entrada, com algumas opções de configuração adicionais de suporte. O InfluxData publicou uma lista de plug-ins com suporte e instruções sobre como configurá-los.

Além disso, neste passo a passo, você usou o agente Telegraf para emitem métricas sobre o agente é implantado na VM. O agente Telegraf também pode ser usado como um coletor e encaminhador de métricas para outros recursos. Para saber como configurar o agente para emitir métricas para outros recursos do Azure, consulte Saída de Métrica Personalizada do Azure Monitor para Telegraf.

Limpar recursos

Quando o grupo de recursos, a máquina virtual e todos os recursos relacionados não forem mais necessários, exclua-os. Para fazer isso, selecione o grupo de recursos da máquina virtual e escolha Excluir. Em seguida, confirme o nome do grupo de recursos para excluir.

Próximas etapas