Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
In diesem Tutorial werden eine EC2 Amazon-Instance und eine Amazon Timestream für InfluxDB-DB-Instance erstellt. Das Tutorial zeigt Ihnen, wie Sie mit dem Telegraf-Client Daten von der Instance in die EC2 DB-Instance schreiben. Als bewährte Methode erstellt dieses Tutorial eine private DB-Instance in einer Virtual Private Cloud (VPC). In den meisten Fällen können andere Ressourcen in derselben VPC, z. B. EC2 Instances, auf die DB-Instance zugreifen, aber Ressourcen außerhalb der VPC können nicht darauf zugreifen.
Nachdem Sie das Tutorial abgeschlossen haben, gibt es in jeder Availability Zone Ihrer VPC ein öffentliches und ein privates Subnetz. In einer Availability Zone befindet sich die EC2 Instance im öffentlichen Subnetz und die DB-Instance im privaten Subnetz.
Anmerkung
Für die Erstellung eines Kontos fallen keine Gebühren an AWS . Wenn Sie dieses Tutorial abschließen, können Ihnen jedoch Kosten für die von Ihnen verwendeten AWS Ressourcen entstehen. Sie können diese Ressourcen nach Abschluss des Tutorials löschen, wenn sie nicht mehr benötigt werden.
Das folgende Diagramm zeigt die Konfiguration, wenn die Barrierefreiheit öffentlich ist.

Warnung
Wir empfehlen nicht, 0.0.0.0/0 für den HTTP-Zugriff zu verwenden, da Sie es allen IP-Adressen ermöglichen würden, über HTTP auf Ihre öffentliche InfluxDB-Instanz zuzugreifen. Dieser Ansatz ist auch für kurze Zeit in einer Testumgebung nicht akzeptabel. Autorisieren Sie nur eine bestimmte IP-Adresse oder einen bestimmten Adressbereich für den Zugriff auf Ihre InfluxDB-Instanzen über HTTP für die Webbenutzeroberfläche oder den API-Zugriff.
Dieses Tutorial erstellt eine DB-Instance, auf der InfluxDB ausgeführt wird, mit dem. AWS Management Console Wir werden uns nur auf die Größe der DB-Instance und die DB-Instance-ID konzentrieren. Wir werden die Standardeinstellungen für die anderen Konfigurationsoptionen verwenden. Die in diesem Beispiel erstellte DB-Instance wird privat sein.
Zu den weiteren Einstellungen, die Sie konfigurieren könnten, gehören Verfügbarkeit, Sicherheit und Protokollierung. Um eine öffentliche DB-Instance zu erstellen, müssen Sie im Abschnitt Konnektivitätskonfiguration auswählen, ob Ihre Instance öffentlich zugänglich sein soll. Informationen zum Erstellen von DB-Instances finden Sie unterErstellen einer DB-Instance.
Wenn Ihre Instance nicht öffentlich zugänglich ist, gehen Sie wie folgt vor:
Erstellen Sie einen Host auf der VPC der Instance, über den Sie den Datenverkehr tunneln können.
Richten Sie SSH-Tunneling zur Instanz ein. Weitere Informationen finden Sie unter Amazon EC2 Instance Port Forwarding with AWS Systems Manager
. Damit das Zertifikat funktioniert, fügen Sie der
/etc/hosts
Datei auf Ihrem Client-Computer die folgende Zeile hinzu:127.0.0.1
. Dies ist die DNS-Adresse Ihrer Instanz.<DNS>Stellen Sie mithilfe des vollqualifizierten Domainnamens, z. B. https: //:8086, eine Connect zu Ihrer Instance her.
Anmerkung
Localhost kann das Zertifikat nicht validieren, da localhost nicht Teil des Zertifikats-SAN ist.
Das folgende Diagramm zeigt die Konfiguration, wenn der Zugriff privat ist:

