Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 从数据ec2_instance/'中列出一个列表;s_Amazon Web Services_Terraform_Terraform Provider Aws_Cloudwatch Alarms - Fatal编程技术网

Amazon web services 从数据ec2_instance/'中列出一个列表;s

Amazon web services 从数据ec2_instance/'中列出一个列表;s,amazon-web-services,terraform,terraform-provider-aws,cloudwatch-alarms,Amazon Web Services,Terraform,Terraform Provider Aws,Cloudwatch Alarms,我有一个服务器列表,以本地语言作为列表存储 locals { my_list = [ "server1", "server2", "server3", "server4" ] } 我是否可以使用上面的局部变量获取每个服务器(如Instance I’d等)的数据?不为每台服务器定义单独的数据块 然后我可以将这些属性放入列表中吗?最后,在下面的示例中,我将如何使用它,该示例仅针

我有一个服务器列表,以本地语言作为列表存储

locals {
  my_list = [
    "server1",
    "server2",
    "server3",
    "server4"
  ]
}

我是否可以使用上面的局部变量获取每个服务器(如Instance I’d等)的数据?不为每台服务器定义单独的数据块

然后我可以将这些属性放入列表中吗?最后,在下面的示例中,我将如何使用它,该示例仅针对一台服务器。(下面的示例是一个cloud watch报警维度)


您可以在
我的列表中提供筛选器
实例id
(假设
server1
是实例id):

如果
my_列表
包含实例名称,则可以使用:


data "aws_instance" "my_instances" {

  for_each = toset(local.my_list)  

  instance_tags = {
    Name = each.key
  }
}
要获取实例ID的
列表

values(data.aws_instance.my_instances)[*].id

请编辑您的问题以提供更多信息。例如,您所说的“为每台服务器获取数据”是什么意思?您正在寻找哪些数据?“定义单个数据块”是什么意思?更多信息,请。我已经提到,我需要在这里的实例ID。我还提到我需要使用数据从服务器获取信息。对于在terraform上工作的人来说,我要做的事情非常简单。我想你需要再次阅读我的问题,并参考terraform 101抱歉。PS:我已经得到了一个非常清楚地理解我问题的人的答案。谢谢,这适用于实例,但不适用于Name`dimensions={instanceid=values(data.aws\u instances.my\u instances)[].ids instancename=values(data.aws\u instances.my\u instances)[].Name}``server2={+filter=null+id=“us-west-2”+ids=[+“i-0b979e55437035e41”,]+instance_state_names=null+instance_tags={+“Name”=“server2”}`@user2499710实例的名称是you
local.my_list
。使用local.my_list为属性“dimensions”提供了不适当的值:element“instancename”:必需字符串。instanceid=values(data.aws_instances.my_instances)[*]。ids为属性“dimensions”提供了不适当的值:element“instanceid”“:字符串必需。@user2499710我建议提出新问题。我不知道
维度是什么。它是什么上下文?您到底想实现什么?错误是什么。我提供的答案显示了如何按照您的要求获取有关实例的详细信息。维度问题对我来说似乎是一个单独的问题。

data "aws_instance" "my_instances" {

  for_each = toset(local.my_list)  

  instance_tags = {
    Name = each.key
  }
}
values(data.aws_instance.my_instances)[*].id