使用 Amazon OpenSearch 擷取管道整合 - Amazon OpenSearch 服務

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Amazon OpenSearch 擷取管道整合

為了成功地將資料 OpenSearch 導入 Amazon Intection 管道,您必須將用戶端應用程式 (來源) 設定為將資料傳送到管道端點。您的來源可能是用戶端,例如 Fluent Bit 日誌、 OpenTelemetry收集器或簡單的 S3 儲存貯體。每個客戶端的確切配置不同。

來源組態期間的重要差異 (與直接傳送資料至 OpenSearch 服務網域或 OpenSearch 無伺服器集合相比) 是 AWS 服務名稱 (osis) 和主機端點 (必須是管線端點)。

建構擷取端點

為了將資料導入管道,請將其傳送至擷取端點。若要尋找擷取URL,請瀏覽至「管線設定」 頁面並複製擷URL取:

Pipeline settings page showing details for ingestion-pipeline, including status and ingestion URL.

若要為OTel追蹤OTel指標等提取式來源建構完整擷取端點,請將管線組態的擷取路徑新增至擷取。URL

例如,假設您的管線組態具有下列擷取路徑:

entry-pipeline: source: http: path: "/my/test_path"

您在用戶端組態中指定的完整擷取端點將採用下列格式:https://ingestion-pipeline-abcdefg.us-west-2.osis.amazonaws.com/my/test_path

如需詳細資訊,請參閱指定擷取路徑

建立擷取角色

所有對 OpenSearch 擷取的要求都必須使用簽名版本 4 簽署。至少,簽署請求的角色必須獲得osis:Ingest動作的權限,這允許其將資料傳送至 OpenSearch 擷取管線。

例如,下列 AWS Identity and Access Management (IAM) 原則允許對應的角色將資料傳送至單一管線:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "osis:Ingest", "Resource": "arn:aws:osis:us-east-1:{account-id}:pipeline/pipeline-name" } ] }
注意

若要將角色用於所有管線,請以萬用字Resource元 (*) 取代元素ARN中的。

提供跨帳戶擷取存取

注意

您只能為公有管道提供跨帳戶擷取存取權,而不VPC能為管線提供。

您可能需要將資料從不同的管道內嵌到管道中 AWS 帳戶,例如存放來源應用程式的帳戶。如果寫入管線的主體與管線本身的帳戶不同,您需要設定主體以信任另一個IAM角色,才能將資料內嵌到管線中。

設定跨帳戶擷取權限
  1. 在管道內建立具有osis:Ingest權限的擷取角色 ( AWS 帳戶 如前一節所述)。如需指示,請參閱建立IAM角色

  2. 信任原則附加至擷取角色,讓其他帳戶中的主體可以假設這個角色:

    { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::{external-account-id}:root" }, "Action": "sts:AssumeRole" }] }
  3. 在另一個帳戶中,設定您的用戶端應用程式 (例如 Fluent Bit) 以擔任擷取角色。為了使此功能運作,應用程式帳戶必須將權限授與應用程式使用者或角色,才能擔任擷取角色。

    下列範例以身分識別為基礎的原則允許ingestion-role從管線帳戶假設附加的主參與者:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::{account-id}:role/ingestion-role" } ] }

然後,用戶端應用程式可以使用該AssumeRole作業來假設資料,ingestion-role並將資料擷取至關聯的管線。

後續步驟

將資料匯出至管線之後,您可以從設定為管線接收器的 OpenSearch Service 網域進行查詢。下列資源可協助您開始使用: