在 Terraform 中,如何为 Spot 队列请求指定 AWS 安全组?

In Terraform, how do I specify the AWS security group for a spot fleet request?

我使用 spot_fleet_request 资源成功生成了一个 AWS 现货队列。但是,它创建的 EC2 实例使用 default 安全组,但我没有看到为资源指定安全组的选项。通过 AWS 控制台创建 spot 队列请求时,有一个选项可以指定安全组。

我是不是漏掉了什么?

他们在 spot_fleet_request 的文档中提到了它:

launch_specification - Used to define the launch configuration of the spot-fleet request. Can be specified multiple times to define different bids across different markets and instance types. Note: This takes in similar but not identical inputs as aws_instance. There are limitations on what you can specify. See the list of officially supported inputs in the reference documentation. Any normal aws_instance parameter that corresponds to those inputs may be used and it have a additional parameter iam_instance_profile_arn takes aws_iam_instance_profile attribute arn as input.

本质上 launch_specification 可以接受 the SpotFleetLaunchSpecification in the AWS docs 中引用的任何参数。例如:vpc_security_group_ids

您也可以随时检查 aws provider on github 的 go 代码以检查可用的选项。