

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Criação de pipelines OpenSearch de ingestão da Amazon
<a name="creating-pipeline"></a>

Um *pipeline* é o mecanismo que o Amazon OpenSearch Ingeston usa para mover dados da *fonte* (de onde vêm os dados) para o *coletor* (para onde vão os dados). Na OpenSearch ingestão, o coletor sempre será um único domínio do Amazon OpenSearch Service, enquanto a fonte de seus dados pode ser clientes como Amazon S3, Fluent Bit ou Collector. OpenTelemetry 

Para obter mais informações, consulte [Pipelines](https://opensearch.org/docs/latest/clients/data-prepper/pipelines/) na OpenSearch documentação.

**Topics**
+ [Pré-requisitos e perfil do IAM necessário](#manage-pipeline-prerequisites)
+ [Permissões obrigatórias do IAM](#create-pipeline-permissions)
+ [Como especificar a versão do pipeline](#pipeline-version)
+ [Como especificar o caminho de ingestão](#pipeline-path)
+ [Como criar pipelines](#create-pipeline)
+ [Acompanhar o status da criação do pipeline](#get-pipeline-progress)
+ [Trabalhar com esquemas](pipeline-blueprint.md)

## Pré-requisitos e perfil do IAM necessário
<a name="manage-pipeline-prerequisites"></a>

Para criar um pipeline OpenSearch de ingestão, você deve ter os seguintes recursos:
+ Uma função do IAM, chamada de *função de pipeline*, que o OpenSearch Ingestion assume para gravar no coletor. Você pode criar essa função com antecedência ou fazer com que o OpenSearch Inestion a crie automaticamente enquanto você cria o pipeline.
+ Um domínio OpenSearch de serviço ou coleção OpenSearch sem servidor para atuar como coletor. Se você estiver gravando em um domínio, ele deverá estar executando a OpenSearch versão 1.0 ou posterior, ou o Elasticsearch 7.4 ou posterior. O coletor deve ter uma política de acesso que conceda as permissões apropriadas à sua perfil de pipeline do IAM.

Para obter instruções sobre como criar esses recursos, consulte os tópicos a seguir:
+ [Concedendo acesso aos pipelines OpenSearch do Amazon Ingestion aos domínios](pipeline-domain-access.md)
+ [Concedendo aos pipelines do Amazon OpenSearch Ingestion acesso às coleções](pipeline-collection-access.md)

**nota**  
Se você estiver escrevendo para um domínio que usa controle de acesso detalhado, há etapas extras que você precisa concluir. Consulte [Mapear o perfil de pipeline (somente para domínios que usam o controle de acesso refinado)](pipeline-domain-access.md#pipeline-access-domain-fgac).

## Permissões obrigatórias do IAM
<a name="create-pipeline-permissions"></a>

OpenSearch A ingestão usa as seguintes permissões do IAM para criar pipelines:
+ `osis:CreatePipeline` – crie um pipeline.
+ `osis:ValidatePipeline` – verifica se a configuração do pipeline é válida.
+ `iam:CreateRole`e `iam:AttachPolicy` — Faça com que o OpenSearch Ingestion crie automaticamente a função de pipeline para você.
+ `iam:PassRole`— passe a função do pipeline para o OpenSearch Ingestion para que ele possa gravar dados no domínio. Essa permissão deverá ser o [recurso de perfil do pipeline](pipeline-domain-access.md#pipeline-access-configure) ou simplesmente `*` se você planejar usar perfis diferentes em cada pipeline.

Por exemplo, a política a seguir concede permissão para criar um 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 A ingestão também inclui uma permissão chamada`osis:Ingest`, que é necessária para enviar solicitações assinadas ao pipeline usando o [Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). Para obter mais informações, consulte [Criação de uma função de ingestão](configure-client.md#configure-client-auth).

**nota**  
Além disso, o primeiro usuário a criar um pipeline em uma conta precisa ter permissões para a ação `iam:CreateServiceLinkedRole`. Para saber mais, consulte [Recurso de perfil de pipeline](pipeline-security.md#pipeline-vpc-slr).

Para obter mais informações sobre cada permissão, consulte [Ações, recursos e chaves de condição para OpenSearch ingestão](https://docs.aws.amazon.com/service-authorization/latest/reference/list_opensearchingestionservice.html) na *Referência de autorização de serviço*.

## Como especificar a versão do pipeline
<a name="pipeline-version"></a>

Ao configurar um pipeline usando o editor de configuração. você deve especificar a [versão principal do Data Prepper](https://github.com/opensearch-project/data-prepper/releases) que o pipeline executará. Para especificar a versão, inclua a opção `version` na configuração do pipeline:

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

Quando você escolhe **Criar**, a OpenSearch ingestão determina a última versão *secundária* disponível da versão principal especificada e provisiona o pipeline com essa versão. Por exemplo, se você especificar `version: "2"` e a versão mais recente compatível do Data Prepper for 2.1.1, o OpenSearch Ingestion provisionará seu pipeline com a versão 2.1.1. Não exibimos publicamente a versão secundária que seu pipeline está executando.

Para atualizar seu pipeline quando uma nova versão principal do Data Prepper estiver disponível, edite a configuração do pipeline e especifique a nova versão. Você não pode fazer o downgrade de um pipeline para uma versão anterior.

**nota**  
OpenSearch O Inestion não oferece suporte imediato às novas versões do Data Prepper assim que elas são lançadas. Haverá algum atraso entre o momento em que uma nova versão estará disponível publicamente e o momento em que ela será suportada no OpenSearch Ingestion. Além disso, o OpenSearch Inestion pode explicitamente não oferecer suporte total a determinadas versões principais ou secundárias. Para obter uma lista abrangente, consulte [Versões do Data Prepper compatíveis](ingestion.md#ingestion-supported-versions).

Sempre que você fizer uma alteração no pipeline que inicia uma blue/green implantação, o OpenSearch Ingestion pode atualizá-la para a versão secundária mais recente da versão principal que está atualmente configurada para o pipeline. Para obter mais informações, consulte[Implantações azul/verde para atualizações de pipeline](update-pipeline.md#pipeline-bg). OpenSearch A ingestão não pode alterar a versão principal do seu pipeline, a menos que você atualize explicitamente a `version` opção na configuração do pipeline.

## Como especificar o caminho de ingestão
<a name="pipeline-path"></a>

Para fontes baseadas em pull, como [OTel rastreamento](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sources/otel-trace/) e [OTel métricas](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sources/otel-metrics-source/), a OpenSearch ingestão requer a `path` opção adicional na configuração da fonte. O caminho é uma string como `/log/ingest`, que representa o caminho do URI para ingestão. Esse caminho define o URI que você usa para enviar dados para o pipeline. 

Por exemplo, digamos que você especifique o seguinte caminho para um pipeline com uma origem HTTP:

![Campo de caminho contendo o valor de exemplo /my/test_path.](http://docs.aws.amazon.com/pt_br/opensearch-service/latest/developerguide/images/ingestion-path.png)


Ao [ingerir dados](configure-client.md) no pipeline, você deve especificar o seguinte endpoint na configuração do seu cliente:. `https://{{pipeline-name-abc123}}.{{us-west-2}}.osis.amazonaws.com/{{my}}/{{test_path}}`

O caminho deve começar com uma barra (/) e pode conter os caracteres especiais '-', '\_', ' . 'e'/', bem como o placeholder `${pipelineName}`. Se você usar `${pipelineName}` (como`/${pipelineName}/test_path`), o OpenSearch Inestion substituirá a variável pelo nome do subpipeline associado.

## Como criar pipelines
<a name="create-pipeline"></a>

Esta seção descreve como criar pipelines OpenSearch de ingestão usando o console OpenSearch de serviço e o. AWS CLI

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

**Para criar um pipeline, faça login no console do Amazon OpenSearch Service em [https://console.aws.amazon.com/aos/osis/home](https://console.aws.amazon.com/aos/osis/home#osis/ingestion-pipelines) e escolha Create pipeline.** 

Selecione um pipeline em branco ou escolha um esquema de configuração. Os esquemas incluem um pipeline pré-configurado para vários casos de uso comuns. Para saber mais, consulte [Trabalhar com esquemas](pipeline-blueprint.md).

Escolha **Selecionar esquema**.

#### Configuração da fonte
<a name="create-pipeline-console-source"></a>

1. Se você estiver começando com um pipeline em branco, selecione uma origem no menu suspenso. As fontes disponíveis podem incluir outras Serviços da AWS fontes ou HTTP. OpenTelemetry Para obter mais informações, consulte [Integração dos pipelines OpenSearch de ingestão da Amazon com outros serviços e aplicativos](configure-client.md).

1. Dependendo da origem escolhida, defina configurações adicionais para a origem. Por exemplo, para usar o Amazon S3 como origem, você deve especificar a URL da fila do Amazon SQS das mensagens recebidas pelo pipeline. Para obter uma lista dos plug-ins de origem compatíveis e os links para sua documentação, consulte [Plugins e opções compatíveis para pipelines OpenSearch de ingestão da Amazon](pipeline-config-reference.md).

1. Para algumas origens, você deve especificar as **Opções de rede de origem**. Escolha entre **Acesso de VPC** ou **Acesso público**. Se você selecionar **Acesso público**, vá para a próxima etapa. Se você escolher **Acesso à VPC**, defina as seguintes configurações:    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/opensearch-service/latest/developerguide/creating-pipeline.html)

   Para saber mais, consulte [Configurando o acesso à VPC para pipelines de ingestão da Amazon OpenSearch](pipeline-security.md).

1. Escolha **Próximo**.

#### Configurar processador
<a name="create-pipeline-console-processor"></a>

Adicione um ou mais processadores ao pipeline. Os processadores são componentes dentro de um subpipeline que permitem filtrar, transformar e enriquecer eventos antes de publicar registros no coletor de domínios ou coleções. Para obter uma lista dos processadores compatíveis e os links para sua documentação, consulte [Plugins e opções compatíveis para pipelines OpenSearch de ingestão da Amazon](pipeline-config-reference.md).

Você pode selecionar **Ações** e adicionar o seguinte:
+ **Roteamento condicional**: encaminha eventos para diferentes coletores com base em condições específicas. Para saber mais, consulte [Roteamento condicional](https://opensearch.org/docs/latest/data-prepper/pipelines/pipelines/#conditional-routing).
+ **Subpipeline**: cada subpipeline é uma combinação de uma origem, zero ou mais processadores e um coletor. Apenas um único subpipeline pode ter uma origem externa. Todos os outros devem ter origens que sejam outros subpipelines dentro da configuração geral do pipeline. Um único arquivo de configuração de pipeline pode conter de 1 a 10 subpipelines.

Escolha **Próximo**.

#### Configurar coletor
<a name="create-pipeline-console-sink"></a>

Selecione o destino onde o pipeline publica registros. Cada subpipeline deve conter pelo menos um coletor. É possível adicionar até dez coletores a um pipeline.

Para OpenSearch coletores, configure os seguintes campos:


| Configuração | Description | 
| --- | --- | 
| Tamanho da política de rede(Somente coletores com tecnologia sem servidor) | Se você selecionou uma coleção OpenSearch sem servidor, insira um nome de **política de rede**. OpenSearch A ingestão cria a política, se ela não existir, ou a atualiza com uma regra que concede acesso ao VPC endpoint que conecta o pipeline e a coleção. Para obter mais informações, consulte [Concedendo aos pipelines do Amazon OpenSearch Ingestion acesso às coleções](pipeline-collection-access.md). | 
| Nome do índice | O nome do índice para o qual o pipeline envia dados. OpenSearch A ingestão cria esse índice se ele ainda não existir. | 
| Opções de mapeamento de índice | Escolha como o pipeline armazena e indexa os documentos e seus campos no OpenSearch coletor. Se você selecionar **Mapeamento dinâmico**, OpenSearch adicionará campos automaticamente ao indexar um documento. Se você selecionar **Personalizar mapeamento**, insira um modelo de mapeamento de índice. Para saber mais, consulte [Modelos de índice](https://opensearch.org/docs/latest/im-plugin/index-templates/). | 
| Habilitar DLQ | Configure uma fila de mensagens não entregues (DLQ) do Amazon S3 para o pipeline. Para saber mais, consulte [Filas de mensagens não entregues](osis-features-overview.md#osis-features-dlq). | 
| Configurações adicionais | Configure opções avançadas para o OpenSearch coletor. Para saber mais, consulte [Configuration options](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sinks/opensearch/#configuration-options) na documentação da Data Prepper DLQ. | 

Para adicionar um coletor do Amazon S3, escolha **Adicionar coletor** e **Amazon S3**. Para saber mais, consulte [Amazon S3 como destino](configure-client-s3.md#s3-destination).

Escolha **Próximo**.

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

Defina as seguintes configurações adicionais de pipeline:


| Configuração | Description | 
| --- | --- | 
| Nome do pipeline | Insira um nome exclusivo para o pipeline. | 
| Buffer persistente | Um buffer persistente armazena os dados em um buffer baseado em disco em várias zonas de disponibilidade. Para saber mais, consulte [Armazenamento em buffer persistente](osis-features-overview.md#persistent-buffering). <br />Se você habilitar o buffer persistente, selecione a chave do AWS Key Management Service para criptografar os dados do buffer.  | 
| Capacidade do pipeline | A capacidade mínima e máxima do pipeline, em Unidades de OpenSearch computação de ingestão ()OCUs. Para obter mais informações, consulte [Escalando pipelines na Amazon Ingestion OpenSearch](ingestion-scaling.md). | 
| Perfis do pipeline | O perfil do IAM que fornece as permissões necessárias para o pipeline gravar no destino e ler origens baseadas em pull. Você mesmo pode criar a função ou fazer com que o OpenSearch Inestion a crie para você com base no caso de uso selecionado. <br />Para obter mais informações, consulte [Configurando funções e usuários na Amazon OpenSearch Ingestion](pipeline-security-overview.md). | 
| Tags | Adicione uma ou mais tags ao pipeline. Para saber mais, consulte [Marcação de pipelines de OpenSearch ingestão da Amazon](tag-pipeline.md). | 
| Opções de publicação de log | Habilite a publicação de registros do pipeline no Amazon CloudWatch Logs. Recomendamos que você habilite a publicação de logs para poder solucionar problemas de pipeline com mais facilidade. Para saber mais, consulte [Monitoramento dos logs de pipeline](monitoring-pipeline-logs.md). | 

Escolha **Avançar**, revise a configuração do pipeline e escolha **Criar pipeline**.

OpenSearch A ingestão executa um processo assíncrono para criar o pipeline. Quando o status do pipeline for `Active`, você pode começar a ingerir dados.

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

O comando [create-pipeline](https://docs.aws.amazon.com/cli/latest/reference/osis/create-pipeline.html). aceita a configuração do pipeline como uma string ou como um arquivo .yaml ou .json. Se você fornecer a configuração como uma string, cada nova linha deverá ser escapada com `\n`. Por exemplo, `"log-pipeline:\n source:\n http:\n processor:\n - grok:\n ...`.

O exemplo de comando a seguir cria um pipeline com a seguinte configuração:
+ Mínimo de 4 de ingestão OCUs, máximo de 10 de ingestão OCUs
+ Provisionado em uma nuvem privada virtual (VPC)
+ Publicação de logs habilitada

```
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 A ingestão executa um processo assíncrono para criar o pipeline. Quando o status do pipeline for `Active`, você pode começar a ingerir dados. Para verificar o status do pipeline, use o [GetPipeline](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_GetPipeline.html)comando.

### OpenSearch API de ingestão
<a name="create-pipeline-api"></a>

Para criar um pipeline OpenSearch de ingestão usando a API OpenSearch de ingestão, chame a [CreatePipeline](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_CreatePipeline.html)operação.

Depois que seu pipeline for criado com sucesso, você poderá configurar seu cliente e começar a ingerir dados em seu domínio OpenSearch de serviço. Para obter mais informações, consulte [Integração dos pipelines OpenSearch de ingestão da Amazon com outros serviços e aplicativos](configure-client.md).

## Acompanhar o status da criação do pipeline
<a name="get-pipeline-progress"></a>

Você pode acompanhar o status de um pipeline à medida que o OpenSearch Inestion o provisiona e o prepara para ingerir dados.

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

Depois de criar inicialmente um pipeline, ele passa por vários estágios à medida que o OpenSearch Inestion o prepara para ingerir dados. Para visualizar os vários estágios da criação do pipeline, escolha o nome do pipeline para ver sua página **Configurações do pipeline**. Em **Status**, escolha **Exibir detalhes**.

Um pipeline passa pelos seguintes estágios antes de estar disponível para ingestão de dados:
+ **Validação**: valida a configuração do pipeline. Quando esse estágio estiver concluído, todas as validações serão bem-sucedidas.
+ **Criação de um ambiente**: prepara e provisiona recursos Quando esse estágio estiver concluído, o novo ambiente de pipeline será criado.
+ **Implantação do pipeline**: implanta o pipeline. Quando esse estágio estiver concluído, o pipeline foi implantado com sucesso.
+ **Verificação da integridade do pipeline**: verifica a integridade da pipeline. Quando esse estágio estiver concluído, todas as verificações de integridade serão aprovadas.
+ **Habilitação de tráfego**: permite que o pipeline consuma dados. Quando este estágio for concluído, você pode começar a ingerir dados no pipeline.

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

Use o [get-pipeline-change-progress](https://docs.aws.amazon.com/cli/latest/reference/osis/get-pipeline-change-progress.html)comando para verificar o status de um pipeline. A AWS CLI solicitação a seguir verifica o status de um pipeline chamado`my-pipeline`:

```
aws osis get-pipeline-change-progress \
    --pipeline-name {{my-pipeline}}
```

**Resposta:**

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

### OpenSearch API de ingestão
<a name="get-pipeline-progress-api"></a>

Para acompanhar o status da criação do pipeline usando a API OpenSearch de ingestão, chame a [GetPipelineChangeProgress](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_GetPipelineChangeProgress.html)operação.