Он печатает только один том, потому что вы настроили только один том в источнике данных. Если вы проверите файл состояния, вы, вероятно, увидите, что в нем указано только одно устройство, хотя подключено несколько устройств.
Вам необходимо настроить источник данных для каждого тома. Но это означает, что вы уже знаете количество томов. Так что, вероятно, это не выход.
Чтобы получить список всех томов, прикрепленных к любому данному экземпляру, можно использовать ресурс экземпляра вместе с идентификатором экземпляра, ami и типом экземпляра. Используйте terraform import, чтобы импортировать экземпляр в состояние. Затем используйте обновление терраформы, чтобы отобразить все тома, прикрепленные к экземпляру.
Изменять
data "aws_instance" "kafka_nodes" {
filter {
name = "tag:Name"
values = ["mykas00*"]
}
}
output "block_devs" {
value = "${data.aws_instance.kafka_nodes.ebs_block_device}"
}
to
resource "aws_instance" "kafka_nodes" {
ami = "<INSTANCE_AMI>"
instance_type = "<INSTANCE_TYPE>"
tags {
Name = "mykas00"
}
}
output "block_devs" {
value = ["${aws_instance.kafka_nodes.ebs_block_device}"]
}
Добавьте ниже, если вы также хотите, чтобы в списке было корневое устройство
output "root_dev" {
value = ["${aws_instance.kafka_nodes.root_block_device}"]
}
Тогда сделай
terraform import aws_instance.kafka_nodes [instance_id]
terraform refresh
Вы должны увидеть список всех устройств, подключенных к экземпляру, примерно так:
block_instance_devs = [
{
delete_on_termination = 0,
device_name = /dev/sdc,
encrypted = 0,
iops = 100,
snapshot_id = ,
volume_id = vol-0ceea4f464a24d86a,
volume_size = 8,
volume_type = gp2
},
{
delete_on_termination = 0,
device_name = /dev/sdb,
encrypted = 0,
iops = 100,
snapshot_id = ,
volume_id = vol-0c0608cf0126f0b2b,
volume_size = 8,
volume_type = gp2
},
{
delete_on_termination = 0,
device_name = /dev/sdd,
encrypted = 0,
iops = 100,
snapshot_id = ,
volume_id = vol-0fe3c4c67bedf0e9e,
volume_size = 8,
volume_type = gp2
}
]
И даже корневое устройство, если вы добавили для него раздел.
root_dev = [
{
delete_on_termination = 1,
iops = 100,
volume_id = vol-0197cdd29d212c642,
volume_size = 8,
volume_type = gp2
}
]
person
Don
schedule
30.07.2018