Amazon OpenSearch Ingestion-Pipelines Zugriff auf Sammlungen gewähren - OpenSearch Amazon-Dienst

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.

Amazon OpenSearch Ingestion-Pipelines Zugriff auf Sammlungen gewähren

Eine Amazon OpenSearch Ingestion-Pipeline kann in eine OpenSearch serverlose öffentliche Sammlung oder VPC-Sammlung schreiben. Um Zugriff auf die Sammlung zu gewähren, konfigurieren Sie eine AWS Identity and Access Management (IAM-) Pipeline-Rolle mit einer Berechtigungsrichtlinie, die Zugriff auf die Sammlung gewährt. Bevor Sie die Rolle in Ihrer Pipeline-Konfiguration angeben, müssen Sie sie mit einer entsprechenden Vertrauensbeziehung konfigurieren und ihr dann über eine Datenzugriffsrichtlinie Datenzugriffsberechtigungen gewähren.

Während der Pipelineerstellung stellt OpenSearch Ingestion eine AWS PrivateLink Verbindung zwischen der Pipeline und der OpenSearch Serverless-Sammlung her. Der gesamte Datenverkehr von der Pipeline durchläuft diesen VPC-Endpunkt und wird an die Sammlung weitergeleitet. Um die Sammlung zu erreichen, muss dem Endpunkt über eine Netzwerkzugriffsrichtlinie Zugriff auf die Sammlung gewährt werden.

Einschränkungen

Die folgenden Einschränkungen gelten für Pipelines, die in OpenSearch serverlose Sammlungen schreiben:

  • Der OTel Trace Group Processor funktioniert derzeit nicht mit OpenSearch serverlosen Sammelsenken.

  • Derzeit unterstützt OpenSearch Ingestion nur den _template Legacy-Vorgang, während OpenSearch Serverless den Composable-Vorgang unterstützt. _index_template Wenn Ihre Pipeline-Konfiguration die index_type Option enthält, muss sie daher auf eingestellt sein. management_disabled

Bereitstellung des Netzwerkzugriffs auf Pipelines

Jeder Sammlung, die Sie in OpenSearch Serverless erstellen, ist mindestens eine Netzwerkzugriffsrichtlinie zugeordnet. Netzwerkzugriffsrichtlinien bestimmen, ob auf die Sammlung über das Internet von öffentlichen Netzwerken aus zugegriffen werden kann oder ob privat darauf zugegriffen werden muss. Weitere Informationen zu Netzwerkrichtlinien finden Sie unterNetzwerkzugriff für Amazon OpenSearch Serverless.

Innerhalb einer Netzwerkzugriffsrichtlinie können Sie nur OpenSearch serverlos verwaltete VPC-Endpunkte angeben. Weitere Informationen finden Sie unter Greifen Sie über einen Schnittstellenendpunkt auf Amazon OpenSearch Serverless zu ()AWS PrivateLink. Damit die Pipeline jedoch in die Sammlung schreiben kann, muss die Richtlinie auch Zugriff auf den VPC-Endpunkt gewähren, den OpenSearch Ingestion automatisch zwischen der Pipeline und der Sammlung erstellt. Wenn Sie also eine Pipeline erstellen, die über eine OpenSearch serverlose Sammelsenke verfügt, müssen Sie den Namen der zugehörigen Netzwerkrichtlinie mithilfe der Option angeben. network_policy_name

Beispielsweise:

... sink: - opensearch: hosts: [ "https://{collection-id}.{region}.aoss.amazonaws.com" ] index: "my-index" aws: serverless: true serverless_options: network_policy_name: "{network-policy-name}"

Bei der Erstellung der Pipeline überprüft OpenSearch Ingestion, ob die angegebene Netzwerkrichtlinie vorhanden ist. Wenn sie nicht existiert, wird sie von OpenSearch Ingestion erstellt. Falls sie existiert, aktualisiert OpenSearch Ingestion sie, indem ihr eine neue Regel hinzugefügt wird. Die Regel gewährt Zugriff auf den VPC-Endpunkt, der die Pipeline und die Sammlung verbindet.

Beispielsweise:

