Creazione di pipeline Amazon OpenSearch Ingestion - OpenSearch Servizio Amazon

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à.

Creazione di pipeline Amazon OpenSearch Ingestion

Una pipeline è il meccanismo utilizzato da Amazon OpenSearch Ingestion per spostare i dati dalla fonte (da cui provengono i dati) al relativo sink (dove vanno i dati). In OpenSearch Ingestion, il sink sarà sempre un singolo dominio Amazon OpenSearch Service, mentre la fonte dei dati potrebbe essere costituita da client come Amazon S3, Fluent Bit o Collector. OpenTelemetry

Per ulteriori informazioni, consulta Pipelines nella documentazione. OpenSearch

Prerequisiti e ruolo IAM richiesto

Per creare una pipeline OpenSearch di ingestione, è necessario disporre delle seguenti risorse:

  • Un ruolo IAM, chiamato ruolo pipeline, che OpenSearch Ingestion assume per scrivere nel sink. Puoi creare questo ruolo in anticipo oppure puoi fare in modo che OpenSearch Ingestion lo crei automaticamente durante la creazione della pipeline.

  • Un dominio OpenSearch di servizio o una raccolta OpenSearch Serverless che funga da sink. Se stai scrivendo su un dominio, deve essere in esecuzione OpenSearch 1.0 o versione successiva oppure Elasticsearch 7.4 o versione successiva. Il sink deve disporre di una politica di accesso che conceda le autorizzazioni appropriate al ruolo della pipeline IAM.

Per istruzioni su come creare queste risorse, consulta i seguenti argomenti:

Nota

Se stai scrivendo su un dominio che utilizza un controllo granulare degli accessi, devi completare alcuni passaggi aggiuntivi. Consultare Mappa il ruolo della pipeline (solo per i domini che utilizzano un controllo di accesso granulare).

Autorizzazioni IAM richieste

OpenSearch Ingestion utilizza le seguenti autorizzazioni IAM per creare pipeline:

  • osis:CreatePipeline— Creare una pipeline.

  • osis:ValidatePipeline— Verificare se la configurazione di una tubazione è valida.

  • iam:CreateRolee iam:AttachPolicy — Fai in modo che OpenSearch Ingestion crei automaticamente il ruolo della pipeline per te.

  • iam:PassRole— Passa il ruolo della pipeline a OpenSearch Ingestion in modo che possa scrivere dati nel dominio. Questa autorizzazione deve riguardare la risorsa relativa al ruolo della pipeline o semplicemente * se si prevede di utilizzare ruoli diversi in ciascuna pipeline.

Ad esempio, la seguente politica concede l'autorizzazione a creare una pipeline:

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Resource":"*", "Action":[ "osis:CreatePipeline", "osis:ListPipelineBlueprints", "osis:ValidatePipeline" ] }, { "Resource":[ "arn:aws:iam::your-account-id:role/pipeline-role" ], "Effect":"Allow", "Action":[ "iam:CreateRole", "iam:AttachPolicy", "iam:PassRole" ] } ] }

OpenSearch Ingestion include anche un'autorizzazione chiamataosis:Ingest, necessaria per inviare richieste firmate alla pipeline utilizzando Signature Version 4. Per ulteriori informazioni, consulta Creazione di un ruolo di importazione.

Nota

Inoltre, il primo utente che crea una pipeline in un account deve disporre delle autorizzazioni per l'azione. iam:CreateServiceLinkedRole Per ulteriori informazioni, consulta pipeline role resource.

Per ulteriori informazioni su ciascuna autorizzazione, vedere Azioni, risorse e chiavi di condizione per l' OpenSearch ingestione nel Service Authorization Reference.

Specificare la versione della pipeline

Quando crei una pipeline utilizzando l'editor di configurazione, devi specificare la versione principale di Data Prepper che verrà eseguita dalla pipeline. Per specificare la versione, includete l'versionopzione nella configurazione della pipeline:

version: "2" log-pipeline: source: ...

Quando scegliete Create, OpenSearch Ingestion determina l'ultima versione secondaria disponibile della versione principale specificata e fornisce la pipeline con quella versione. Ad esempio, se si specifica e l'ultima versione supportata di Data Prepper è la 2.1.1version: "2", OpenSearch Ingestion esegue il provisioning della pipeline con la versione 2.1.1. Non mostriamo pubblicamente la versione secondaria in esecuzione nella tua pipeline.

Per aggiornare la pipeline quando è disponibile una nuova versione principale di Data Prepper, modifica la configurazione della pipeline e specifica la nuova versione. Non puoi effettuare il downgrade di una pipeline a una versione precedente.

