16

AWS VPC でを構成する方法を見つけようとするとaws_instance、次のエラーが発生します。

* Error launching source instance: InvalidParameterCombination: The parameter groupName cannot be used with the parameter subnet
    status code: 400, request id: []

また

* Error launching source instance: InvalidParameterCombination: VPC security groups may not be used for a non-VPC launch
    status code: 400, request id: []
4

4 に答える 4

15

これは、セキュリティ グループがインスタンスに関連付けられている方法によるものです。

サブネットがない場合は、セキュリティ グループの名前を使用して関連付けることができます。

resource "aws_instance" "server" {
  ...
  security_groups = [ "${aws_security_group.my_security_group.name}" ]
}

サブネットも関連付けられている場合、名前は使用できませんが、代わりにセキュリティ グループの ID を使用する必要があります。

security_groups = [ "${aws_security_group.my_security_group.id}" ]
subnet_id = "${aws_subnet.my_subnet.id}"

上記は、 という名前のセキュリティ グループと という名前my_security_groupのサブネットを作成したことを前提としています。my_subnet

于 2016-01-04T08:03:12.450 に答える
3

同様の問題に遭遇しました。

Security Group と Subnets の間には関係があり、どちらも VPC へのリンクです。したがって、「subnet1」にインスタンス (EC2 インスタンスなど) を作成するコマンドを実行すると、サブネット 1 が存在する「vpc1」にインスタンスが作成されます。セキュリティ グループを定義しない場合は、「default」が使用されます。 VPC のセキュリティ グループ。

サブネットと同じ vpc にないセキュリティ グループを割り当てようとすると複雑になる可能性があるため、サブネットを定義するときにセキュリティ グループを許可しない理由は理にかなっています。

ただし、AWS が少なくともサブネットと同じ VPC でセキュリティ グループを定義できるようにする方がよいでしょう。

于 2016-04-06T01:33:48.727 に答える
1

AWS VPC を設定するときは、サブネット ID とグループ ID のみを使用してください。

例:

resource "aws_instance" "forms_selenium_hub_dev" {
  ...
  subnet_id = "subnet-1a2b3c4d5e" # Subnet - Subnet ID 
  vpc_security_group_ids = ["sg-a1b2c3d4e5"] # Security Groups - Group ID
}
于 2015-07-22T17:20:36.933 に答える