通过 Cloudformation 模板将 Lambda 函数添​​加到 Kinesis Firehose

Posted

技术标签:

【中文标题】通过 Cloudformation 模板将 Lambda 函数添​​加到 Kinesis Firehose【英文标题】:Adding a Lambda function into Kinesis Firehose via Cloudformation Template 【发布时间】:2017-12-18 23:13:53 【问题描述】:

我想向我的 Kinesis Firehose 添加一个 Lambda 函数来转换源数据,如 here 所述。

查看Cloudformation Template for Kinesis firehose,我没有看到这样的选项,

Type: "AWS::KinesisFirehose::DeliveryStream"
Properties: 
  DeliveryStreamName: String
  DeliveryStreamType: String
  ElasticsearchDestinationConfiguration:
    ElasticsearchDestinationConfiguration
  ExtendedS3DestinationConfiguration:
    ExtendedS3DestinationConfiguration
  KinesisStreamSourceConfiguration:
    KinesisStreamSourceConfiguration
  RedshiftDestinationConfiguration:
    RedshiftDestinationConfiguration
  S3DestinationConfiguration:
    S3DestinationConfiguration

如何设置 CF 模板以让 Lambda 函数处理 Kinesis Firehose 的输入?

【问题讨论】:

【参考方案1】:

可以通过ProcessingConfiguration 实现这一点,它可用于 ES、S3 和 Redshift 目标配置。应该如下所示:

"ElasticsearchDestinationConfiguration": 
...
   "ProcessingConfiguration": 
         "Enabled": "true",
         "Processors": [
           
             "Parameters": [
               
                 "ParameterName": "LambdaArn",
                 "ParameterValue": "arn:aws:lambda:eu-west-1:123456789:function:cw-transformer:$LATEST"
               
             ],
             "Type": "Lambda"
           
         ]
       
...

【讨论】:

YAML 中有吗?一直在扯我的头发,我不明白为什么亚马逊不能提供如何编写它的示例。 here,底部是示例

以上是关于通过 Cloudformation 模板将 Lambda 函数添​​加到 Kinesis Firehose的主要内容,如果未能解决你的问题,请参考以下文章

如何将 AWS CloudWatch 仪表板转换为 CloudFormation 模板

通过 Cloudformation 将配方分配给 Opsworks 中的生命周期事件

如何使用 CloudFormation 模板更新现有 AWS API Gateway

无法通过自定义 cloudformation 资源调用 lambda 函数

AWS Cognito 用户池通过 cloudformation 文件

将 CLI 代码转换为 CloudFormation JSON 格式