AWS:在不同账户中使用 Kinesis Firehose 读取 Kinesis Stream 数据

AWS: reading Kinesis Stream data using Kinesis Firehose in a different account

我们有一个团队通过他们的帐户 (Acc A) 将数据写入 Kinesis Stream。我想在我的帐户 (Acc B) 中使用这些数据,最好使用 Kinesis Firehose 并将该数据移动到 S3。

我翻阅了一页又一页的 AWS 文档,但没有找到答案。是否可以使用位于不同 AWS 账户中的 Firehose 从 Kinesis Stream 使用数据。如果是,那么如何获取这些数据并将其移动到 S3,如果不是,最直接的解决方案是什么?

请记住,Stream 的所有者拒绝对其架构进行任何更改。

感谢您的帮助。

我建议说服源帐户所有者在他们这边创建一个运动传输流,以将数据推送到您的 S3 存储桶中。这样就容易多了。

然而,如果这不是一个选项,您可以创建一个 Kinesis Data Analytics Stream 来使用来自另一个帐户的数据,然后您可以使用 Kinesis Delivery Stream 将这些数据泵入 S3。

此处解释了类似的方法:https://docs.aws.amazon.com/kinesisanalytics/latest/java/examples-cross.html

现在无法将 Kinesis Data Stream 直接连接到不同账户中的 Kinesis Firehose。但是,例如,您可以使用 lambda 函数在跨账户之间传输数据——这是我正在使用的设置,它工作正常。根据数据量,这可能会非常昂贵。

有教程可用here - 与您的要求唯一不同的是此 lambda 基于帐户 A。