Can we deploy Two Kinesis Firehose Delivery Stream's in Single Cloud formation Template. If yes, How?

Viewed 85
  1. I am able deploy only one delivery stream using CFN. Having two Kinesis firehose delivery stream. Is there any alternate way to accomplish two Kinesis firehose in single template. Thanks !!

     AWSTemplateFormatVersion: '2010-09-09'
     Resources:
    
     ##Kinesis Firehose1
     DeliveryStreamLogGroup:   ## Cloudwatch log group
        Type: AWS::Logs::LogGroup 
        Properties:
         LogGroupName: ----
    
     DeliveryStreamLogStreamS3: # Cloudwatch log stream
       Type: AWS::Logs::LogStream
       Properties:
         LogGroupName: ---
         LogStreamName: ---
    
     DeliveryStreamLogStreamRedshift:
       Type: AWS::Logs::LogStream
       Properties:
         LogGroupName: ---
         LogStreamName: ---
    
     DeliveryStream:
      Type: AWS::KinesisFirehose::DeliveryStream
      DependsOn: RedshiftCluster
      Properties:
      DeliveryStreamName: ---
      DeliveryStreamType: ---
      RedshiftDestinationConfiguration: ---
    

    ##Kinesis Firehose2 DeliveryStreamLogGroup: Type: AWS::Logs::LogGroup Properties: LogGroupName: ----

     DeliveryStreamLogStreamS3:
       Type: AWS::Logs::LogStream
       Properties:
         LogGroupName: ---
         LogStreamName: ---
    
     DeliveryStreamLogStreamRedshift:
       Type: AWS::Logs::LogStream
       Properties:
         LogGroupName: ---
        LogStreamName: ---
    
     DeliveryStream:
       Type: AWS::KinesisFirehose::DeliveryStream
       DependsOn: RedshiftCluster
       Properties:
          DeliveryStreamName: ---
          DeliveryStreamType: ---
          RedshiftDestinationConfiguration: ---
    
1 Answers

Yes. you can. Just give different names to your delivery stream resources

DeliveryStream1:
   Type: AWS::KinesisFirehose::DeliveryStream
   DependsOn: RedshiftCluster1
   Properties:
      DeliveryStreamName: ---
      DeliveryStreamType: ---
      RedshiftDestinationConfiguration: ---
DeliveryStream2:
   Type: AWS::KinesisFirehose::DeliveryStream
   DependsOn: RedshiftCluster2
   Properties:
      DeliveryStreamName: ---
      DeliveryStreamType: ---
      RedshiftDestinationConfiguration: ---

"Type" attribute defines what kind of resource you want to create. You can create multiple resources of same type provided you gave different name to each resource of same type

Related