

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
<a name="creating-pipeline"></a>

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.](https://opensearch.org/docs/latest/clients/data-prepper/pipelines/) OpenSearch 

**Topics**
+ [Prerequisiti e ruolo IAM richiesto](#manage-pipeline-prerequisites)
+ [Autorizzazioni IAM richieste](#create-pipeline-permissions)
+ [Specificare la versione della pipeline](#pipeline-version)
+ [Specificare il percorso di ingestione](#pipeline-path)
+ [Creazione di pipeline](#create-pipeline)
+ [Monitoraggio dello stato della creazione della pipeline](#get-pipeline-progress)
+ [Lavorare con i progetti](pipeline-blueprint.md)

## Prerequisiti e ruolo IAM richiesto
<a name="manage-pipeline-prerequisites"></a>

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:
+ [Concedere alle pipeline OpenSearch di Amazon Ingestion l'accesso ai domini](pipeline-domain-access.md)
+ [Concedere alle pipeline OpenSearch di Amazon Ingestion l'accesso alle raccolte](pipeline-collection-access.md)

**Nota**  
Se stai scrivendo su un dominio che utilizza un controllo granulare degli accessi, devi completare alcuni passaggi aggiuntivi. Per informazioni, consulta [Mappa il ruolo della pipeline (solo per i domini che utilizzano un controllo di accesso granulare)](pipeline-domain-access.md#pipeline-access-domain-fgac).

## Autorizzazioni IAM richieste
<a name="create-pipeline-permissions"></a>

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:CreateRole`e `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](pipeline-domain-access.md#pipeline-access-configure) 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::111122223333:role/pipeline-role"
         ],
         "Effect":"Allow",
         "Action":[
            "iam:CreateRole",
            "iam:AttachRolePolicy",
            "iam:PassRole"
         ]
      }
   ]
}
```

------

OpenSearch [Ingestion include anche un'autorizzazione chiamata`osis:Ingest`, necessaria per inviare richieste firmate alla pipeline utilizzando Signature Version 4.](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) Per ulteriori informazioni, consulta [Creazione di un ruolo di importazione](configure-client.md#configure-client-auth).

**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.](pipeline-security.md#pipeline-vpc-slr)

Per ulteriori informazioni su ciascuna autorizzazione, vedere [Azioni, risorse e chiavi di condizione per l' OpenSearch ingestione](https://docs.aws.amazon.com/service-authorization/latest/reference/list_opensearchingestionservice.html) nel *Service* Authorization Reference.

## Specificare la versione della pipeline
<a name="pipeline-version"></a>

Quando crei una pipeline utilizzando l'editor di configurazione, devi specificare la [versione principale di Data Prepper](https://github.com/opensearch-project/data-prepper/releases) che verrà eseguita dalla pipeline. Per specificare la versione, includete l'`version`opzione nella configurazione della pipeline:

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

Quando scegliete **Crea**, 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.1`version: "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](ingestion.md#ingestion-supported-versions).

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](update-pipeline.md#pipeline-bg) OpenSearch Ingestion non può modificare la versione principale della pipeline a meno che non aggiorni esplicitamente l'`version`opzione all'interno della configurazione della pipeline.

## Specificare il percorso di ingestione
<a name="pipeline-path"></a>

Per le fonti basate su pull come [OTel trace](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sources/otel-trace/) e [OTel metrics](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sources/otel-metrics-source/), 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.\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/images/ingestion-path.png)


Quando si [inseriscono dati](configure-client.md) 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 '-', '\$1', ' . '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
<a name="create-pipeline"></a>

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

### Console
<a name="create-pipeline-console"></a>

**Per creare una pipeline, accedi alla console di Amazon OpenSearch Service su [https://console.aws.amazon.com/aos/osis/home](https://console.aws.amazon.com/aos/osis/home#osis/ingestion-pipelines) e scegli Create 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](pipeline-blueprint.md).

**Scegli Seleziona blueprint.**

#### Configura la fonte
<a name="create-pipeline-console-source"></a>

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](configure-client.md).

1. 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](pipeline-config-reference.md)

1. 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:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/opensearch-service/latest/developerguide/creating-pipeline.html)

   Per ulteriori informazioni, consulta [Configurazione dell'accesso VPC per le pipeline di Amazon Ingestion OpenSearch](pipeline-security.md).

1. Scegli **Next (Successivo)**.

#### Configura il processore
<a name="create-pipeline-console-processor"></a>

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](pipeline-config-reference.md)

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.](https://opensearch.org/docs/latest/data-prepper/pipelines/pipelines/#conditional-routing)
+ **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
<a name="create-pipeline-console-sink"></a>

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 | Description | 
| --- | --- | 
| 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](pipeline-collection-access.md).  | 
| 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](https://opensearch.org/docs/latest/im-plugin/index-templates/).  | 
| Abilita DLQ |  Configura una dead-letter queue (DLQ) di Amazon S3 per la pipeline. Per ulteriori informazioni, consulta [Code di lettere morte](osis-features-overview.md#osis-features-dlq).  | 
| Impostazioni aggiuntive |  Configura le opzioni avanzate per il OpenSearch lavandino. Per ulteriori informazioni, consulta [Opzioni di configurazione](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sinks/opensearch/#configuration-options) 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](configure-client-s3.md#s3-destination).

Scegli **Next (Successivo)**.

#### Configura la pipeline
<a name="create-console-pipeline"></a>

Configurate le seguenti impostazioni aggiuntive della pipeline:


| Impostazione | Description | 
| --- | --- | 
| 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](osis-features-overview.md#persistent-buffering).  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](ingestion-scaling.md).  | 
| 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](pipeline-security-overview.md).  | 
| Tag |  Aggiungi uno o più tag alla tua pipeline. Per ulteriori informazioni, consulta [Etichettatura delle pipeline di Amazon OpenSearch Ingestion](tag-pipeline.md).  | 
| 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](monitoring-pipeline-logs.md). | 

**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 dati`Active`.

### AWS CLI
<a name="create-pipeline-cli"></a>

Il comando [create-pipeline accetta la configurazione della pipeline](https://docs.aws.amazon.com/cli/latest/reference/osis/create-pipeline.html) 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 dati`Active`. Per controllare lo stato della pipeline, utilizzate il comando. [GetPipeline](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_GetPipeline.html)

### OpenSearch API di ingestione
<a name="create-pipeline-api"></a>

Per creare una pipeline OpenSearch di ingestione utilizzando l'API Ingestion, chiama l' OpenSearch operazione. [CreatePipeline](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_CreatePipeline.html)

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](configure-client.md).

## Monitoraggio dello stato della creazione della pipeline
<a name="get-pipeline-progress"></a>

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

### Console
<a name="get-pipeline-progress-console"></a>

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.

### CLI
<a name="get-pipeline-progress-cli"></a>

Utilizzate il [get-pipeline-change-progress](https://docs.aws.amazon.com/cli/latest/reference/osis/get-pipeline-change-progress.html)comando 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
   }
}
```

### OpenSearch API di ingestione
<a name="get-pipeline-progress-api"></a>

Per tenere traccia dello stato della creazione della pipeline utilizzando l'API OpenSearch Ingestion, chiama l'operazione. [GetPipelineChangeProgress](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_GetPipelineChangeProgress.html)