Amazon web services Aws KInesis Terraform-如何将数据流连接到数据消防软管

Amazon web services Aws KInesis Terraform-如何将数据流连接到数据消防软管,amazon-web-services,amazon-kinesis,amazon-kinesis-firehose,Amazon Web Services,Amazon Kinesis,Amazon Kinesis Firehose,我想使用terraform、Kinesis数据流和数据消防软管创建并连接它们(作为管道)。当我使用UI时,当我转到firehose时,我可以转到source->Kinesis stream,并选择我创建的Kinesis stream。但我想用地形来做 这是创建kinesis流的代码(我从官方的kinesis文档中获取): 这是数据消防软管的代码: resource "aws_elasticsearch_domain" "test_cluster" { domain_name = "fireh

我想使用terraform、Kinesis数据流和数据消防软管创建并连接它们(作为管道)。当我使用UI时,当我转到firehose时,我可以转到source->Kinesis stream,并选择我创建的Kinesis stream。但我想用地形来做

这是创建kinesis流的代码(我从官方的kinesis文档中获取):

这是数据消防软管的代码:

resource "aws_elasticsearch_domain" "test_cluster" {
  domain_name = "firehose-es-test"
  elasticsearch_version = "6.4"
    cluster_config {
    instance_type = "t2.small.elasticsearch"
  }
  ebs_options{
    ebs_enabled = true
    volume_size = 10
  }

}

resource "aws_iam_role" "firehose_role" {
  name = "firehose_test_role"

  assume_role_policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "firehose.amazonaws.com"
      },
      "Effect": "Allow",
      "Sid": ""
    }
  ]
}
EOF
}
resource "aws_kinesis_firehose_delivery_stream" "test_stream" {
  name        = "terraform-kinesis-firehose-test-stream"
  destination = "elasticsearch"
/*
  s3_configuration {
    role_arn           = "${aws_iam_role.firehose_role.arn}"
    bucket_arn         = "${aws_s3_bucket.bucket.arn}"
    buffer_size        = 10
    buffer_interval    = 400
    compression_format = "GZIP"
  }
*/
  elasticsearch_configuration {
    domain_arn = "${aws_elasticsearch_domain.test_cluster.arn}"
    role_arn   = "${aws_iam_role.firehose_role.arn}"
    index_name = "test"
    type_name  = "test"

    processing_configuration {
      enabled = "true"

    }
  }
}
资源“aws\u elasticsearch\u域”“测试\u群集”{
domain_name=“消防软管es测试”
elasticsearch_version=“6.4”
群集配置{
实例_type=“t2.small.elasticsearch”
}
ebs_选项{
ebs_启用=真
体积大小=10
}
}
资源“aws\u iam\u角色”“消防软管\u角色”{
name=“消防软管\u测试\u角色”

假设\u role\u policy=这在
动静\u firehose\u delivery\u stream]
文档中。将示例通到本节,您将看到:

kinesis_source_配置对象支持以下功能:

动静流(必需)用作消防软管输送流源的动静流。 角色\u arn(必需)提供对源动觉流的访问的角色的arn

resource "aws_elasticsearch_domain" "test_cluster" {
  domain_name = "firehose-es-test"
  elasticsearch_version = "6.4"
    cluster_config {
    instance_type = "t2.small.elasticsearch"
  }
  ebs_options{
    ebs_enabled = true
    volume_size = 10
  }

}

resource "aws_iam_role" "firehose_role" {
  name = "firehose_test_role"

  assume_role_policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "firehose.amazonaws.com"
      },
      "Effect": "Allow",
      "Sid": ""
    }
  ]
}
EOF
}
resource "aws_kinesis_firehose_delivery_stream" "test_stream" {
  name        = "terraform-kinesis-firehose-test-stream"
  destination = "elasticsearch"
/*
  s3_configuration {
    role_arn           = "${aws_iam_role.firehose_role.arn}"
    bucket_arn         = "${aws_s3_bucket.bucket.arn}"
    buffer_size        = 10
    buffer_interval    = 400
    compression_format = "GZIP"
  }
*/
  elasticsearch_configuration {
    domain_arn = "${aws_elasticsearch_domain.test_cluster.arn}"
    role_arn   = "${aws_iam_role.firehose_role.arn}"
    index_name = "test"
    type_name  = "test"

    processing_configuration {
      enabled = "true"

    }
  }
}