小编sho*_*sho的帖子

如何通过 bash 脚本在 terraform 中使用外部数据源

我有一个 bash 脚本,它将返回单个 AMI ID。我想使用从 bash 脚本返回的 AMI ID 作为启动配置的输入。

data "external" "amiid" {
  program = ["bash", "${path.root}/scripts/getamiid.sh"]
}

resource "aws_launch_configuration" "bastion-lc" {
  name_prefix                 = "${var.lc_name}-"
  image_id                    = "${data.external.amiid.result}"
  instance_type               = "${var.instance_type}"
  placement_tenancy           = "default"
  associate_public_ip_address = false
  security_groups             = ["${var.bastion_sg_id}"]
  iam_instance_profile        = "${aws_iam_instance_profile.bastion-profile.arn}"

  lifecycle {
   create_before_destroy = true
  }
}
Run Code Online (Sandbox Code Playgroud)

当我使用 terraform plan 运行此程序时,我收到一条错误消息

* module.bastion.data.external.amiid: 1 error(s) occurred:

* module.bastion.data.external.amiid: data.external.amiid: command "bash" produced invalid JSON: invalid character 'a' looking for beginning of object key string
Run Code Online (Sandbox Code Playgroud)

这是 getamiid.sh …

terraform

6
推荐指数
1
解决办法
2万
查看次数

如何使用AWS CLI在同一行中列出名称,状态,实例大小和AZ的所有实例

如何使用AWS CLI在同一行中列出名称,状态,实例大小和AZ的所有实例?

我已经接近:

aws ec2 describe-instances --query 'Reservations[].Instances[].[Tags[?Key==`Name`].Value[], Placement.AvailabilityZone,InstanceType,State.Name]' --output text
Run Code Online (Sandbox Code Playgroud)

但这会在其余名称下方输出实例名称。我想将它们保持在同一行上,以便可以将其复制到电子表格中。

amazon-ec2 amazon-web-services aws-cli

3
推荐指数
1
解决办法
1807
查看次数

如何获取Amazon EC2上所有公共IP及其实例名称的列表

任何人都知道如何使用aws CLI获取Amazon EC2上所有公共IP及其实例名称的列表?

这让我获得了公共IP列表,但没有找到它们关联的实例名称.aws ec2 describe-instances --query"Reservations [ ].Instance [ ] .PublicIpAddress" - 输出文本

提前致谢.

amazon-ec2 amazon-web-services

1
推荐指数
2
解决办法
3427
查看次数

如何在 AWS cli 中获取所有实例和特定标签的列表

有谁知道如何使用名称和特定标签导出 AWS 账户中的所有实例?我拥有的标签名为 Billing by Role。尝试使用 aws ec2 describe-instances 来实现这一点。

我尝试使用这个:

aws ec2 describe-instances --query 'Reservations[].Instances[].[Tags[?Key==`Name`].Value[] | [0], [Tags[?Key==`Billing by Role`].Value[]]' --output text
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误:

ValueError: --query Reservations[].Instances[].[Tags[?Key== Name] .Value[] 的错误值| [0], [Tags[?Key== Billing by Role].Value[]]: Invalid token.: 在靠近 token "" (EOF) 的第 101 列解析错误表达:“Reservations[].Instances[].[Tags[? Key== Name].Value[] | [0], [Tags[?Key== Billing by Role].Value[]]"

谢谢。

amazon-web-services aws-cli

1
推荐指数
2
解决办法
9165
查看次数