Nota

OpenSearch Ingestion non supporta immediatamente le nuove versioni di Data Prepper non appena vengono rilasciate. Si verificherà un certo ritardo tra il momento in cui una nuova versione sarà disponibile pubblicamente e il momento in cui sarà supportata in Ingestion. OpenSearch Inoltre, OpenSearch Ingestion potrebbe esplicitamente non supportare del tutto determinate versioni principali o secondarie. Per un elenco completo, consulta Versioni di Data Prepper supportate.

Ogni volta che apporti una modifica alla pipeline che avvia una blue/green distribuzione, OpenSearch Ingestion può aggiornarla all'ultima versione secondaria della versione principale attualmente configurata per la pipeline. Per ulteriori informazioni, vedere. Implementazioni blu/verdi per gli aggiornamenti della pipeline OpenSearch L'ingestione non può modificare la versione principale della pipeline a meno che non aggiorni esplicitamente l'versionopzione all'interno della configurazione della pipeline.

Specificare il percorso di ingestione

Per le fonti basate su pull come OTel trace e OTel metrics, OpenSearch Ingestion richiede l'opzione aggiuntiva nella configurazione del codice sorgente. path Il percorso è una stringa come/log/ingest, che rappresenta il percorso URI per l'ingestione. Questo percorso definisce l'URI utilizzato per inviare dati alla pipeline.

Ad esempio, supponiamo di specificare il seguente percorso per una pipeline con un'origine HTTP:

Input field for specifying the path for ingestion, with an example path entered.

Quando si inseriscono dati nella pipeline, è necessario specificare il seguente endpoint nella configurazione del client:. https://pipeline-name-abc123.us-west-2.osis.amazonaws.com/my/test_path

Il percorso deve iniziare con una barra (/) e può contenere i caratteri speciali '-', '_', ' . 'e'/', oltre al ${pipelineName} segnaposto. Se si utilizza ${pipelineName} (ad esempio/${pipelineName}/test_path), OpenSearch Ingestion sostituisce la variabile con il nome della sottopipeline associata.

Creazione di pipeline

Questa sezione descrive come creare pipeline di OpenSearch ingestione utilizzando la console di OpenSearch servizio e il. AWS CLI

Per creare una pipeline, accedi alla console di Amazon OpenSearch Service da https://console.aws.amazon.com/aos/casa e scegli Crea pipeline.

Seleziona una pipeline vuota o scegli un blueprint di configurazione. I blueprint includono una pipeline preconfigurata per una varietà di casi d'uso comuni. Per ulteriori informazioni, consulta Lavorare con i progetti.

Scegli Seleziona blueprint.

Configura la fonte

  1. Se parti da una pipeline vuota, seleziona una fonte dal menu a discesa. Le fonti disponibili potrebbero includere altre Servizi AWS fonti o OpenTelemetry HTTP. Per ulteriori informazioni, consulta Integrazione delle pipeline OpenSearch di Amazon Ingestion con altri servizi e applicazioni.

  2. A seconda della fonte scelta, configura impostazioni aggiuntive per la fonte. Ad esempio, per utilizzare Amazon S3 come sorgente, devi specificare l'URL della coda Amazon SQS dalla pipeline di ricezione dei messaggi. Per un elenco dei plugin di origine supportati e dei collegamenti alla relativa documentazione, consulta. Plugin e opzioni supportati per le pipeline di Amazon OpenSearch Ingestion

  3. Per alcune fonti, è necessario specificare le opzioni di rete di origine. Scegli tra Accesso VPC o Accesso pubblico. Se si sceglie Public access (Accesso pubblico), andare al passaggio successivo. Se scegli l'accesso VPC, configura le seguenti impostazioni:

    Impostazione Descrizione
    Gestione degli endpoint

    Scegliete se creare voi stessi gli endpoint del cloud privato virtuale (VPC) o lasciateli creare da OpenSearch Ingestion per voi. Per impostazione predefinita, la gestione degli endpoint utilizza gli endpoint gestiti da Ingestion. OpenSearch

    VPC

    Scegli l'ID del VPC che desideri utilizzare. Il VPC e la pipeline devono trovarsi nello stesso ambiente. Regione AWS

    Sottoreti

    Scegli una o più sottoreti. OpenSearch Il servizio inserirà un endpoint VPC e interfacce di rete elastiche nelle sottoreti.

    Gruppi di sicurezza

    Scegli uno o più gruppi di sicurezza VPC che consentano all'applicazione richiesta di raggiungere la pipeline di OpenSearch ingestione sulle porte (80 o 443) e sui protocolli (HTTP o HTTPs) esposti dalla pipeline.

    Opzioni di collegamento VPC

    Se la tua fonte è un endpoint autogestito, collega la pipeline a un VPC. Scegli una delle opzioni CIDR predefinite fornite o utilizza un CIDR personalizzato.

    Per ulteriori informazioni, consulta Configurazione dell'accesso VPC per le pipeline di Amazon Ingestion OpenSearch .

  4. Scegli Next (Successivo).

