假设我有两种血统,我想用关键词_consumer
来获得其中一种。
variable "kinesis" {
default = ["kinesis_publisher", "kinesis_consumer"]
}
resource "aws_kinesis_stream" "test_stream" {
count = "${length(var.kinesis)}"
name = "${var.kinesis[count.index]}"
shard_count = 1
retention_period = 48
shard_level_metrics = [
"IncomingBytes",
"OutgoingBytes",
]
tags = {
Environment = "test"
}
}
如何仅获取消费者信息?
output "kinesis_consumer_arn" {
value = "??? lookup or matchkeys with _consumer ???"
}
它并不总是相同的序列,并且会发生许多运动。所以我不能直接使用0或1。
答案 0 :(得分:0)
您可以为每个kafka流创建模块,从而对传递到资源和从资源派生的变量提供更多控制。
module "kinesis_publisher" {
source = "../modules/test_stream"
stream_name = "kinesis_publisher"
}
module "kinesis_consumer" {
source = "../modules/test_stream"
stream_name = "kinesis_consumer"
}
然后可以根据模块过滤输出。
output "kinesis_consumer_arn" {
value = "{module.kinesis_consumer.arn}"
}