Voraussetzungen
Bevor Sie die Schritte in diesem Abschnitt abschließen, stellen Sie sicher, dass Sie folgende Voraussetzungen erfüllen:
-
Eröffnen Sie ein AWS Konto.
-
Erstellen Sie einen Administratorbenutzer.
Schritt 1: EC2 Amazon-Instance erstellen
Erstellen Sie eine EC2 Amazon-Instance, mit der Sie eine Verbindung zu Ihrer Datenbank herstellen.
-
Melden Sie sich bei der an AWS Management Console und öffnen Sie die EC2 Amazon-Konsole unter https://console.aws.amazon.com/ec2/
. -
Wählen Sie in der oberen rechten Ecke von die AWS Region aus AWS Management Console, in der Sie die Instance erstellen möchten. EC2
-
Wählen Sie EC2 Dashboard und dann Launch instance aus.
-
Wenn die Seite „Eine Instanz starten“ geöffnet wird, wählen Sie die folgenden Einstellungen aus:
-
Geben Sie unter Name und Tags den
ec2-database-connect
Wert Name ein. -
Wählen Sie unter Anwendungs- und Betriebssystem-Images (Amazon Machine Image) Amazon Linux und anschließend Amazon Linux 2023 AMI aus. Übernehmen Sie für alle anderen Einstellungen die Standardwerte.
-
Wählen Sie unter Instance type (Instance-Typ) den Wert t2.micro aus.
-
Wählen Sie unter Key pair (login) (Schlüsselpaar (Anmeldung)) einen Key pair name (Schlüsselpaarname), um ein vorhandenes Schlüsselpaar zu verwenden. Um ein neues key pair für die EC2 Amazon-Instance zu erstellen, wählen Sie Neues key pair erstellen und verwenden Sie dann das Fenster key pair erstellen, um es zu erstellen. Weitere Informationen zum Erstellen eines neuen key pair finden Sie unter Erstellen eines key pair für Ihre EC2 Amazon-Instance im Amazon Elastic Compute Cloud-Benutzerhandbuch.
-
Wählen Sie für „SSH-Verkehr zulassen von“ in den Netzwerkeinstellungen die Quelle der SSH-Verbindungen zur Instance aus. EC2 Sie können My IP (Meine IP) auswählen, wenn die angezeigte IP-Adresse für SSH-Verbindungen korrekt ist. Andernfalls können Sie mithilfe von Secure Shell (SSH) die IP-Adresse bestimmen, die für die Verbindung zu EC2 Instances in Ihrer VPC verwendet werden soll. Um Ihre öffentliche IP-Adresse in einem anderen Browserfenster oder einer anderen Registerkarte zu ermitteln, können Sie den Service unter checkip.amazonaws.com/ verwenden.
Ein Beispiel für eine IP-Adresse ist 192.0.2.1/32
. In vielen Fällen können Sie eine Verbindung über einen Internetdienstanbieter (ISP) oder hinter Ihrer Firewall ohne statische IP-Adresse herstellen. Bestimmen Sie in diesem Fall den Bereich der IP-Adressen, die von Client-Computern verwendet werden.Warnung
Wir empfehlen nicht, 0.0.0.0/0 für den SSH-Zugriff zu verwenden, da Sie damit allen IP-Adressen den Zugriff auf Ihre öffentlichen Instances über SSH ermöglichen würden. EC2 Dieser Ansatz ist selbst für kurze Zeit in einer Testumgebung nicht akzeptabel. Autorisieren Sie nur eine bestimmte IP-Adresse oder einen bestimmten Adressbereich für den Zugriff auf Ihre EC2 Instances mithilfe von SSH.
-
Schritt 2: Erstellen Sie eine InfluxDB-DB-Instance
Der grundlegende Baustein von Amazon Timestream for InfluxDB ist die DB-Instance. In dieser Umgebung betreiben Sie Ihre InfluxDB-Datenbanken.
In diesem Beispiel erstellen Sie eine DB-Instance, auf der die InfluxDB-Datenbank-Engine mit einer db.influx.large DB-Instance-Klasse ausgeführt wird.
-
Wählen Sie in der oberen rechten Ecke der Amazon Timestream for InfluxDB-Konsole die AWS Region aus, in der Sie die DB-Instance erstellen möchten.
-
Wählen Sie im Navigationsbereich InfluxDB-Datenbanken aus.
-
Wählen Sie InfluxDB-Datenbank erstellen.
-
Wählen Sie im Abschnitt Bereitstellungseinstellungen die Option Cluster mit Read Replicas aus. Wählen Sie Abonnementoptionen anzeigen, um ein Abonnement für das Read Replica-Add-on zu starten. Weitere Informationen finden Sie unter Lesen Sie die Replikatlizenzierung unter AWS Marketplace.
-
Geben Sie im Abschnitt Datenbankanmeldedaten KronosTest -1 als DB-Clusternamen ein.
-
Geben Sie die grundlegenden Konfigurationsparameter von InfluxDB an: Anfänglicher Benutzername, Ursprünglicher Organisationsname, Anfänglicher Bucket-Name und Passwort.
Wichtig
Sie können das Benutzerkennwort nicht erneut anzeigen. Ohne Ihr Passwort können Sie nicht auf Ihre Instance zugreifen und kein Operator-Token erhalten. Wenn Sie es nicht notieren, müssen Sie es möglicherweise ändern. Siehe Erstellen Sie ein neues Operator-Token für Ihre InfluxDB-Instance.
Wenn Sie das Benutzerkennwort ändern müssen, nachdem die DB-Instance verfügbar ist, können Sie die DB-Instance entsprechend ändern. Weitere Informationen zum Ändern einer DB-Instance finden Sie unter Aktualisieren von DB-Instances.
-
Wählen Sie im Abschnitt Instance-Konfiguration die DB-Instance-Klasse db.influx.large aus.
-
Wählen Sie im Abschnitt Speicherkonfiguration die Option Influx IO Included (3K) als Speichertyp aus.
-
Wählen Sie im Abschnitt Konnektivitätskonfiguration den IPv4Netzwerktyp aus. Stellen Sie sicher, dass sich Ihre InfluxDB-Instance im selben Subnetz befindet wie Ihre neu erstellte Instance. EC2 Wählen Sie unter Öffentlicher Zugriff die Option Nicht öffentlich zugänglich aus, um Ihre DB-Instance privat zu machen.
-
Behalten Sie in den Abschnitten Failover-Einstellungen und Parametergruppeneinstellungen die Standardwerte bei.
-
Konfigurieren Sie Ihre Protokolle in den Einstellungen für die Protokollzustellung und erstellen Sie Tags (optional). Weitere Informationen über Protokolle finden Sie unter Einrichtung zum Anzeigen von InfluxDB-Protokollen auf Timestream InfluxDB-Instances. Weitere Informationen zum Hinzufügen von Tags finden Sie unterHinzufügen von Tags und Etiketten zu Ressourcen.
-
Wählen Sie Create InfluxDB-Datenbank.
-
Wählen Sie in der Liste Datenbanken den Namen Ihrer neuen InfluxDB-Instanz aus, um deren Details anzuzeigen. Die DB-Instance hat den Status Wird erstellt, bis die DB-Instance bereit für die Verwendung ist.
Sie können eine Verbindung zur DB-Instance herstellen, wenn sich der Status auf Verfügbar ändert. Abhängig von der Klasse der DB-Instance und vom verfügbaren Speicherplatz kann es bis zu 20 Minuten dauern, bis die neue DB-Instance verfügbar ist.
Wichtig
Derzeit können Sie die Compute- (Instance-Typen) und Storage-Konfigurationen (Speichertypen) vorhandener Instances nicht ändern.
Schritt 3: Greifen Sie auf die InfluxDB-Benutzeroberfläche zu
Um von einer privaten Timestream for InfluxDB-DB-Instance aus auf die InfluxDB-Benutzeroberfläche zuzugreifen, müssen Sie sich innerhalb desselben Subnetzes und derselben Sicherheitsgruppe verbinden. Eine Möglichkeit, diese Verbindung zu erleichtern, besteht darin, einen Bastion-Host innerhalb des privaten Subnetzes zu erstellen.
Ein Bastion-Host ist ein Spezialserver, der als sicherer Zugangspunkt zu kritischen Systemen dient und Ihr Netzwerk vor externem Zugriff schützt. Er dient als Gateway zwischen Ihrem sicheren internen Netzwerk und der Außenwelt.
Anmerkung
Für öffentlich zugängliche Timestream für InfluxDB-DB-Instances können Sie über die InfluxDB-UI-Schaltfläche auf der Instance-Detailseite in der Konsole auf die InfluxDB-Benutzeroberfläche zugreifen. Beachten Sie, dass diese Schaltfläche für Instances deaktiviert wird, die nicht öffentlich zugänglich sind.
Wenn Sie eine öffentliche DB-Instance haben, stellen Sie über die Konsole eine Verbindung zur InfluxDB-Benutzeroberfläche her und fahren Sie fort mit. Schritt 4: Senden Sie Telegraf-Daten an Ihre InfluxDB-Instanz

