Integração do Telegraf com Timestream para InfluxDB 3 - Amazon Timestream

Para recursos semelhantes aos do Amazon Timestream para, considere o Amazon Timestream LiveAnalytics para InfluxDB. Ele oferece ingestão de dados simplificada e tempos de resposta de consulta de um dígito em milissegundos para análises em tempo real. Saiba mais aqui.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Integração do Telegraf com Timestream para InfluxDB 3

O Telegraf é um agente de coleta de dados baseado em plug-ins com mais de 300 plug-ins de entrada para coletar métricas de várias fontes e plug-ins de saída para gravar dados em destinos diferentes. Sua arquitetura “plug-and-play” o torna ideal para coletar e relatar métricas rapidamente para o InfluxDB 3.

Requisitos

Opções de configuração do Telegraf

O Telegraf fornece dois plug-ins de saída compatíveis com o InfluxDB 3:

  1. outputs.influxdb_v2 - Recomendado para novas implantações.

  2. outputs.influxdb (v1) - Para configurações v1 existentes.

Recomendamos que você use o plug-in outputs.influxdb_v2 para se conectar à API de compatibilidade do InfluxDB v2:

[[outputs.influxdb_v2]] urls = ["https://your-cluster-endpoint:8086"] token = "${INFLUX_TOKEN}" # Use environment variable for security organization = "" # Can be left empty for InfluxDB 3 bucket = "DATABASE_NAME" ## Optional: Enable gzip compression content_encoding = "gzip" ## Optional: Increase timeout for high-latency networks timeout = "10s" ## Optional: Configure batching metric_batch_size = 5000 metric_buffer_limit = 50000

Usando o plug-in de saída v1 legado

Para configurações existentes do Telegraf usando o plug-in v1:

[[outputs.influxdb]] urls = ["https://your-cluster-endpoint:8086"] database = "DATABASE_NAME" skip_database_creation = true username = "ignored" # Required but ignored password = "${INFLUX_TOKEN}" # Use environment variable content_encoding = "gzip" ## Optional: Configure write parameters timeout = "10s" metric_batch_size = 5000 metric_buffer_limit = 50000

Exemplo de configuração básica do Telegraf

A seguir está um exemplo completo que coleta métricas do sistema e as grava no InfluxDB 3:

# Global Agent Configuration [agent] interval = "10s" round_interval = true metric_batch_size = 5000 metric_buffer_limit = 50000 collection_jitter = "0s" flush_interval = "10s" flush_jitter = "0s" precision = "s" hostname = "" omit_hostname = false # Input Plugins - Collect system metrics [[inputs.cpu]] percpu = true totalcpu = true collect_cpu_time = false report_active = false [[inputs.disk]] ignore_fs = ["tmpfs", "devtmpfs", "devfs", "iso9660", "overlay", "aufs", "squashfs"] [[inputs.mem]] [[inputs.net]] interfaces = ["eth*", "en*"] [[inputs.system]] # Output Plugin - Write to InfluxDB 3 [[outputs.influxdb_v2]] urls = ["https://your-cluster-endpoint:8086"] token = "${INFLUX_TOKEN}" organization = "" bucket = "telegraf_metrics" content_encoding = "gzip"

Práticas recomendadas para Telegraf com InfluxDB 3

  • Segurança

    • Armazene tokens em variáveis de ambiente ou lojas secretas.

    • Nunca codifique tokens em arquivos de configuração.

    • Use endpoint HTTPS para implantações de produção.

  • Otimização de desempenho

    • Ative a compactação gzip com content_encoding = “gzip”.

    • Configure os tamanhos de lote apropriados (5000-10000 métricas).

    • Defina limites de buffer com base na memória disponível.

    • Use precisão apropriada para o seu caso de uso (segundos geralmente suficientes).

  • Configuração de rede

    • Para clusters privados, execute o Telegraf na mesma VPC.

    • Configure os tempos limite apropriados para a latência da sua rede.

    • Não é possível usar o endpoint do gravador/leitor para operações de gravação.

  • Monitoramento

    • Ative o plug-in de métricas internas do Telegraf para monitorar o desempenho do agente.

    • Monitore erros de gravação e novas tentativas.

    • Configure alertas para condições de estouro de buffer.

  • Otimização de dados

    • Use nomes de tags consistentes em todos os plug-ins de entrada.

    • Aproveite os plug-ins do processador do Telegraf para normalizar os dados.

    • Aplique a filtragem de tags para controlar a cardinalidade.

Executar o Telegraf

Para iniciar o Telegraf com sua configuração, faça o seguinte:

# Test configuration telegraf --config telegraf.conf --test # Run Telegraf telegraf --config telegraf.conf # Run as a service (systemd) sudo systemctl start telegraf

Plug-ins comuns do Telegraf para dados de séries temporais

Plugins de entrada populares:

  • inputs.cpu, inputs.mem, inputs.disk - Métricas do sistema.

  • inputs.dockerinputs.kubernetes - Métricas de contêiner

  • inputs.prometheus - Raspe os terminais do Prometheus.

  • inputs.snmp - Monitoramento de dispositivos de rede.

  • inputs.mqtt_consumer - Coleta de dados de IoT.

  • inputs.http_listener_v2 - Receptor de webhook HTTP.

Plugins de processador úteis:

  • processors.regex - Transforme nomes de tag/campo.

  • processors.converter - Alterar os tipos de dados do campo.

  • processors.aggregator - Indicadores agregados

  • processors.filter - Filtre métricas com base nas condições.

Ao aproveitar o extenso ecossistema de plug-ins do Telegraf com o InfluxDB 3, é possível criar soluções de monitoramento abrangentes que coletam dados de diversas fontes e os gravam com eficiência em seu banco de dados de séries temporais.