Configura il processore

Aggiungi uno o più processori alla tua pipeline. I processori sono componenti all'interno di una sottopipeline che consentono di filtrare, trasformare e arricchire gli eventi prima di pubblicare i record nel dominio o nel collection sink. Per un elenco dei processori supportati e i collegamenti alla relativa documentazione, consulta. Plugin e opzioni supportati per le pipeline di Amazon OpenSearch Ingestion

Puoi scegliere Azioni e aggiungere quanto segue:

  • Routing condizionale: indirizza gli eventi a diversi sink in base a condizioni specifiche. Per ulteriori informazioni, consulta Routing condizionale.

  • Sub-pipeline: ogni sub-pipeline è una combinazione di un'unica fonte, zero o più processori e un singolo sink. Solo una sottopipeline può avere un'origine esterna. Tutte le altre devono avere sorgenti che siano altre sotto-pipeline all'interno della configurazione generale della pipeline. Una configurazione a tubazione singola può contenere da 1 a 10 tubazioni secondarie.

Scegli Next (Successivo).

Configura sink

Seleziona la destinazione in cui la pipeline pubblica i record. Ogni tubazione secondaria deve contenere almeno un sink. È possibile aggiungere un massimo di 10 lavandini a una tubazione.

Per i OpenSearch lavandini, configurate i seguenti campi:

Impostazione Descrizione
Nome della politica di rete

(Solo sink serverless)

Se hai selezionato una raccolta OpenSearch Serverless, inserisci un nome di policy di rete. OpenSearch Ingestion crea la policy se non esiste o la aggiorna con una regola che concede l'accesso all'endpoint VPC che collega la pipeline e la raccolta. Per ulteriori informazioni, consulta Concedere alle pipeline OpenSearch di Amazon Ingestion l'accesso alle raccolte.

Nome dell'indice

Il nome dell'indice a cui la pipeline invia i dati. OpenSearch Ingestion crea questo indice se non esiste già.

Opzioni di mappatura dell'indice

Scegliete in che modo la pipeline archivia e indicizza i documenti e i relativi campi nel sink. OpenSearch Se selezioni Mappatura dinamica, OpenSearch aggiunge automaticamente i campi quando indicizzi un documento. Se selezioni Personalizza mappatura, inserisci un modello di mappatura dell'indice. Per ulteriori informazioni, consulta Modelli di indice.

Abilita DLQ

Configura una dead-letter queue (DLQ) di Amazon S3 per la pipeline. Per ulteriori informazioni, consulta Code DLQ.

Impostazioni aggiuntive

Configura le opzioni avanzate per il OpenSearch lavandino. Per ulteriori informazioni, consulta Opzioni di configurazione nella documentazione di Data Prepper.

Per aggiungere un sink Amazon S3, scegli Aggiungi sink e Amazon S3. Per ulteriori informazioni, consulta Amazon S3 come destinazione.

Scegli Next (Successivo).

Configura la pipeline

Configurate le seguenti impostazioni aggiuntive della pipeline:

Impostazione Descrizione
Nome della pipeline

Un nome univoco per la pipeline.

Buffer persistente

Un buffer persistente archivia i dati in un buffer basato su disco su più zone di disponibilità. Per ulteriori informazioni, consulta Buffering persistente.

Se abiliti il buffering persistente, seleziona la AWS Key Management Service chiave per crittografare i dati del buffer.

Capacità della pipeline

La capacità minima e massima della pipeline, in Ingestion OpenSearch Compute Units (). OCUs Per ulteriori informazioni, consulta Scalabilità delle pipeline in Amazon Ingestion OpenSearch .

Ruolo della pipeline

Il ruolo IAM che fornisce le autorizzazioni necessarie alla pipeline per scrivere nel sink e leggere da fonti basate su pull. Puoi creare il ruolo tu stesso o fare in modo che OpenSearch Ingestion lo crei per te in base al caso d'uso selezionato.

Per ulteriori informazioni, consulta Configurazione di ruoli e utenti in Amazon OpenSearch Ingestion.

Tag

