2016-11-29 8 views
0

私は自分の画像(AMI)から新しいインスタンスの新しいテンプレート(*.json- see ettach)を作成しました。EC2インスタンスを既存のセキュリティグループ、エラスティックIP、およびVPCに自動的に追加するにはどうすればよいですか?

既存のセキュリティグループ、elastic ip、およびVPCにインスタンスを自動的に追加するにはどうすればよいですか?

おかげ

{ 
"AWSTemplateFormatVersion": "2010-09-09", 
"Description": "Ec2 block device mapping", 
"Resources": { 
    "MyEC2Instance": { 
     "Type": "AWS::EC2::Instance", 
     "Properties": { 
      "ImageId": "ami-1ff5111", 
      "AvailabilityZone": "us-west-1a", 
      "KeyName": "Test", 
      "Tags": [{ 
       "Key": "Name", 
       "Value": "RoiTest" 
      }] 
     } 
    }, 
+0

ありがとうございます。ありがとうございました – ROIR

答えて

1

CloudFormation User GuideResource Types Reference sectionは、そのようなあなたが約求めているものなどの詳細を検索するための良い出発点です。具体的には、AWS:EC2:InstanceAWS::EC2::EIPAssociationの参照を確認する必要があります。

EC2インスタンスをVPCセキュリティグループに関連付けるには、SecurityGroupIdsプロパティを追加します。 VPC内でインスタンスを作成するには、サブネット(実際にはVPCに関連付けられている)を定義する必要があるため、SubnetIdプロパティを追加します。最後に、EIPアソシエーションリソースを作成するインスタンスにエラスティックIPを関連付けます。あなたは、複数のセキュリティグループを使用してインスタンスを持つことができますので、SecurityGroupIdsプロパティの値が配列であることを指すように役に立つかもしれない

{ 
    "AWSTemplateFormatVersion": "2010-09-09", 
    "Description": "Ec2 block device mapping", 
    "Resources": { 
    "MyEC2Instance": { 
     "Type": "AWS::EC2::Instance", 
     "Properties": { 
     "ImageId": "ami-1ff5111", 
     "AvailabilityZone": "us-west-1a", 
     "SubnetId": "<your existing subnet id here>", 
     "SecurityGroupIds": [ "<your existing security group id here>" ], 
     "KeyName": "Test", 
     "Tags": [{ 
      "Key": "Name", 
      "Value": "RoiTest" 
     }] 
     } 
    }, 
    "MyEIPAssociation": { 
     "Type": "AWS::EC2::EIPAssociation", 
     "Properties": { 
     "AllocationId": "<your existing elastic IP allocation id here>", 
     "InstanceId": { "Ref": "MyEC2Instance" } 
     } 
    }, 
    ... (other resources in your template) 
    } 
} 

これはあなたのテンプレートがどのように見えるかです。

+0

ありがとうございました!それは部分的に機能します。 Imはまだ用意されている既存のセキュリティグループを関連付けることはできません コード内でこれを書く場所はどこですか? – ROIR

+0

EC2インスタンスをVPC内に作成する場合は、同じVPC内のセキュリティグループにのみ関連付けることができます。既存のセキュリティグループがVPCセキュリティグループであり、EC2インスタンスを作成している同じVPCに関連付けられていることを確認してください。 – rbarni

+0

まず、ありがとうございます。私はec2インスタンスをvpcに作成していません。どうすればいいですか?、私のjsonテンプレートでwirteする必要がありますか?もちろん、担保グループも必要です。私はテンプレートを始めたら新しいインスタンスを持っていましたが、どのvpcのセキュリティグループにも関連付けられていませんでした。私を助けてください :) – ROIR

関連する問題