Carregamento de dados no Amazon OpenSearch Service com o Logstash - 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á.

Carregamento de dados no Amazon OpenSearch Service com o Logstash

A versão de código aberto do Logstash (Logstash OSS) fornece uma maneira conveniente de usar a API em massa para carregar dados em seu domínio do Amazon OpenSearch Service. O serviço oferece suporte a todos os plug-ins de entrada padrão do Logstash, incluindo o plug-in de entrada do Amazon S3. O OpenSearch Service oferece suporte ao plug-in de saída logstash-output-opensearch, que é compatível com a autenticação básica e as credenciais do IAM. O plug-in funciona com a versão 8.1 e inferior do Logstash OSS.

Configuração

A configuração do Logstash varia de acordo com o tipo de autenticação utilizada pelo seu domínio.

Não importa que método de autenticação você use, é necessário definir ecs_compatibilitycomo disabled na seção de saída do arquivo de configuração. O Logstash 8.0 introduziu uma mudança revolucionária em que todos os plug-ins são executados no modo de compatibilidade com ECS por padrão. Você deve substituir o valor padrão para manter o comportamento herdado.

Configuração do controle de acesso refinado

Se seu domínio do OpenSearch Service usa o controle de acesso refinado com autenticação básica HTTP, a configuração é semelhante a qualquer outro cluster do OpenSearch. Este arquivo de configuração de exemplo obtém a entrada da versão de código aberto do Filebeat (Filebeat OSS):

input { beats { port => 5044 } } output { opensearch { hosts => "https://domain-endpoint:443" user => "my-username" password => "my-password" index => "logstash-logs-%{+YYYY.MM.dd}" ecs_compatibility => disabled ssl_certificate_verification => false } }

A configuração varia de acordo com a aplicações Beats e o caso de uso, mas sua configuração do Filebeat OSS pode ser semelhante a esta:

filebeat.inputs: - type: log enabled: true paths: - /path/to/logs/dir/*.log filebeat.config.modules: path: ${path.config}/modules.d/*.yml reload.enabled: false setup.ilm.enabled: false setup.ilm.check_exists: false setup.template.settings: index.number_of_shards: 1 output.logstash: hosts: ["logstash-host:5044"]

Configuração do IAM

Se seu domínio usa uma política de acesso a domínio baseada no IAM ou um controle de acesso refinado com um usuário mestre, é necessário assinar todas as solicitações para o OpenSearch Service usando credenciais do IAM. A política baseada em identidade a seguir concede todas as solicitações HTTP para os sub-recursos do seu domínio.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "es:ESHttp*" ], "Resource": "arn:aws:es:region:aws-account-id:domain/domain-name/*" } ] }

Para configurar o Logstash, altere o seu arquivo de configuração para usar o plug-in para a saída. Este arquivo de configuração de exemplo obtém a entrada de arquivos em um bucket do S3:

input { s3 { bucket => "my-s3-bucket" region => "us-east-1" } } output { opensearch { hosts => ["domain-endpoint:443"] auth_type => { type => 'aws_iam' aws_access_key_id => 'your-access-key' aws_secret_access_key => 'your-secret-key' region => 'us-east-1' } index => "logstash-logs-%{+YYYY.MM.dd}" ecs_compatibility => disabled } }

Se você não quiser fornecer as suas credenciais do IAM no arquivo de configuração, poderá exportá-las (ou executar o aws configure):

export AWS_ACCESS_KEY_ID="your-access-key" export AWS_SECRET_ACCESS_KEY="your-secret-key" export AWS_SESSION_TOKEN="your-session-token"

Se seu domínio do OpenSearch Service estiver em uma VPC, a máquina do Logstash OSS deverá poder se conectar à VPC e ter acesso ao domínio via grupos de segurança da VPC. Para ter mais informações, consulte Sobre políticas de acesso em VPC domínios.