当前位置: 首页 > 知识库问答 >
问题:

交叉帐户Kinesis消防软管可能吗?

伯彦君
2023-03-14

帐户A是我创建Kinesis流的应用程序帐户,我想在帐户B中创建Firehose来读取帐户A的Kinesis流。这可能吗?我尝试按照(https://medium.com/upday-devs/configure-kcl-to-read-from-a-dariffent-aws-account-16000b26e7ff)的步骤,在帐户A中创建了一个外部访问角色(例如'ARN:aws:iam::11111111:role/extern-kinesis-access'),只需指定ARN

  KinesisStreamSourceConfiguration:
    KinesisStreamARN:
      Ref: KinesisSourceStreamARN
    RoleARN: 'arn:aws:iam::111111111:role/External-Kinesis-Access'

但这会导致一个错误:IAM角色和Kinesis流应该属于同一个帐户。

我尝试使用sts:apsureRole,但这会导致一个不同的错误:“不允许跨帐户传递角色。”

因此,似乎不支持通过消防水管的跨帐户流。我还发现了以下内容:https://forums.aws.amazon.com/thread.jspa?threadid=249458,这让我相信它不受支持。

如果是这样的话,有什么解决办法呢?在帐户a中创建一个Lambda函数以写入帐户B中的Firehose?

共有1个答案

贺飞
2023-03-14

可以像您建议的那样有一个lambda函数。这里还有一个教程:https://medium.com/faun/quicksolutions-cross-account-use-lambda-to-write-to-firehose-in-other-aws-account-38bc4270a348

这将导致lambda执行的额外成本。如果只想将数据持久化到S3,还可以将Firehose配置为写入另一个帐户中的S3 bucket:https://docs.aws.amazon.com/Firehose/latest/dev/controll-access.html#cross-account-delivery-s3和https://blog.fajri.my.id/post/aws-kinesis-firehose-cross-account-bucket/

 类似资料:
  • Kinesis Firehose和Kinesis Streams是根据AWS博客中提到的细节来加载流数据的。在消防水管的情况下,没有碎片或维修的概念。在这种情况下,Kinesis消防软管是Kinesis流的替代品吗?

  • 对于我的应用程序日志,我计划将日志从我的内部服务器转发到AWS Kinesis Firehose。我正在尝试使用Logstash和log-stash-output-plugin https://github.com/samcday/logstash-output-kinesis 但我认为这个插件需要将日志数据转发到Kinesis数据流,然后我们可以创建一个管道到Kinesis消防水管。如果我们指向

  • 基于我对Kinesis数据流的阅读,我必须创建一个分析应用程序,然后将用于调用一个lambda。然后,我将不得不使用lambda写入S3。或者Kinesis数据流可以以某种方式直接写入lambda?我找不到任何表明相同的东西。 消防水带不按小时收费(而溪流是)。那么消防水管对我来说是更好的选择吗?

  • 有没有办法查询AWS Kinesis Firehose的当前统计数据,比如 当前缓冲区中的记录数? 占用了多少缓冲区?

  • Json格式对我来说很好,数据被加载到redshift表中。 用于JSON的复制命令: 从's3://foldername/'CREDENTIALS'aws_iam_role=arn:aws:iam:::role/'MANIFEST json'auto'复制products_json; 用于CSV的复制命令: 从's3://foldername/'CREDENTIALS'aws_iam_role=