Intégration des pipelines OpenSearch Amazon Ingestion à d'autres services et applications - Amazon OpenSearch Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Intégration des pipelines OpenSearch Amazon Ingestion à d'autres services et applications

Pour réussir à ingérer des données dans un pipeline Amazon OpenSearch Ingestion, vous devez configurer votre application cliente (la source) pour envoyer les données au point de terminaison du pipeline. Votre source peut être des clients tels que les journaux Fluent Bit, le OpenTelemetry Collector ou un simple compartiment S3. La configuration exacte diffère pour chaque client.

Les différences importantes lors de la configuration de la source (par rapport à l'envoi de données directement à un domaine de OpenSearch service ou à une collection OpenSearch sans serveur) concernent le nom du AWS service (osis) et le point de terminaison hôte, qui doit être le point de terminaison du pipeline.

Construction du paramètre d'ingestion

Pour ingérer des données dans un pipeline, envoyez-les au point de terminaison d'ingestion. Pour localiser l'ingestionURL, accédez à la page des paramètres du pipeline et copiez l'ingestion URL :

Pipeline settings page showing active status, capacity, and ingestion URL for data input.

Pour créer le point de terminaison d'ingestion complet pour les sources basées sur le pull, telles que le OTeltraçage et OTelles métriques, ajoutez le chemin d'ingestion depuis la configuration de votre pipeline jusqu'à l'ingestion. URL

Supposons, par exemple, que la configuration de votre pipeline comporte le chemin d'ingestion suivant :

entry-pipeline: source: http: path: "/my/test_path"

Le point de terminaison d'ingestion complet, que vous spécifiez dans la configuration de votre client, prendra le format suivant :https://ingestion-pipeline-abcdefg.us-west-2.osis.amazonaws.com/my/test_path.

Pour de plus amples informations, veuillez consulter Spécification du chemin d'ingestion.

Création d'un rôle d'ingestion

Toutes les demandes adressées OpenSearch à Ingestion doivent être signées avec Signature Version 4. Au minimum, le rôle qui signe la demande doit être autorisé à effectuer l'osis:Ingestaction, ce qui lui permet d'envoyer des données à un pipeline d' OpenSearch ingestion.

Par exemple, la politique suivante AWS Identity and Access Management (IAM) permet au rôle correspondant d'envoyer des données à un seul pipeline :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "osis:Ingest", "Resource": "arn:aws:osis:us-east-1:{account-id}:pipeline/pipeline-name" } ] }
Note

Pour utiliser le rôle pour tous les pipelines, remplacez le ARN dans l'Resourceélément par un caractère générique (*).

Fournir un accès à l'ingestion entre comptes

Note

Vous ne pouvez fournir un accès d'ingestion entre comptes que pour les pipelines publics, et non pour les VPC pipelines.

Il se peut que vous deviez ingérer des données dans un pipeline à partir d'un autre compte Compte AWS, tel qu'un compte hébergeant votre application source. Si le principal qui écrit dans un pipeline se trouve dans un compte différent de celui du pipeline lui-même, vous devez configurer le principal pour qu'il fasse confiance à un autre IAM rôle chargé d'ingérer des données dans le pipeline.

Pour configurer les autorisations d'ingestion entre comptes
  1. Créez le rôle d'ingestion avec osis:Ingest autorisation (décrit dans la section précédente) au même Compte AWS titre que le pipeline. Pour obtenir des instructions, consultez la section Création de IAM rôles.

  2. Associez une politique de confiance au rôle d'ingestion qui permet au principal d'un autre compte de l'assumer :

    { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::{external-account-id}:root" }, "Action": "sts:AssumeRole" }] }
  3. Dans l'autre compte, configurez votre application cliente (par exemple, Fluent Bit) pour qu'elle assume le rôle d'ingestion. Pour que cela fonctionne, le compte de l'application doit autoriser l'utilisateur ou le rôle de l'application à assumer le rôle d'ingestion.

    L'exemple de politique basée sur l'identité suivant permet au principal rattaché d'assumer à ingestion-role partir du compte de pipeline :

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::{account-id}:role/ingestion-role" } ] }

L'application client peut ensuite utiliser l'AssumeRoleopération pour assumer ingestion-role et ingérer des données dans le pipeline associé.

Étapes suivantes

Après avoir exporté vos données vers un pipeline, vous pouvez les interroger depuis le domaine de OpenSearch service configuré comme récepteur pour le pipeline. Les ressources suivantes peuvent vous aider à démarrer :