Criação de pipelines OpenSearch de ingestão da Amazon - OpenSearch Serviço Amazon

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

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 na OpenSearch documentação.

Pré-requisitos e perfil do IAM necessário

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 Ingestion 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:

nota

Se você estiver escrevendo para um domínio que usa controle de acesso detalhado, há etapas extras que você precisa concluir. Consulte Mapeie a função do pipeline (somente para domínios que usam controle de acesso refinado).

Permissões obrigatórias do IAM

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:CreateRolee 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 deve estar no recurso de função do pipeline ou simplesmente * se você planeja usar funções 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 chamadaosis:Ingest, que é necessária para enviar solicitações assinadas ao pipeline usando o Signature Version 4. Para obter mais informações, consulte Criação de uma função de ingestão.

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 obter mais informações, consulte Recurso de perfil de pipeline.

Para obter mais informações sobre cada permissão, consulte Ações, recursos e chaves de condição para OpenSearch ingestão na Referência de autorização de serviço.

Como especificar a versão do pipeline

Ao criar um pipeline usando o editor de configuração, você deve especificar a versão principal do Data Prepper 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.

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, consulteImplantações azul/verde para atualizações de pipeline. 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

Para fontes baseadas em pull, como OTel rastreamento e OTel métricas, 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 fonte HTTP:

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

Ao ingerir dados 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

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

Para criar um pipeline, faça login no console do Amazon OpenSearch Service em https://console.aws.amazon.com/aos/casa e escolha Create pipeline.

Selecione um pipeline em branco ou escolha um esquema de configuração. Os blueprints incluem um pipeline pré-configurado para uma variedade de casos de uso comuns. Para obter mais informações, consulte Trabalhando com plantas.

Escolha Selecionar esquema.

Configuração da fonte

  1. Se você estiver começando com um funil em branco, selecione uma fonte 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.

  2. Dependendo da fonte escolhida, defina configurações adicionais para a fonte. Por exemplo, para usar o Amazon S3 como fonte, você deve especificar a URL da fila do Amazon SQS a partir das mensagens recebidas pelo pipeline. Para obter uma lista de plug-ins de origem compatíveis e links para sua documentação, consultePlug-ins e opções compatíveis com pipelines da OpenSearch Ingestão da Amazon.

  3. Para algumas fontes, você deve especificar as opções de rede de origem. Escolha entre acesso 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:

    Configuração Descrição
    Gerenciamento de endpoints

    Escolha se você mesmo quer criar seus endpoints de nuvem privada virtual (VPC) ou deixar que o OpenSearch Ingestion os crie para você. O gerenciamento de endpoints é padronizado para endpoints gerenciados pelo Ingestion. OpenSearch

    VPC

    Escolha o ID da VPC que você deseja usar. A VPC e o pipeline devem estar na mesma Região da AWS.

    Sub-redes

    Escolha uma ou mais sub-redes. OpenSearch O serviço colocará um endpoint VPC e interfaces de rede elástica nas sub-redes.

    Grupos de segurança

    Escolha um ou mais grupos de segurança de VPC que permitam que o aplicativo necessário alcance o pipeline de OpenSearch ingestão nas portas (80 ou 443) e protocolos (HTTP ou HTTPs) expostos pelo pipeline.

    Opções de anexo de VPC

    Se sua origem for um endpoint autogerenciado, conecte seu pipeline a uma VPC. Escolha uma das opções de CIDR padrão fornecidas ou use um CIDR personalizado.

    Para obter mais informações, consulte Como configurar o acesso à VPC para os pipelines da Amazon OpenSearch Ingestion.

  4. Escolha Próximo.

Configurar processador

Adicione um ou mais processadores ao seu pipeline. Os processadores são componentes dentro de um subpipeline que permitem filtrar, transformar e enriquecer eventos antes de publicar registros no domínio ou no coletor de coleções. Para obter uma lista de processadores compatíveis e links para sua documentação, consultePlug-ins e opções compatíveis com pipelines da OpenSearch Ingestão da Amazon.

Você pode escolher Ações e adicionar o seguinte:

  • Roteamento condicional — encaminha eventos para diferentes coletores com base em condições específicas. Para obter mais informações, consulte Roteamento condicional.

  • Subpipeline — Cada subpipeline é uma combinação de uma única fonte, zero ou mais processadores e um único coletor. Somente um subpipeline pode ter uma fonte externa. Todos os outros devem ter fontes que sejam outros subpipelines dentro da configuração geral do pipeline. Uma única configuração de pipeline pode conter de 1 a 10 subpipelines.

Escolha Próximo.

Configurar coletor

Selecione o destino em que o pipeline publica registros. Cada subpipeline deve conter pelo menos um coletor. Você pode adicionar no máximo 10 sumidouros a uma tubulação.

Para OpenSearch coletores, configure os seguintes campos:

Configuração Descrição
Nome da política de rede

(Somente coletores 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.

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 obter mais informações, consulte Modelos de índice.

Habilitar DLQ

Configure uma fila de cartas mortas (DLQ) do Amazon S3 para o pipeline. Para obter mais informações, consulte Filas de mensagens não entregues.

Configurações adicionais

Configure opções avançadas para o OpenSearch coletor. Para obter mais informações, consulte Opções de configuração na documentação do Data Prepper.

Para adicionar um coletor Amazon S3, escolha Adicionar coletor e Amazon S3. Para obter mais informações, consulte Amazon S3 como destino.

Escolha Próximo.

Configurar pipeline

Defina as seguintes configurações adicionais de pipeline:

Configuração Descrição
Nome do pipeline

Um nome exclusivo para o pipeline.

Tampão persistente

Um buffer persistente armazena seus dados em um buffer baseado em disco em várias zonas de disponibilidade. Para obter mais informações, consulte Armazenamento em buffer persistente.

Se você ativar o buffer persistente, selecione a AWS Key Management Service chave para criptografar os dados do buffer.

Capacidade do encanamento

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 .

Perfis do pipeline

A função do IAM que fornece as permissões necessárias para que o pipeline grave no coletor e leia de fontes 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.

Para obter mais informações, consulte Configurando funções e usuários na Amazon OpenSearch Ingestion.

Tags

Adicione uma ou mais tags ao seu funil. Para obter mais informações, consulte Uso de tags nos pipelines de OpenSearch Ingestão da Amazon.

Opções de publicação de registros 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 obter mais informações, consulte Monitoramento dos logs de pipeline.

Escolha Avançar., depois revise a configuração do pipeline e escolha Create 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.

O comando create-pipeline aceita a configuração do pipeline como uma string ou em 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 GetPipelinecomando.

Para criar um pipeline OpenSearch de ingestão usando a API OpenSearch de ingestão, chame a CreatePipelineoperaçã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.

Acompanhar o status da criação do pipeline

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

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.

Use o get-pipeline-change-progresscomando para verificar o status de um pipeline. A AWS CLI solicitação a seguir verifica o status de um pipeline chamadomy-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 } }

Para acompanhar o status da criação do pipeline usando a API OpenSearch de ingestão, chame a GetPipelineChangeProgressoperação.