AWS SDK:请求具有 public IP 和安全组的 spot 实例
AWS SDK: Request spot instance with public IP and security groups
我正在编写一个脚本来自动执行 spot 实例请求。我正在尝试实现通常通过控制台获得的相同效果。更准确地说,实例通常具有以下特征:
- 属于非默认VPC
- 它属于特定的安全组
- 它有一个 public IP 地址
我正在使用ruby + the AWS SDK EC2 Client来达到目的。目前,我使用的选项是:
options = {
:spot_price => "0.6",
:instance_count => 1,
:type => "one-time",
:launch_specification => {
:key_name => "wathever",
:image_id => "ami-wathever",
:instance_type => "cx.xwathever",
:network_interfaces => [
{
:device_index => 0,
:delete_on_termination => true,
:subnet_id => "subnet-wathever",
:associate_public_ip_address => true
}
],
:security_group_ids => ["sg-wathever"],
}
}
这种方法的唯一问题是我在发出请求后收到此错误
Network interfaces and an instance-level security groups may not be
specified on the same request
我现在有点迷茫,因为从控制台看它的工作方式不同。在 1 个请求中,我可以为实例指定安全组和 public IP。通过 AWS SDK 虽然这似乎是不可能的。
这是 AWS 工具对齐的问题还是我只是做错了什么?
Network interfaces and an instance-level security groups may not be specified on the same request
"instance-level" 位在这里暗示的是,如果您显式配置网络接口,则需要配置将应用的安全组每个网络接口(使用个别网络接口规范上的 groups
设置)。顶级 security_group_ids
设置仅在您接受默认网络接口配置时才有效。
我正在编写一个脚本来自动执行 spot 实例请求。我正在尝试实现通常通过控制台获得的相同效果。更准确地说,实例通常具有以下特征:
- 属于非默认VPC
- 它属于特定的安全组
- 它有一个 public IP 地址
我正在使用ruby + the AWS SDK EC2 Client来达到目的。目前,我使用的选项是:
options = {
:spot_price => "0.6",
:instance_count => 1,
:type => "one-time",
:launch_specification => {
:key_name => "wathever",
:image_id => "ami-wathever",
:instance_type => "cx.xwathever",
:network_interfaces => [
{
:device_index => 0,
:delete_on_termination => true,
:subnet_id => "subnet-wathever",
:associate_public_ip_address => true
}
],
:security_group_ids => ["sg-wathever"],
}
}
这种方法的唯一问题是我在发出请求后收到此错误
Network interfaces and an instance-level security groups may not be specified on the same request
我现在有点迷茫,因为从控制台看它的工作方式不同。在 1 个请求中,我可以为实例指定安全组和 public IP。通过 AWS SDK 虽然这似乎是不可能的。
这是 AWS 工具对齐的问题还是我只是做错了什么?
Network interfaces and an instance-level security groups may not be specified on the same request
"instance-level" 位在这里暗示的是,如果您显式配置网络接口,则需要配置将应用的安全组每个网络接口(使用个别网络接口规范上的 groups
设置)。顶级 security_group_ids
设置仅在您接受默认网络接口配置时才有效。