Integrazione di Telegraf con Timestream per InfluxDB 3 - Amazon Timestream

Per funzionalità simili a Amazon Timestream for, prendi in considerazione Amazon Timestream LiveAnalytics per InfluxDB. Offre un'acquisizione semplificata dei dati e tempi di risposta alle query di una sola cifra di millisecondi per analisi in tempo reale. Scopri di più qui.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Integrazione di Telegraf con Timestream per InfluxDB 3

Telegraf è un agente di raccolta dati basato su plug-in con oltre 300 plug-in di input per la raccolta di metriche da varie fonti e plug-in di output per la scrittura di dati verso diverse destinazioni. La sua architettura "plug-and-play" lo rende ideale per raccogliere e riportare rapidamente le metriche su InfluxDB 3.

Requisiti

Opzioni di configurazione di Telegraf

Telegraf fornisce due plugin di output compatibili con InfluxDB 3:

  1. outputs.influxdb_v2- Consigliato per nuove implementazioni.

  2. outputs.influxdb(v1) - Per le configurazioni v1 esistenti.

Ti consigliamo di utilizzare il outputs.influxdb_v2 plug-in per connetterti all'API di compatibilità 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

Utilizzo del plug-in di output v1 precedente

Per le configurazioni Telegraf esistenti che utilizzano il plugin 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

Esempio di configurazione di base di Telegraf

Quello che segue è un esempio completo che raccoglie le metriche di sistema e le scrive su 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"

Le migliori pratiche per Telegraf con InfluxDB 3

  • Sicurezza

    • Memorizza i token in variabili di ambiente o archivi segreti.

    • Non codificare mai i token nei file di configurazione.

    • Usa gli endpoint HTTPS per le implementazioni di produzione.

  • Ottimizzazione delle prestazioni

    • Abilita la compressione gzip con content_encoding = «gzip».

    • Configura le dimensioni dei batch appropriate (5000-10000 metriche).

    • Imposta i limiti del buffer in base alla memoria disponibile.

    • Usa la precisione appropriata al tuo caso d'uso (i secondi spesso sono sufficienti).

  • Configurazione della rete

    • Per i cluster privati, esegui Telegraf all'interno dello stesso VPC.

    • Configura i timeout appropriati per la latenza della tua rete.

    • Usa l' writer/reader endpoint per le operazioni di scrittura.

  • Monitoraggio

    • Abilita il plug-in per le metriche interne di Telegraf per monitorare le prestazioni degli agenti.

    • Monitora gli errori di scrittura e i nuovi tentativi.

    • Imposta avvisi per le condizioni di sovraccarico del buffer.

  • Organizzazione dei dati

    • Usa una denominazione dei tag coerente tra i plugin di input.

    • Sfrutta i plugin del processore di Telegraf per normalizzare i dati.

    • Applica il filtro dei tag per controllare la cardinalità.

Esecuzione di Telegraf

Per avviare Telegraf con la tua configurazione, procedi come segue:

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

Plugin Telegraf comuni per i dati delle serie temporali

Plugin di input popolari:

  • inputs.cpu,inputs.mem, inputs.disk - Metriche di sistema.

  • inputs.docker, inputs.kubernetes - Metriche dei container.

  • inputs.prometheus- Raschia i punti finali di Prometheus.

  • inputs.snmp- Monitoraggio dei dispositivi di rete.

  • inputs.mqtt_consumer- Raccolta dati IoT.

  • inputs.http_listener_v2- Ricevitore webhook HTTP.

Utili plugin per processori:

  • processors.regex- Trasforma i tag/field nomi.

  • processors.converter- Modifica i tipi di dati dei campi.

  • processors.aggregator- Metriche aggregate.

  • processors.filter- Filtra le metriche in base alle condizioni.

Sfruttando l'ampio ecosistema di plugin di Telegraf con InfluxDB 3, puoi creare soluzioni di monitoraggio complete che raccolgono dati da diverse fonti e li scrivono in modo efficiente nel tuo database di serie temporali.