Aggiungi uno o più tag alla tua pipeline. Per ulteriori informazioni, consulta Etichettatura delle pipeline di Amazon OpenSearch Ingestion.

Opzioni di pubblicazione dei log Abilita la pubblicazione dei log della pipeline su Amazon CloudWatch Logs. Ti consigliamo di abilitare la pubblicazione dei log in modo da poter risolvere più facilmente i problemi relativi alla pipeline. Per ulteriori informazioni, consulta Monitoraggio dei log della pipeline.

Scegli Avanti., quindi rivedi la configurazione della pipeline e scegli Crea pipeline.

OpenSearch Ingestion esegue un processo asincrono per creare la pipeline. Una volta raggiunto lo stato della pipeline, puoi iniziare a importare i datiActive.

Il comando create-pipeline accetta la configurazione della pipeline come stringa o all'interno di un file .yaml o .json. Se fornite la configurazione come stringa, ogni nuova riga deve essere scappata con. \n Ad esempio, "log-pipeline:\n source:\n http:\n processor:\n - grok:\n ...

Il seguente comando di esempio crea una pipeline con la seguente configurazione:

  • Minimo 4 ingestioni OCUs, massimo 10 ingestioni OCUs

  • Fornito all'interno di un cloud privato virtuale (VPC)

  • Pubblicazione dei log abilitata

aws osis create-pipeline \ --pipeline-name my-pipeline \ --min-units 4 \ --max-units 10 \ --log-publishing-options IsLoggingEnabled=true,CloudWatchLogDestination={LogGroup="MyLogGroup"} \ --vpc-options SecurityGroupIds={sg-12345678,sg-9012345},SubnetIds=subnet-1212234567834asdf \ --pipeline-configuration-body "file://pipeline-config.yaml" \ --pipeline-role-arn arn:aws:iam::1234456789012:role/pipeline-role

OpenSearch Ingestion esegue un processo asincrono per creare la pipeline. Una volta raggiunto lo stato della pipeline, puoi iniziare a importare i datiActive. Per controllare lo stato della pipeline, utilizzate il comando. GetPipeline

Per creare una pipeline OpenSearch di ingestione utilizzando l'API Ingestion, chiama l' OpenSearch operazione. CreatePipeline

Dopo aver creato correttamente la pipeline, puoi configurare il client e iniziare a importare dati nel tuo dominio di servizio. OpenSearch Per ulteriori informazioni, consulta Integrazione delle pipeline OpenSearch di Amazon Ingestion con altri servizi e applicazioni.

Monitoraggio dello stato della creazione della pipeline

È possibile tenere traccia dello stato di una pipeline man mano che OpenSearch Ingestion la rifornisce e la prepara per l'importazione dei dati.

Dopo aver creato inizialmente una pipeline, questa passa attraverso più fasi man mano OpenSearch che Ingestion la prepara per l'inserimento dei dati. Per visualizzare le varie fasi della creazione della pipeline, scegliete il nome della pipeline per visualizzarne la pagina delle impostazioni della pipeline. In Stato, scegliete Visualizza dettagli.

Una pipeline passa attraverso le seguenti fasi prima di essere disponibile per l'acquisizione dei dati:

  • Convalida: convalida della configurazione della pipeline. Una volta completata questa fase, tutte le convalide hanno avuto esito positivo.

  • Crea ambiente: preparazione e approvvigionamento delle risorse. Al termine di questa fase, è stato creato il nuovo ambiente di pipeline.

  • Distribuisci pipeline: distribuzione della pipeline. Una volta completata questa fase, la pipeline è stata implementata con successo.

  • Verifica dello stato della pipeline: verifica dello stato della pipeline. Una volta completata questa fase, tutti i controlli sanitari sono stati superati.

  • Abilita il traffico: consente alla pipeline di importare dati. Una volta completata questa fase, puoi iniziare a importare i dati nella pipeline.

Utilizzate il get-pipeline-change-progresscomando per controllare lo stato di una pipeline. La seguente AWS CLI richiesta verifica lo stato di una pipeline denominata: my-pipeline

aws osis get-pipeline-change-progress \ --pipeline-name my-pipeline

Risposta:

{ "ChangeProgressStatuses": { "ChangeProgressStages": [ { "Description": "Validating pipeline configuration", "LastUpdated": 1.671055851E9, "Name": "VALIDATION", "Status": "PENDING" } ], "StartTime": 1.671055851E9, "Status": "PROCESSING", "TotalNumberOfStages": 5 } }

Per tenere traccia dello stato della creazione della pipeline utilizzando l'API OpenSearch Ingestion, chiama l'operazione. GetPipelineChangeProgress