

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Creación de canalizaciones OpenSearch de Amazon Ingestion
<a name="creating-pipeline"></a>

Una *canalización* es el mecanismo que Amazon OpenSearch Ingestion utiliza para mover los datos desde su *origen* (de donde provienen los datos) hasta su receptor *(*adonde van los datos). En OpenSearch Ingestion, el receptor siempre será un único dominio de Amazon OpenSearch Service, mientras que la fuente de los datos podrían ser clientes como Amazon S3, Fluent Bit o OpenTelemetry Collector.

Para obtener más información, consulte [Pipelines](https://opensearch.org/docs/latest/clients/data-prepper/pipelines/) en la OpenSearch documentación.

**Topics**
+ [Requisitos previos y rol de IAM requerido](#manage-pipeline-prerequisites)
+ [Permisos de IAM necesarios](#create-pipeline-permissions)
+ [Especificar la versión de la canalización](#pipeline-version)
+ [Especificación de la ruta de ingesta](#pipeline-path)
+ [Creación de canalizaciones](#create-pipeline)
+ [Seguimiento del estado de creación de la canalización](#get-pipeline-progress)
+ [Uso de esquemas](pipeline-blueprint.md)

## Requisitos previos y rol de IAM requerido
<a name="manage-pipeline-prerequisites"></a>

Para crear una canalización OpenSearch de ingestión, debes disponer de los siguientes recursos:
+ Una función de IAM, denominada *función de canalización*, que OpenSearch Ingestión asume para poder trabajar en el receptor. Puedes crear esta función con antelación o puedes hacer que OpenSearch Ingestion la cree automáticamente mientras creas la canalización.
+ Un dominio OpenSearch de servicio o una colección OpenSearch sin servidor que sirva de receptor. Si escribes en un dominio, debe ejecutar la OpenSearch versión 1.0 o una versión posterior, o Elasticsearch 7.4 o una versión posterior. El receptor debe tener una política de acceso que conceda los permisos adecuados a su rol de canalización de IAM.

Si desea obtener instrucciones para crear estos recursos, consulte los siguientes temas:
+ [Otorgar a Amazon OpenSearch Ingestion pipelines acceso a los dominios](pipeline-domain-access.md)
+ [Otorgar a Amazon OpenSearch Ingestion pipelines acceso a las colecciones](pipeline-collection-access.md)

**nota**  
Si escribe en un dominio que usa un control de acceso detallado, debe completar algunos pasos adicionales. Consulte [Asignar el rol de canalización (solo para dominios que utilicen un control de acceso detallado)](pipeline-domain-access.md#pipeline-access-domain-fgac).

## Permisos de IAM necesarios
<a name="create-pipeline-permissions"></a>

OpenSearch Ingestion usa los siguientes permisos de IAM para crear canalizaciones:
+ `osis:CreatePipeline`: Crear una canalización.
+ `osis:ValidatePipeline`: Comprobar si la configuración de la canalización es válida.
+ `iam:CreateRole`y`iam:AttachPolicy`: haga que OpenSearch Ingestion cree automáticamente el rol de canalización por usted.
+ `iam:PassRole`— Transfiera la función de canalización a OpenSearch Ingestion para que pueda escribir datos en el dominio. Este permiso debe estar en el [recurso de rol de canalización](pipeline-domain-access.md#pipeline-access-configure), o simplemente coloque `*` si planea usar diferentes roles en cada canalización.

Por ejemplo, la siguiente política concede permiso para crear una canalización:

------
#### [ 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 también incluye un permiso denominado`osis:Ingest`, que es necesario para enviar solicitudes firmadas a la canalización mediante la [versión 4 de Signature](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). Para obtener más información, consulte [Creación de un rol de ingesta](configure-client.md#configure-client-auth).

**nota**  
Además, el primer usuario que cree una canalización en una cuenta debe tener permisos para realizar la acción `iam:CreateServiceLinkedRole`. Para más información, consulte [recurso de rol de canalización](pipeline-security.md#pipeline-vpc-slr).

Para obtener más información sobre cada permiso, consulte [las acciones, los recursos y las claves de condición de la OpenSearch ingestión](https://docs.aws.amazon.com/service-authorization/latest/reference/list_opensearchingestionservice.html) en la Referencia de *autorización de servicios*.

## Especificar la versión de la canalización
<a name="pipeline-version"></a>

Al crear una canalización con el editor de configuración, debe especificar la [versión principal de Data Prepper](https://github.com/opensearch-project/data-prepper/releases) en la que se ejecutará la canalización. Para especificar la versión, incluya la opción de `version` en la configuración de la canalización:

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

Al elegir **Crear**, OpenSearch Ingestion determina la última versión *secundaria* disponible de la versión principal que especifique y aprovisiona la canalización con esa versión. Por ejemplo, si lo especificas `version: "2"` y la última versión compatible de Data Prepper es la 2.1.1, OpenSearch Ingestion aprovisiona tu canalización con la versión 2.1.1. No mostramos públicamente la versión secundaria que está ejecutando la canalización.

Para actualizar la canalización cuando haya disponible una nueva versión principal de Data Prepper, edite la configuración de la canalización y especifique la nueva versión. No puede cambiar una canalización a una versión anterior.

**nota**  
OpenSearch Ingestion no ofrece soporte inmediato a las nuevas versiones de Data Prepper tan pronto como se publican. Habrá cierto intervalo entre el momento en que una nueva versión esté disponible públicamente y el momento en OpenSearch que Ingestion la admita. Además, es posible que OpenSearch Ingestion no admita por completo determinadas versiones principales o secundarias de forma explícita. Para obtener una lista completa, consulte [Versiones de Data Prepper admitidas](ingestion.md#ingestion-supported-versions).

Cada vez que realices un cambio en la canalización que inicie una blue/green implementación, OpenSearch Ingestion puede actualizarla a la última versión secundaria de la versión principal que esté configurada actualmente para la canalización. Para obtener más información, consulte. [Implementaciones azul/verde para actualizaciones de canalización](update-pipeline.md#pipeline-bg) OpenSearch La ingestión no puede cambiar la versión principal de tu canalización a menos que actualices explícitamente la `version` opción en la configuración de la canalización.

## Especificación de la ruta de ingesta
<a name="pipeline-path"></a>

Para las fuentes basadas en la extracción, como el [OTel rastreo](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sources/otel-trace/) y [OTel las métricas](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sources/otel-metrics-source/), OpenSearch Ingestion requiere la `path` opción adicional en la configuración de la fuente. La ruta es una cadena, por ejemplo`/log/ingest`, que representa la ruta del URI para la ingesta. Esta ruta define el URI que usa para enviar datos a la canalización. 

Por ejemplo, supongamos que especifica la siguiente ruta para una canalización con un origen HTTP:

![\[Input field for specifying the path for ingestion, with an example path entered.\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/ingestion-path.png)


Al introducir [datos de ingesta](configure-client.md) en la canalización, debe especificar el siguiente punto de conexión en la configuración de su cliente: `https://pipeline-name-abc123.us-west-2.osis.amazonaws.com/my/test_path`.

La ruta debe empezar con una barra (/) y puede contener los caracteres especiales '-', '\$1', '.' y '/', así como el marcador de posición `${pipelineName}`. Si usas `${pipelineName}` (por ejemplo`/${pipelineName}/test_path`), OpenSearch Ingestion reemplaza la variable por el nombre de la subcanalización asociada.

## Creación de canalizaciones
<a name="create-pipeline"></a>

En esta sección se describe cómo crear canalizaciones OpenSearch de ingestión mediante la consola de OpenSearch servicio y el. AWS CLI

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

Para crear una canalización, inicia sesión en la consola de Amazon OpenSearch Service en [https://console.aws.amazon.com/aos/osis/home](https://console.aws.amazon.com/aos/osis/home#osis/ingestion-pipelines) y selecciona **Create** pipeline. 

Seleccione una canalización en blanco o elija un esquema de configuración. Los esquemas incluyen una canalización preconfigurada para una variedad de casos de uso comunes. Para obtener más información, consulte [Uso de esquemas](pipeline-blueprint.md).

Elija **Seleccionar esquema**.

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

1. Si parte de una canalización vacía, seleccione un origen del menú desplegable. Las fuentes disponibles pueden incluir otras Servicios de AWS o OpenTelemetry HTTP. Para obtener más información, consulte [Integración de las canalizaciones OpenSearch de Amazon Ingestion con otros servicios y aplicaciones](configure-client.md).

1. En función del origen que elija, configure los ajustes adicionales correspondientes. Por ejemplo, para utilizar Amazon S3 como origen, debe especificar la URL de la cola de Amazon SQS de la canalización que recibe los mensajes. Para obtener una lista de complementos de origen compatibles y enlaces a su documentación, consulte [Plugins y opciones compatibles para las canalizaciones de Amazon OpenSearch Ingestion](pipeline-config-reference.md).

1. Para algunos orígenes, debe especificar **Opciones de red de origen**. Seleccione **Acceso a VPC** o **Acceso público**. Si elige **Acceso público**, vaya al siguiente paso. Si elige **Acceso a la VCP**, configure los siguientes ajustes:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/creating-pipeline.html)

   Para obtener más información, consulte [Configuración del acceso a la VPC para las canalizaciones de Amazon Ingestion OpenSearch](pipeline-security.md).

1. Elija **Siguiente**.

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

Agregue uno o más procesadores a su canalización. Los procesadores son componentes de una subcanalización que permiten filtrar, transformar y enriquecer los eventos antes de publicar los registros en el dominio o en el receptor de la colección. Para obtener una lista de los procesadores compatibles y los enlaces a su documentación, consulte [Plugins y opciones compatibles para las canalizaciones de Amazon OpenSearch Ingestion](pipeline-config-reference.md).

Puede elegir **Acciones** y agregar lo siguiente:
+ **Enrutamiento condicional**: enruta los eventos a diferentes receptores en función de condiciones específicas. Para obtener más información, consulte [Enrutamiento condicional](https://opensearch.org/docs/latest/data-prepper/pipelines/pipelines/#conditional-routing).
+ **Subcanalización **: cada subcanalización es una combinación de un solo origen, cero o más procesadores y un único receptor. Solo una subcanalización puede tener un origen externo. Todas las demás deben tener orígenes que sean otras subcanalizaciones dentro de la configuración general de la canalización. Una única configuración de canalización puede contener de 1 a 10 subcanalizaciones.

Elija **Siguiente**.

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

Seleccione el destino en el que la canalización publica los registros. Cada subcanalización debe contener al menos un receptor. Puede agregar un máximo de 10 receptores a una canalización.

Para los OpenSearch sumideros, configura los siguientes campos:


| Opción | Description (Descripción) | 
| --- | --- | 
| Nombre de la política de red(Solo receptores sin servidor) |  Si seleccionó una colección OpenSearch sin servidor, introduzca un nombre de **política de red**. OpenSearch La ingestión crea la política si no existe o la actualiza con una regla que concede acceso al punto final de la VPC que conecta la canalización y la colección. Para obtener más información, consulte [Otorgar a Amazon OpenSearch Ingestion pipelines acceso a las colecciones](pipeline-collection-access.md).  | 
| Nombre del índice |  El nombre del índice al que la canalización envía los datos. OpenSearch La ingestión crea este índice si aún no existe.  | 
| Opciones de asignación de índices |  Elija la forma en que la canalización almacena e indexa los documentos y sus campos en el OpenSearch colector. Si selecciona el **mapeo dinámico**, OpenSearch agrega campos automáticamente al indexar un documento. Si selecciona **Personalizar asignación**, ingrese una plantilla de asignación de índices. Para más información, consulte [Plantillas de índices](https://opensearch.org/docs/latest/im-plugin/index-templates/).  | 
| Habilite DLQ |  Configure una cola de mensajes fallidos (DLQ) de Amazon S3 para la canalización. Para obtener más información, consulte [Colas de mensajes fallidos](osis-features-overview.md#osis-features-dlq).  | 
| Ajustes adicionales |  Configure las opciones avanzadas para el OpenSearch fregadero. Para obtener más información, consulte [Opciones de configuración](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sinks/opensearch/#configuration-options) en la documentación de Data Prepper.  | 

Para agregar un receptor de Amazon S3, seleccione **Agregar receptor** y **Amazon S3**. Para obtener más información, consulte [Amazon S3 como destino](configure-client-s3.md#s3-destination).

Elija **Siguiente**.

#### Configuración de la canalización
<a name="create-console-pipeline"></a>

Configure los siguientes ajustes de canalización adicional:


| Opción | Description (Descripción) | 
| --- | --- | 
| Nombre de la canalización |  Un nombre único para la canalización.  | 
| Búfer persistente |  Un búfer persistente almacena los datos en un búfer basado en disco en varias zonas de disponibilidad. Para obtener más información, consulte [Almacenamiento en búfer persistente](osis-features-overview.md#persistent-buffering).  Si habilita el búfer persistente, seleccione la clave AWS Key Management Service para cifrar los datos del búfer.   | 
| Capacidad de las canalizaciones |  La capacidad mínima y máxima de la canalización, en unidades de OpenSearch cómputo de ingestión (OCUs). Para obtener más información, consulte [Escalar las canalizaciones en Amazon OpenSearch Ingestion](ingestion-scaling.md).  | 
| Rol de canalización |  El rol de IAM que proporciona los permisos necesarios para que la canalización escriba en el receptor y lea desde orígenes basados en extracciones. Puede crear el rol usted mismo o hacer que OpenSearch Ingestion lo cree por usted en función del caso de uso que haya seleccionado.  Para obtener más información, consulte [Configuración de roles y usuarios en Amazon OpenSearch Ingestion](pipeline-security-overview.md).  | 
| Etiquetas |  Agregue una o más etiquetas a su canalización. Para obtener más información, consulte [Etiquetado de las canalizaciones de Amazon OpenSearch Ingestion](tag-pipeline.md).  | 
| Opciones de publicación de registros | Habilita la publicación de registros de canalización en Amazon CloudWatch Logs. Le recomendamos que habilite la publicación de registros para poder solucionar más fácilmente los problemas de la canalización. Para obtener más información, consulte [Monitoreo de registros de canalización](monitoring-pipeline-logs.md). | 

Elija **Siguiente**, revise la configuración de la canalización y elija **Crear canalización**.

OpenSearch Ingestion ejecuta un proceso asíncrono para crear la canalización. Una vez que el estado de la canalización sea `Active`, puede empezar a incorporar datos.

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

El comando [create-pipeline](https://docs.aws.amazon.com/cli/latest/reference/osis/create-pipeline.html) acepta la configuración de la canalización como una cadena o dentro de un archivo .yaml o .json. Si proporciona la configuración en forma de cadena, cada nueva línea debe ir acompañada de secuencias de escape `\n`. Por ejemplo, `"log-pipeline:\n source:\n http:\n processor:\n - grok:\n ...`

El siguiente comando de ejemplo crea una canalización con la siguiente configuración:
+ Mínimo 4 ingestas, máximo 10 ingestas OCUs OCUs
+ Aprovisionada en una nube privada virtual (VPC)
+ Publicación de registros 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 La ingestión ejecuta un proceso asíncrono para crear la canalización. Una vez que el estado de la canalización sea `Active`, puede empezar a incorporar datos. Para comprobar el estado de la canalización, usa el comando. [GetPipeline](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_GetPipeline.html)

### OpenSearch API de ingestión
<a name="create-pipeline-api"></a>

Para crear una canalización OpenSearch de ingestión mediante la API de OpenSearch ingestión, llama a la operación. [CreatePipeline](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_CreatePipeline.html)

Una vez que la canalización se haya creado correctamente, puede configurar su cliente y empezar a ingerir datos en su OpenSearch dominio de servicio. Para obtener más información, consulte [Integración de las canalizaciones OpenSearch de Amazon Ingestion con otros servicios y aplicaciones](configure-client.md).

## Seguimiento del estado de creación de la canalización
<a name="get-pipeline-progress"></a>

Puede realizar un seguimiento del estado de una canalización a medida que OpenSearch Ingestion la aprovisiona y la prepara para ingerir datos.

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

Una vez creada inicialmente una canalización, ésta pasa por varias etapas a medida que OpenSearch Ingestion la prepara para la ingesta de datos. Para ver las distintas etapas de creación de la canalización, seleccione el nombre de la canalización para ver la página de **Configuración de la canalización**. En **Estado**, seleccione **Ver detalles**.

Una canalización pasa por las siguientes etapas antes de estar disponible para incorporar datos:
+ **Validación**: se valida la configuración de la canalización. Cuando se complete esta etapa, todas las validaciones se han realizado correctamente.
+ **Crear entorno**: preparar y aprovisionar recursos. Cuando se complete esta etapa, se habrá creado el nuevo entorno de canalización.
+ **Implementar canalización**: implementar la canalización. Cuando se complete esta etapa, la canalización se habrá implementado correctamente.
+ **Comprobar el estado de la canalización**: comprobación del estado de la canalización. Cuando se complete esta etapa, todas las comprobaciones de estado se habrán aprobado.
+ **Habilitar tráfico**: permitir que la canalización incorpore datos. Cuando se complete esta etapa, puede empezar a incorporar datos a la canalización.

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

Usa el [get-pipeline-change-progress](https://docs.aws.amazon.com/cli/latest/reference/osis/get-pipeline-change-progress.html)comando para comprobar el estado de una canalización. La siguiente AWS CLI solicitud comprueba el estado de una canalización denominada`my-pipeline`:

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

**Respuesta**:

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

### OpenSearch API de ingestión
<a name="get-pipeline-progress-api"></a>

Para realizar un seguimiento del estado de la creación de la canalización mediante la API OpenSearch de ingestión, llama a la [GetPipelineChangeProgress](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_GetPipelineChangeProgress.html)operación.