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.
Zugriffsprotokolle mit der Integration von S3-Tabellen
Die S3 Tables-Integration mit CloudWatch ermöglicht Ihnen den Zugriff auf Protokolldaten, die CloudWatch mithilfe von Analyse-Engines wie Amazon Athena, Amazon Redshift und Tools von Drittanbietern aufgenommen wurden, die Verbindungen zu Apache Iceberg-kompatiblen Speichern unterstützen. Diese Integration ermöglicht es Ihnen, umfassende Protokollanalysen mit Tools Ihrer Wahl durchzuführen und Daten in Logs mit Nichtdaten zu korrelieren. CloudWatch CloudWatch
Die Integration von S3-Tabellen verstehen
Amazon S3 Tables Integration ist eine vollständig verwaltete Lösung, die Ihre Logs in CloudWatch Logs als verwaltete Amazon S3 S3-Tabellen verfügbar macht. Mit dieser Integration erhalten Sie zusätzlich zu den Protokollfunktionen mehr Flexibilität bei der Analyse Ihrer CloudWatch Protokolle.
Die Integration funktioniert durch die Erstellung eines verwalteten Amazon S3 S3-Tabellen-Buckets (aws-cloudwatch) und das Zuordnen bestimmter Protokollquellen zu Amazon S3 S3-Tabellen auf der Grundlage von Name und Typ der Datenquelle (die über die Registerkarte Protokollverwaltung > Datenquellen in der CloudWatch Logs Console verwaltet werden können). Nach der Verknüpfung können CloudWatch Logs-Daten über Amazon S3 S3-Tabellen im Apache Iceberg-Format abgerufen werden. Dieses Format bietet eine standardisierte Möglichkeit für verschiedene Analyse-Engines, die Daten effizient abzufragen.
Kernkomponenten
- Zuordnung der Datenquellen
-
Der Prozess der Verknüpfung bestimmter CloudWatch Protokollquellen mit der Integration von S3-Tabellen auf der Grundlage von Datenquellen- und Typkriterien.
- Apache Iceberg-Tabellen
-
Das von S3 Tables verwendete zugrunde liegende Tabellenformat, das strukturierte Datenspeicher bietet und die Kompatibilität mit mehreren Analyse-Engines ermöglicht.
Datenfluss zu S3-Tabellen
Wenn Sie wissen, wie Daten zwischen CloudWatch Protokollen und S3-Tabellen fließen, können Sie Ihre Integration planen und Ihre Protokolldaten effektiv verwalten.
Wenn Sie eine Zuordnung erstellen, sendet CloudWatch Logs automatisch neue Protokollereignisse, die dem Namen und Typ der zugehörigen Datenquelle entsprechen, an einen S3-Tabellen-Bucket mit CloudWatch verwaltetem S3-Tabellen-Bucket. Sie finden diese Ereignisse im Logs-Namespace unter der entsprechenden Tabelle für diese Datenquelle. Die Integration verarbeitet nur Protokollereignisse, die nach dem Erstellen der Zuordnung hinzugefügt wurden, und füllt keine Protokolle aus, die vor der Erstellung der Zuordnung erstellt wurden.
Die Datenspeicherung im S3-Tabellen-Bucket entspricht der Aufbewahrungsrichtlinie, die für die Protokollgruppe festgelegt wurde. Wenn Sie beispielsweise für eine Protokollgruppe die Aufbewahrung von einem Tag festlegen, entfernt CloudWatch Logs die Daten nach einem Tag sowohl aus den CloudWatch Protokollen als auch aus der S3-Tabelle. Wenn Sie eine Protokollgruppe oder einen Protokollstream löschen, entfernt CloudWatch Logs auch die Daten aus dem S3-Tabellen-Bucket.
Wann sollte die Integration von S3-Tabellen verwendet werden
Erwägen Sie die Verwendung der S3-Tabellen-Integration, um Protokolldaten mit anderen externen oder CloudWatch Nichtdaten zu korrelieren, oder wenn Sie es vorziehen, andere Analysetools wie Amazon Athena für die Durchführung von Analysen von CloudWatch Protokolldaten zu verwenden. Verwenden Sie diese Integration, wenn Sie Funktionen benötigen, die über das hinausgehen, was in CloudWatch Logs verfügbar ist. Diese Integration ist besonders nützlich, wenn:
-
Sie müssen komplexe SQL-ähnliche Abfragen für große Mengen von Protokolldaten ausführen
-
Sie möchten die Protokollanalyse in bestehende Analyse-Workflows und -Tools integrieren
-
Sie benötigen umfassende Protokollanalysefunktionen, die sich über mehrere Datenquellen erstrecken
Für S3-Tabellen, die mit dieser Integration erstellt wurden, fallen keine zusätzlichen Speicher- oder Tabellenverwaltungsgebühren an, abgesehen von den CloudWatch bestehenden Preisen für Aufnahme und Speicherung.
Voraussetzungen
Stellen Sie vor der Implementierung der Integration sicher, dass Sie über Folgendes verfügen:
-
Bestehende CloudWatch Protokolldaten
-
Geeignete IAM-Berechtigungen für den dienstübergreifenden Zugriff zwischen CloudWatch Protokollen und S3-Tabellen, wie im folgenden Abschnitt beschrieben
IAM-Berechtigungen
Um CloudWatch Logs in S3-Tabellen zu integrieren, müssen Sie IAM-Berechtigungen für zwei separate Entitäten konfigurieren: den Benutzer oder die Rolle, die die Integration einrichtet, und die Servicerolle, die CloudWatch Logs für das Schreiben von Daten in S3-Tabellen annimmt.
Für die Rolle oder den Benutzer, der die Integration erstellt
Der Benutzer oder die Rolle, der die Integration einrichtet, benötigt die folgenden Berechtigungen:
-
observabilityadmin:CreateS3TableIntegrationum die Integrationlogs:AssociateSourceToS3TableIntegrationzu erstellen und Quellen hinzuzufügen -
s3tables:CreateTableBuckets3tables:PutTableBucketEncryption, unds3tables:PutTableBucketPolicyum den S3-Tabellen-Bucket zu konfigurieren
Für die Servicerolle
Hängen Sie die folgende IAM-Richtlinie an die IAM-Dienstrolle an, die CloudWatch Logs verwendet, um Daten in den Tabellen-Bucket zu schreiben. Diese Richtlinie gewährt die Berechtigung, in die Tabellen zu schreiben. Ersetzen Sie aws-region123456789012, und log-group-name durch Ihre AWS Region, Konto-ID und den Namen der Protokollgruppe.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:integrateWithS3Table" ], "Resource": ["arn:aws:logs:aws-region:123456789012:log-group:log-group-name"], "Condition": { "StringEquals": { "aws:ResourceAccount": "123456789012" } } } ] }
Fügen Sie der IAM-Dienstrolle, die CloudWatch Logs für das Schreiben von Protokolldaten in S3-Tabellen übernimmt, die folgende Vertrauensrichtlinie hinzu. Sie erstellen oder wählen diese Rolle während des Integrations-Setups aus. Die Bedingungen schränken die Rolle so ein, dass CloudWatch Logs sie nur für das angegebene Konto und die angegebene Protokollgruppe übernehmen kann. Ersetzen Sie aws-region123456789012, und log-group-name durch Ihre AWS Region, Konto-ID und den Namen der Protokollgruppe.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "logs.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:aws-region:123456789012:log-group:log-group-name"] } } } ] }
KMS-Schlüsselrichtlinie (für verschlüsselte Daten)
Wenn Sie einen vom Kunden verwalteten Schlüssel zum Verschlüsseln Ihrer Protokolldaten verwenden, müssen Sie dem CloudWatch Service Principal und dem Wartungsservice-Principal von S3 Tables Zugriff auf den Schlüssel gewähren. Fügen Sie Ihrer KMS-Schlüsselrichtlinie die folgenden Anweisungen hinzu. Ersetzen Sie die Platzhalterwerte durch Ihre AWS-Konto ID, Region, KMS-Schlüssel-ID und den ARN für die S3-Tabelle oder den Tabellen-Bucket.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnableSystemTablesKeyUsage", "Effect": "Allow", "Principal": { "Service": "systemtables.cloudwatch.amazonaws.com" }, "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "arn:aws:kms:aws-region:123456789012:key/key-id", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" } } }, { "Sid": "EnableKeyUsage", "Effect": "Allow", "Principal": { "Service": "maintenance.s3tables.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "arn:aws:kms:aws-region:123456789012:key/key-id", "Condition": { "StringLike": { "kms:EncryptionContext:aws:s3:arn": "<table-or-table-bucket-arn>/*" } } } ] }
Erste Schritte
Um mit der Integration von S3-Tabellen zu beginnen, müssen Sie die Integration zwischen Ihren CloudWatch Logs und S3-Tabellen einrichten. Dieser Prozess beinhaltet die Konfiguration von Datenquellenzuordnungen und die Einrichtung entsprechender IAM-Berechtigungen.
Um eine S3-Tabellenintegration zu erstellen
-
Öffnen Sie die CloudWatch Logs-Konsole unter https://console.aws.amazon.com/cloudwatch/
“. -
Wählen Sie „Einstellungen“, „Global“ und „S3-Tabellenintegration erstellen“.
-
Passen Sie an, wie Logs in S3-Tabellen verschlüsselt werden und welche Rolle CloudWatch Logs beim Schreiben Ihrer Logs in S3-Tabellen spielen soll.
-
Wählen Sie Create S3 Table Integration aus.
Um Quellen einer S3-Tabellenintegration zuzuordnen
-
Öffnen Sie die CloudWatch Logs-Konsole unter https://console.aws.amazon.com/cloudwatch/
“. -
Wählen Sie „Einstellungen“, „Global“, „S3-Tabellenintegration verwalten“.
-
Wählen Sie Datenquelle zuordnen aus.
-
Wählen Sie den Datenquellennamen und den Datenquellentyp aus, für den Sie die Integration aktivieren möchten.
-
Wählen Sie Datenquelle zuordnen aus.
Um einer S3-Tabellenintegration auf der Seite „Log Management“ Quellen zuzuordnen
-
Öffnen Sie die CloudWatch Logs-Konsole unter https://console.aws.amazon.com/cloudwatch/
“. -
Wählen Sie im Navigationsbereich die Option Protokollverwaltung aus.
-
Wählen Sie die Registerkarte Datenquellen aus.
-
Wählen Sie den Datenquellennamen und den Datenquellentyp aus, den Sie integrieren möchten.
-
Wählen Sie Datenquellenaktionen aus.
-
Wählen Sie Mit S3-Tabellenintegration verknüpfen aus.
-
Überprüfen Sie die Datenquellen und wählen Sie dann Datenquelle zuordnen aus.
Bevor Sie die Daten verwenden können, müssen Sie die folgenden 3 Schritte ausführen:
-
Integrieren von Amazon Amazon S3-Tabellen mit AWS Analysediensten — Verwenden der Amazon S3 S3-Konsole
-
Lake Formation Formation-Berechtigungen konfigurieren
-
Mit Analysetools Connect
Integration von Amazon Amazon S3 S3-Tabellen mit AWS Analysediensten — Verwenden der Amazon S3 S3-Konsole (Link)
Um die Integration von S3-Tabellen mithilfe der S3-Konsole zu aktivieren
-
Öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie im linken Navigationsbereich Tabellen-Buckets aus.
-
Klicken Sie oben auf Integration aktivieren.
-
Wenn Sie Tabellen-Buckets zum ersten Mal in einer beliebigen Region integrieren, erstellt Amazon Amazon S3 in Ihrem Namen eine neue IAM-Servicerolle. Diese Rolle ermöglicht es Lake Formation, auf alle Tabellen-Buckets in Ihrem Konto zuzugreifen und den Verbundzugriff auf Ihre Tabellen in AWS Glue Data Catalog zu bündeln.
Lake Formation Formation-Berechtigungen konfigurieren
CloudWatch Logs ist zwar berechtigt, in die Tabelle zu schreiben (wie in den vorherigen Schritten konfiguriert), Benutzer und Analyserollen sind jedoch nicht automatisch berechtigt, die Daten zu lesen. Sie müssen den Zugriff über AWS Lake Formation ausdrücklich gewähren. Sie müssen dies für jeden IAM-Prinzipal tun, dem Sie Zugriff auf die Tabelle gewähren möchten.
Um Benutzern oder Rollen Abfragezugriff zu gewähren
Sie müssen den IAM-Prinzipalen (Benutzern oder Rollen), die Abfragen in Athena oder Redshift ausführen, die Berechtigungen SELECT und DESCRIBE gewähren.
-
Öffnen Sie die AWS Lake Formation Formation-Konsole.
-
Wählen Sie im Navigationsbereich unter Berechtigungen die Option Data Lake-Berechtigungen aus.
-
Wählen Sie Grant (Erteilen).
-
Principals: Wählen Sie die IAM-Benutzer oder -Rollen aus, für die Zugriff erforderlich ist (z. B. Ihre Datenanalysten oder die Administratorrolle, die Sie derzeit verwenden).
-
LF-Tags oder Katalogressourcen: Wählen Sie Benannte Datenkatalogressourcen aus.
-
Datenbanken und Tabellen:
-
Wählen Sie den durch die CloudWatch Integration erstellten S3-Tabellen-Bucket aus (
aws-cloudwatch). -
Wählen Sie die spezifische Tabelle aus, die Ihrer Datenquelle zugeordnet ist (optional).
-
-
Tabellenberechtigungen: Wählen Sie „Auswählen und beschreiben“ aus.
-
Wählen Sie Grant (Erteilen).
Anmerkung
Wenn bei der Abfrage von Logs in Athena die Fehlermeldung „Zugriff verweigert“ auftritt, stellen Sie sicher, dass der Benutzer, der die Abfrage ausführt, sowohl über die entsprechenden IAM-Berechtigungen für Athena als auch über die oben definierten Lake Formation Formation-Berechtigungen verfügt.
Weitere Informationen zu den Berechtigungen für Lake Formation finden Sie unter https://docs.aws.amazon.com/lake-formation/latest/dg/granting-catalog-permissions.html.
Mit Analysetools Connect
Sobald die Berechtigungen erteilt wurden, können Sie Ihren bevorzugten Analysedienst für die Abfrage der S3-Tabellen konfigurieren. S3-Tabellen verwenden das Apache Iceberg-Format, das von Amazon Athena, Amazon Redshift und Amazon EMR nativ unterstützt wird.
Um Protokolldaten in Amazon Athena abzufragen
Amazon Athena interagiert mit S3-Tabellen über den Amazon S3 Tables-Katalog.
Um Athena für die Abfrage Ihrer Logdaten einzurichten
-
Öffnen Sie die Amazon Athena Athena-Konsole unter https://console.aws.amazon.com/athena/
. -
Wählen Sie im Abfrage-Editor den Amazon S3-Tabellen-Katalog aus der Datenquellen-Dropdownliste aus.
-
Wenn Sie den Katalog nicht sehen, stellen Sie sicher, dass Sie die oben genannten Schritte zur Genehmigung von Lake Formation für Ihre spezifische Benutzerrolle abgeschlossen haben.
-
Sobald der Katalog ausgewählt ist, werden Ihre Protokolltabellen in der Datenbankliste angezeigt. Sie können jetzt Standard-SQL-Abfragen für Ihre Protokolldaten ausführen.
Beispielabfrage: SELECT * FROM "amazon_vpc__flow" LIMIT 100;
Weitere Informationen zur Verbindung von Analytics-Diensten mit S3-Tabellen finden Sie unter https://docs.aws.amazon.com/AmazonS3/ latest/userguide/s tables-integrating-aws 3-.html.