Gehen Sie wie folgt vor, um Ihren Bastion-Host zu erstellen und zu konfigurieren:
-
Erstellen Sie einen Bastion-Host: Um einen Bastion-Host zu erstellen, können Sie eine neue EC2 Instance starten oder eine bestehende verwenden. Stellen Sie sicher, dass die Instance über die erforderliche Netzwerkkonfiguration verfügt, um auf die Sicherheitsgruppe zuzugreifen, mit der Sie die private Timestream for InfluxDB-Instance erstellt haben, auf die Sie zugreifen möchten.
-
Stellen Sie eine Connect zur InfluxDB-Benutzeroberfläche her: Nachdem Sie einen Bastion-Host erstellt haben, können Sie den in der Konsole angezeigten Endpunkt verwenden, um eine Verbindung zur InfluxDB-Benutzeroberfläche herzustellen. Der Endpunkt hat das Format
<db-identifier>-<*>.timestream-influxdb.<region>.on.aws
. In China wird es so sein<db-identifier>-<*>.timestream-influxdb.<region>.on.amazonwebservices.com.cn
. -
Konfigurieren Sie Ihren Bastion-Host für die lokale Weiterleitung: Verwenden Sie den Sitzungsmanager AWS Systems Manager (SSM), um die lokale Weiterleitung einzurichten. Führen Sie den folgenden Befehl aus und
bastion-ec2-instance-id
ersetzen Sie ihn durch die ID Ihrer Bastion-Host-Instanz,endpoint
durch den in der obigen Konsole angezeigten Endpunkt undport-number
durch die Portnummer, die Sie verwenden möchten:aws ssm start-session --target
bastion-ec2-instance-id
\ --document-name AWS-StartPortForwardingSessionToRemoteHost \ --parameters '{"host":["endpoint
"], "portNumber":["port-number
"], "localPortNumber":["port-number
"]}'Möglicherweise werden Sie aufgefordert, das zu installieren. SessionManagerPlugin Weitere Informationen finden Sie unter Installieren des Session Manager-Plug-ins für AWS CLI.
-
Greifen Sie auf die InfluxDB-Benutzeroberfläche zu: Nachdem Sie die obigen Schritte ausgeführt haben, können Sie unter http://localhost auf die InfluxDB-Benutzeroberfläche zugreifen:.
port-number
Sie müssen die Meldung „Nicht sicher“ bestätigen. -
Domainnamen-Validierung aktivieren: Um die Domainnamen-Validierung zu aktivieren, fügen Sie Ihrer
/etc/hosts
Datei (Linux),/private/etc/hosts
(Mac) oderC:\Windows\System32\drivers\etc
(Windows) die folgende Zeile hinzu.127.0.0.1
endpoint
Sie können jetzt über https://
endpoint
: auf die InfluxDB-Benutzeroberfläche zugreifen.port-number
Schritt 4: Senden Sie Telegraf-Daten an Ihre InfluxDB-Instanz
Sie können jetzt mit dem Telegraf-Agenten beginnen, Telemetriedaten an Ihre InfluxDB-DB-Instance zu senden. In diesem Beispiel installieren und konfigurieren Sie einen Telegraf-Agenten, um Leistungsmetriken an Ihre InfluxDB-DB-Instance zu senden.
-
Nachdem Sie eine Verbindung zur InfluxDB-Benutzeroberfläche hergestellt haben, sollte ein neues Browserfenster mit einer Anmeldeaufforderung angezeigt werden. Geben Sie die Anmeldeinformationen ein, die Sie zuvor verwendet haben, um Ihre InfluxDB-DB-Instance zu erstellen.
-
Klicken Sie im linken Navigationsbereich auf das Pfeilsymbol und wählen Sie API-Token aus.
-
Wählen Sie für diesen Test die Option API-Token generieren aus. Wählen Sie All Access API Token aus der Dropdownliste aus.
Anmerkung
Für Produktionsszenarien empfehlen wir, Token mit spezifischem Zugriff auf die erforderlichen Buckets zu erstellen, die für bestimmte Telegraf-Anforderungen erstellt wurden.
-
Ihr Token wird auf dem Bildschirm angezeigt.
Wichtig
Achten Sie darauf, das Token zu kopieren und zu speichern, da es nicht erneut angezeigt wird.
-
Stellen Sie Connect zu der EC2 Instance her, die Sie zuvor erstellt haben, indem Sie die Schritte unter Connect mit Ihrer Linux-Instance mithilfe von SSH herstellen im Amazon Elastic Compute Cloud-Benutzerhandbuch befolgen.
Wir empfehlen, dass Sie über SSH eine Verbindung zu Ihrer EC2 Instance herstellen. Wenn das SSH-Client-Dienstprogramm unter Windows, Linux oder Mac installiert ist, können Sie mit dem folgenden Befehlsformat eine Verbindung mit der Instance herstellen:
ssh -i location_of_pem_file ec2-user@ec2-instance-public-dns-name
Gehen Sie beispielsweise davon aus, dass dies
/dir1
unter Linux gespeichertec2-database-connect-key-pair.pem
ist und das öffentliche IPv4 DNS für Ihre EC2 Instance bereits.ec2-12-345-678-90.compute-1.amazonaws.com
Ihr SSH-Befehl würde wie folgt aussehen:ssh -i /dir1/ec2-database-connect-key-pair.pem ec2-user@ec2-12-345-678-90.compute-1.amazonaws.com
-
Installieren Sie die neueste Version von Telegraf auf Ihrer Instance. Verwenden Sie dazu den folgenden Befehl:
cat <<EOF | sudo tee /etc/yum.repos.d/influxdata.repo [influxdata] name = InfluxData Repository - Stable baseurl = https://repos.influxdata.com/stable/\$basearch/main enabled = 1 gpgcheck = 1 gpgkey = https://repos.influxdata.com/influxdata-archive_compat.key EOF sudo yum install telegraf
-
Konfigurieren Sie Ihre Telegraf-Instanz.
Anmerkung
Wenn telegraf.conf nicht existiert oder keinen
timestream
Abschnitt enthält, können Sie einen generieren mit:telegraf —section-filter agent:inputs:outputs —input-filter cpu:mem —output-filter timestream config > telegraf.conf
-
Bearbeiten Sie die Konfigurationsdatei, die sich normalerweise unter befindet.
/etc/telegraf
sudo nano /etc/telegraf/telegraf.conf
-
Konfigurieren Sie die Eingabe-Plugins für CPUs, Speichermetriken und Festplattennutzung.
[[inputs.cpu]] percpu = true totalcpu = true collect_cpu_time = false report_active = false [[inputs.mem]] [[inputs.disk]] ignore_fs = ["tmpfs", "devtmpfs", "devfs"]
-
Konfigurieren Sie das Ausgabe-Plugin so, dass es Daten an Ihre InfluxDB-DB-Instance sendet und Ihre Änderungen speichert.
[[outputs.influxdb_v2]] urls = ["https://us-west-2-1.aws.cloud2.influxdata.com"] token = "<your_telegraf_token" organization = "your_org" bucket = "your_bucket" timeout = "5s"
-
Konfigurieren Sie das Timestream-Ziel.
# Configuration for sending metrics to Amazon Timestream. [[outputs.timestream]] ## Amazon Region and credentials region = "us-east-1" access_key = "<AWS key here>" secret_key = "<AWS secret key here>" database_name = "<timestream database name>" # needs to exist ## Specifies if the plugin should describe on start. describe_database_on_start = false mapping_mode = "multi-table" # allows multiple tables for each input metrics create_table_if_not_exists = true create_table_magnetic_store_retention_period_in_days = 365 create_table_memory_store_retention_period_in_hours = 24 use_multi_measure_records = true # Important to use multi-measure records measure_name_for_multi_measure_records = "telegraf_measure" max_write_go_routines = 25
-
-
Aktivieren und starten Sie den Telegraf-Dienst.
$ sudo systemctl enable telegraf $ sudo systemctl start telegraf
Schritt 5: Löschen Sie die EC2 Amazon-Instance und die InfluxDB-DB-Instance
Nachdem Sie die von Telegraph generierten Daten mithilfe Ihrer InfluxDB-DB-Instance mit der InfluxDB-Benutzeroberfläche untersucht haben, löschen Sie sowohl Ihre als auch Ihre InfluxDB-DB-Instances, EC2 damit Ihnen keine Gebühren mehr berechnet werden.
Um die Instanz zu löschen: EC2
Melden Sie sich bei der an AWS Management Console und öffnen Sie die EC2 Amazon-Konsole unter https://console.aws.amazon.com/ec2/
. -
Wählen Sie im Navigationsbereich Instances aus.
-
Aktivieren Sie das Kontrollkästchen neben dem Namen der EC2 Instance und wählen Sie dann Instance-Status aus. Wählen Sie Instanz beenden (löschen).
-
Wenn Sie zur Bestätigung aufgefordert werden, wählen Sie Beenden (löschen) aus.
Weitere Informationen zum Löschen einer EC2 Instance finden Sie unter EC2 Amazon-Instances beenden im Amazon Elastic Compute Cloud-Benutzerhandbuch.
Um die DB-Instance ohne endgültigen DB-Snapshot zu löschen:
-
Wählen Sie im Navigationsbereich InfluxDB-Datenbanken aus.
-
Wählen Sie die DB-Instance aus, die Sie löschen möchten. Wählen Sie Delete (Löschen)
-
Bestätigen Sie den Löschvorgang und wählen Sie Löschen.