{ "Rules":[ { "Resource":[ "collection/my-collection" ], "ResourceType":"collection" } ], "SourceVPCEs":[ "vpce-0c510712627e27269" # The ID of the VPC endpoint that OpenSearch Ingestion creates between the pipeline and collection ], "Description":"Created by Data Prepper" }

In der Konsole erhalten alle Regeln, die OpenSearch Ingestion Ihren Netzwerkrichtlinien hinzufügt, den Namen Created by Data Prepper:

Anmerkung

Im Allgemeinen hat eine Regel, die den öffentlichen Zugriff auf eine Sammlung festlegt, Vorrang vor einer Regel, die privaten Zugriff festlegt. Wenn für die Richtlinie bereits öffentlicher Zugriff konfiguriert war, ändert diese neue Regel, die OpenSearch Ingestion hinzufügt, das Verhalten der Richtlinie also nicht. Weitere Informationen finden Sie unter Vorrang der Richtlinie.

Wenn Sie die Pipeline beenden oder löschen, löscht OpenSearch Ingestion den VPC-Endpunkt zwischen der Pipeline und der Sammlung. Es ändert auch die Netzwerkrichtlinie, um den VPC-Endpunkt aus der Liste der zulässigen Endpunkte zu entfernen. Wenn Sie die Pipeline neu starten, erstellt sie den VPC-Endpunkt neu und aktualisiert die Netzwerkrichtlinie erneut mit der Endpunkt-ID.

Schritt 1: Erstellen Sie eine Pipeline-Rolle

Für die Rolle, die Sie im Parameter sts_role_arn einer Pipeline-Konfiguration angeben, muss eine Berechtigungsrichtlinie angehängt sein, die es ihr ermöglicht, Daten an die Sammlungssenke zu senden. Außerdem muss sie über eine Vertrauensstellung verfügen, die es OpenSearch Ingestion ermöglicht, die Rolle zu übernehmen. Anweisungen zum Anhängen einer Richtlinie an eine Rolle finden Sie unter Hinzufügen von IAM-Identitätsberechtigungen im IAM-Benutzerhandbuch.

Die folgende Beispielrichtlinie zeigt die geringste Berechtigung, die Sie in der Rolle sts_role_arn einer Pipeline-Konfiguration für das Schreiben in Sammlungen bereitstellen können:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": [ "aoss:APIAccessAll", "aoss:BatchGetCollection", "aoss:CreateSecurityPolicy", "aoss:GetSecurityPolicy", "aoss:UpdateSecurityPolicy" ], "Resource": "*" } ] }

Die Rolle muss über die folgende Vertrauensstellung verfügen, damit Ingestion sie übernehmen kann OpenSearch :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "osis-pipelines.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Schritt 2: Erstellen einer Sammlung

Erstellen Sie eine OpenSearch serverlose Sammlung mit den folgenden Einstellungen. Anweisungen zum Erstellen einer Sammlung finden Sie unterErstellen von Sammlungen.

Richtlinie für den Datenzugriff

Erstellen Sie eine Datenzugriffsrichtlinie für die Sammlung, die der Pipeline-Rolle die erforderlichen Berechtigungen gewährt. Beispielsweise:

[ { "Rules": [ { "Resource": [ "index/{collection-name}/*" ], "Permission": [ "aoss:CreateIndex", "aoss:UpdateIndex", "aoss:DescribeIndex", "aoss:WriteDocument" ], "ResourceType": "index" } ], "Principal": [ "arn:aws:iam::{account-id}:role/{pipeline-role}" ], "Description": "Pipeline role access" } ]
Anmerkung

Geben Sie in dem Principal Element den Amazon-Ressourcennamen (ARN) der Pipeline-Rolle an, die Sie im vorherigen Schritt erstellt haben.

Richtlinie für den Netzwerkzugriff

Erstellen Sie eine Netzwerkzugriffsrichtlinie für die Sammlung. Sie können Daten in eine öffentliche Sammlung oder eine VPC-Sammlung aufnehmen. Die folgende Richtlinie bietet beispielsweise Zugriff auf einen einzelnen, serverlos verwalteten OpenSearch VPC-Endpunkt:

[ { "Description":"Rule 1", "Rules":[ { "ResourceType":"collection", "Resource":[ "collection/{collection-name}" ] } ], "AllowFromPublic": false, "SourceVPCEs":[ "vpce-050f79086ee71ac05" ] } ]
Wichtig

Sie müssen den Namen der Netzwerkrichtlinie innerhalb der network_policy_name Option in der Pipeline-Konfiguration angeben. Zum Zeitpunkt der Pipeline-Erstellung aktualisiert OpenSearch Ingestion diese Netzwerkrichtlinie, um den Zugriff auf den VPC-Endpunkt zu ermöglichen, der automatisch zwischen der Pipeline und der Sammlung erstellt wird. In Schritt 3 finden Sie ein Beispiel für eine Pipeline-Konfiguration. Weitere Informationen finden Sie unter Bereitstellung des Netzwerkzugriffs auf Pipelines.

Schritt 3: Erstellen Sie eine Pipeline

Erstellen Sie abschließend eine Pipeline, in der Sie die Pipeline-Rolle und die Sammlungsdetails angeben. Die Pipeline übernimmt diese Rolle, um Anfragen an die OpenSearch Serverless Collection Sink zu signieren.

Stellen Sie Folgendes sicher:

  • Geben Sie für die hosts Option den Endpunkt der Sammlung an, die Sie in Schritt 2 erstellt haben.

  • Geben Sie für die sts_role_arn Option den Amazon-Ressourcennamen (ARN) der Pipeline-Rolle an, die Sie in Schritt 1 erstellt haben.

  • Stellen Sie die serverless Option auf eintrue.

  • Stellen Sie die network_policy_name Option auf den Namen der Netzwerkrichtlinie ein, die der Sammlung zugeordnet ist. OpenSearch Die Aufnahme aktualisiert diese Netzwerkrichtlinie automatisch, um den Zugriff von der VPC aus zu ermöglichen, die sie zwischen der Pipeline und der Sammlung erstellt. Weitere Informationen finden Sie unter Bereitstellung des Netzwerkzugriffs auf Pipelines.

version: "2" log-pipeline: source: http: path: "/log/ingest" processor: - date: from_time_received: true destination: "@timestamp" sink: - opensearch: hosts: [ "https://{collection-id}.{region}.aoss.amazonaws.com" ] index: "my-index" aws: serverless: true serverless_options: network_policy_name: "{network-policy-name}" # If the policy doesn't exist, a new policy is created. region: "us-east-1" sts_role_arn: "arn:aws:iam::{account-id}:role/{pipeline-role}"

Eine vollständige Referenz der erforderlichen und nicht unterstützten Parameter finden Sie unter. Unterstützte Plugins und Optionen für Amazon OpenSearch Ingestion-Pipelines