Memuat data ke OpenSearch Layanan Amazon dengan Logstash - OpenSearch Layanan Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memuat data ke OpenSearch Layanan Amazon dengan Logstash

Versi open source Logstash (Logstash OSS) menyediakan cara mudah untuk menggunakan API massal untuk mengunggah data ke domain Layanan Amazon Anda. OpenSearch Layanan ini mendukung semua plugin input Logstash standar, termasuk plugin input Amazon S3. OpenSearch Layanan mendukung plugin logstash-output-opensearchoutput, yang mendukung otentikasi dasar dan kredenal IAM. Plugin ini bekerja dengan versi 8.1 dan lebih rendah dari Logstash OSS.

Konfigurasi

Konfigurasi Logstash bervariasi berdasarkan jenis otentikasi yang digunakan domain Anda.

Apa pun metode otentikasi yang Anda gunakan, Anda ecs_compatibility harus mengatur disabled di bagian output dari file konfigurasi. Logstash 8.0 memperkenalkan perubahan besar di mana semua plugin dijalankan dalam mode kompatibilitas ECS secara default. Anda harus mengganti nilai default untuk mempertahankan perilaku lama.

Konfigurasi kontrol akses berbutir halus

Jika domain OpenSearch Layanan Anda menggunakan kontrol akses berbutir halus dengan otentikasi dasar HTTP, konfigurasi serupa dengan cluster lainnya. OpenSearch Contoh file konfigurasi ini mengambil masukannya dari versi open source 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 } }

Konfigurasi bervariasi berdasarkan aplikasi Beats dan kasus penggunaan, tetapi konfigurasi Filebeat OSS Anda mungkin terlihat seperti ini:

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"]

Konfigurasi IAM

Jika domain Anda menggunakan kebijakan akses domain berbasis IAM atau kontrol akses berbutir halus dengan pengguna utama, Anda harus menandatangani semua permintaan ke OpenSearch Layanan menggunakan kredenal IAM. Kebijakan berbasis identitas berikut memberikan semua permintaan HTTP ke subresource domain Anda.

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

Untuk mengatur konfigurasi Logstash Anda, ubah file konfigurasi Anda untuk menggunakan plugin untuk outputnya. Contoh file konfigurasi ini mengambil inputnya dari file dalam bucket S3:

input { s3 { bucket => "amzn-s3-demo-" 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 } }

Jika Anda tidak ingin memberikan kredensi IAM Anda dalam file konfigurasi, Anda dapat mengekspornya (atau menjalankannya): 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"

Jika domain OpenSearch Layanan Anda berada dalam VPC, mesin Logstash OSS harus dapat terhubung ke VPC dan memiliki akses ke domain melalui grup keamanan VPC. Untuk informasi selengkapnya, lihat Tentang kebijakan akses pada VPC domain.