本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將 Amazon OpenSearch 擷取管道與其他 服務和應用程式整合
若要成功將資料擷取至 Amazon OpenSearch Ingestion 管道,您必須設定用戶端應用程式 (來源) 將資料傳送至管道端點。您的來源可能是 Fluent Bit 日誌、OpenTelemetry 收集器或簡單 S3 儲存貯體等用戶端。每個用戶端的確切組態都不同。
來源組態期間的重要差異 (相較於直接將資料傳送至 OpenSearch Service 網域或 OpenSearch Serverless 集合) 是 AWS 服務名稱 (osis
) 和主機端點,其必須是管道端點。
建構擷取端點
若要將資料擷取至管道,請將其傳送至擷取端點。若要尋找擷取 URL,請導覽至管道設定頁面並複製擷取 URL:

若要建構提取型來源的完整擷取端點,例如 OTel 追蹤
例如,假設您的管道組態具有下列擷取路徑:
entry-pipeline: source: http: path: "
/my/test_path
"
您在用戶端組態中指定的完整擷取端點將採用下列格式:https://ingestion-pipeline-abcdefg.us-west-2.osis.amazonaws.com
。/my/test_path
如需詳細資訊,請參閱指定擷取路徑。
建立擷取角色
對 OpenSearch Ingestion 的所有請求都必須使用 Signature 第 4 版簽署。至少,簽署請求的角色必須獲授予 osis:Ingest
動作的許可,以允許其將資料傳送至 OpenSearch Ingestion 管道。
例如,下列 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 角色將資料擷取到管道中。
設定跨帳戶擷取許可
-
在 AWS 帳戶 與管道相同的 內,使用
osis:Ingest
許可 (如上一節所述) 建立擷取角色。如需說明,請參閱建立 IAM 角色。 -
將信任政策連接至擷取角色,允許另一個帳戶中的主體擔任該角色:
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
{external-account-id}
:root" }, "Action": "sts:AssumeRole" }] } -
在另一個帳戶中,設定您的用戶端應用程式 (例如 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 網域查詢資料。下列資源可協助您開始使用: