簡體   English   中英

AWS Firehose 交付到 VPC 中的跨賬戶 Elasticsearch

[英]AWS Firehose delivery to Cross Account Elasticsearch in VPC

我在賬戶 A 中運行的 VPC 中有一個 Elasticsearch。

我想將來自賬戶 B 中 Firehose 的日志傳送到賬戶 A 中的 Elasticsearch。

可能嗎?

當我嘗試從 AWS CLI 創建交付 stream 時,我遇到了異常,

$: /usr/local/bin/aws firehose create-delivery-stream --cli-input-json file://input.json --profile devops
An error occurred (InvalidArgumentException) when calling the CreateDeliveryStream operation: Verify that the IAM role has access to the ElasticSearch domain.

相同的 IAM 角色和相同的輸入。當修改為賬戶 B 中的 Elasticsearch 時,json 可以工作。我在 AWS 賬戶之間啟用了 Transit 網關連接,並且我可以從賬戶 BDD 連接到賬戶 A 中的實例 EC2 中的 Elasticsearch。

Adding my complete terraform code(i got same exception in AWS CLI and also in Terraform): https://gist.github.com/karthikeayan/a67e93b4937a7958716dfecaa6ff7767

看起來您沒有為創建 ZF7B44CFFAFD5C52223D5498196C8A2E7BZ 時使用的角色授予足夠的權限(從提供的 CLI 示例中,我猜測它是一個名為“devops”的角色)。 至少你需要firehose: CreateDeliveryStream

我建議為您的角色添加以下權限:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "firehose:PutRecord",
                "firehose:CreateDeliveryStream",
                "firehose:UpdateDestination"
            ],
            "Resource": "*"
        }
    ]
}

https://forums.aws.amazon.com/message.jspa?messageID=943731

我從 AWS 論壇獲悉,目前不支持此功能。

您可以跨不同賬戶將 Kinesis Data Firehose 及其依賴項(例如 Amazon Simple Storage Service (Amazon S3) 和 Amazon CloudWatch)設置為 stream。 無論是否啟用細粒度訪問控制 (FGAC),流式數據傳輸都適用於可公開訪問的 OpenSearch 服務集群

https://aws.amazon.com/premiumsupport/knowledge-center/kinesis-firehose-cross-account-streaming/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM