使用 Logstash 將資料載入至 Amazon OpenSearch Service - Amazon OpenSearch Service

使用 Logstash 將資料載入至 Amazon OpenSearch Service

Logstash 的開放原始碼版本 (Logstash OSS) 提供便利的方法來使用大量 API 將資料上傳到您的 Amazon OpenSearch Service 網域。此服務支援所有標準 Logstash 輸入外掛程式,包括 Amazon S3 輸入外掛程式。OpenSearch Service 可支援 logstash-output-opensearch 輸出外掛程式,該外掛程式支援基本身分驗證和 IAM 憑證。該外掛程式可與 Logstash OSS 的 8.1 版及較低版本搭配使用。

組態

Logstash 組態會依據網域使用的身分驗證類型而有所不同。

無論您使用哪種身分驗證方法,都必須在組態檔案的輸出部分中將 ecs_compatibility 設定為 disabled。Logstash 8.0 引入了一個突破性的變更,其中所有外掛程式都以預設 ECS 相容模式執行。您必須覆寫預設值才能保持舊式行為。

精細存取控制組態

如果您的 OpenSearch Service 網域搭配使用精細存取控制與 HTTP 基本身分驗證,則組態類似於任何其他 OpenSearch 叢集。此組態檔案範例會從 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 } }

組態因 Beats 應用程式和使用案例而異,但您的 Filebeat OSS 組態可能如下所示:

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

IAM 組態

如果您的網域使用以 IAM 為基礎的網域存取政策或精細存取控制搭配 IAM 主要使用者,您必須使用 IAM 憑證簽署所有針對 OpenSearch Service 的請求。

變更您的組態檔案以將外掛程式用於其輸出。此組態檔案範例會從 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 } }

如果您不想在組態檔案中提供 IAM 憑證,則您可以將其匯出 (或執行 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"

如果您的 OpenSearch Service 網域位於 VPC 中,則 Logstash OSS 機器必須能夠連線到 VPC 並可透過 VPC 安全群組存取該網域。如需更多詳細資訊,請參閱 關於 VPC 網域上的存取政策