Kinesis Firehose Delivery Stream Module
This module creates an Amazon Kinesis Data Firehose.
Destination to Amazon S3
This module currently only supports a fully managed service for delivering real-time streaming data to Amazon S3 and
also deployed lambda for data transformation. Use the var.s3_bucket_arn to specify the s3 destination path and
the var.kinesis_stream_arn to specify the kinesis data stream, we also have a Map variable
var.processing_configurations which provides a way to configure the attributes for data transformation.
Sample Usage
- Terraform
- Terragrunt
# ------------------------------------------------------------------------------------------------------
# DEPLOY GRUNTWORK'S KINESIS-FIREHOSE MODULE
# ------------------------------------------------------------------------------------------------------
module "kinesis_firehose" {
source = "git::git@github.com:gruntwork-io/terraform-aws-messaging.git//modules/kinesis-firehose?ref=v1.0.3"
# ----------------------------------------------------------------------------------------------------
# REQUIRED VARIABLES
# ----------------------------------------------------------------------------------------------------
# The name of the Kinesis Data Firehose.
name = <string>
# The ARN of the S3 bucket you want to export the data to.
s3_bucket_arn = <string>
# ----------------------------------------------------------------------------------------------------
# OPTIONAL VARIABLES
# ----------------------------------------------------------------------------------------------------
# Set to true to use a Kinesis Data Stream as the source for the Firehose.
# When true, kinesis_stream_arn must also be provided. When false, the
# Firehose will use Direct PUT as the source. This variable is needed because
# kinesis_stream_arn may come from a resource that isn't created yet, and
# Terraform needs to know at plan time whether to create the kinesis source
# configuration.
enable_kinesis_source = false
# The processing configuration for the Kinesis Data Firehose.
extended_s3_processors = []
# The ARN of the kinesis data stream. Must be set when enable_kinesis_source
# is true.
kinesis_stream_arn = null
}
# ------------------------------------------------------------------------------------------------------
# DEPLOY GRUNTWORK'S KINESIS-FIREHOSE MODULE
# ------------------------------------------------------------------------------------------------------
terraform {
source = "git::git@github.com:gruntwork-io/terraform-aws-messaging.git//modules/kinesis-firehose?ref=v1.0.3"
}
inputs = {
# ----------------------------------------------------------------------------------------------------
# REQUIRED VARIABLES
# ----------------------------------------------------------------------------------------------------
# The name of the Kinesis Data Firehose.
name = <string>
# The ARN of the S3 bucket you want to export the data to.
s3_bucket_arn = <string>
# ----------------------------------------------------------------------------------------------------
# OPTIONAL VARIABLES
# ----------------------------------------------------------------------------------------------------
# Set to true to use a Kinesis Data Stream as the source for the Firehose.
# When true, kinesis_stream_arn must also be provided. When false, the
# Firehose will use Direct PUT as the source. This variable is needed because
# kinesis_stream_arn may come from a resource that isn't created yet, and
# Terraform needs to know at plan time whether to create the kinesis source
# configuration.
enable_kinesis_source = false
# The processing configuration for the Kinesis Data Firehose.
extended_s3_processors = []
# The ARN of the kinesis data stream. Must be set when enable_kinesis_source
# is true.
kinesis_stream_arn = null
}
Reference
- Inputs
- Outputs
Required
namestringThe name of the Kinesis Data Firehose.
s3_bucket_arnstringThe ARN of the S3 bucket you want to export the data to.
Optional
Set to true to use a Kinesis Data Stream as the source for the Firehose. When true, kinesis_stream_arn must also be provided. When false, the Firehose will use Direct PUT as the source. This variable is needed because kinesis_stream_arn may come from a resource that isn't created yet, and Terraform needs to know at plan time whether to create the kinesis source configuration.
falseextended_s3_processorslist(object(…))The processing configuration for the Kinesis Data Firehose.
list(object({
type = string
parameters = list(object({
parameter_name = string
parameter_value = string
}))
}))
[]kinesis_stream_arnstringThe ARN of the kinesis data stream. Must be set when enable_kinesis_source is true.
nullARN of the Kinesis Firehose delivery stream.
Name of the Kinesis Firehose delivery stream.
ARN of the role for Kinesis Firehose
Name of the role for Kinesis Firehose