まあ、私は、AWSでのcloudformationテンプレートを見つけようとしています。AWS Cloudformation
はどこ私はそれで単一のサブネットとインスタンスとの3つのVPC年代を作成する必要があります。あなたがゲートウェイに一方向VPCから2と、このような1双方向接続でそれでinternetgatewayを有する場合:
まあ、私は、AWSでのcloudformationテンプレートを見つけようとしています。AWS Cloudformation
はどこ私はそれで単一のサブネットとインスタンスとの3つのVPC年代を作成する必要があります。あなたがゲートウェイに一方向VPCから2と、このような1双方向接続でそれでinternetgatewayを有する場合:
あなたは定型VPCをすぐに開始するAWS Quick StartのAmazon VPC Architecturetemplateを活用することができます建築。このAWS-サポートテンプレートが指定された各アベイラビリティゾーン内のパブリック(2ウェイ)とプライベート(1ウェイ、アウトバウンドインターネットのみ)サブネット(あなたがパラメータとして2-4アベイラビリティゾーンを提供)の両方を含む単一のVPCを作成します。クイックスタートから始め、必要に応じて特定のニーズに合わせてカスタマイズすることをお勧めします。
使用可能なゾーンを2つ指定し、SubnetAとSubnetBの各AZでプライベートサブネットを使用し、SubnetCのAZの1つにパブリックサブネットを使用することができます。
は(注: Iは、単一のアプリケーションのために3つの別々のVPCを作成に対してを勧め個別サブネットは、インターネットGetwaysのような多くの不必要な追加のリソースが3つの別々のVPCの複製を作成し、適切なネットワークの分離を提供し、limit of 5 VPCs per region per AWS accountがあります。 。)
ここnested stackとして直接クイックスタートテンプレートを使用して、完全な作業例です:
Description: Create a VPC with 2 private and 1 public subnets, with an EC2 instance in each.
Mappings:
RegionMap:
us-east-1:
# amzn-ami-hvm-2016.09.1.20161221-x86_64-gp2
"opal": "ami-9be6f38c"
"rstudio": "ami-9be6f38c"
Parameters:
InstanceType:
Description: EC2 instance type
Type: String
Default: t2.medium
AllowedValues: [t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge,
m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge,
c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge,
r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge]
ConstraintDescription: Please choose a valid instance type.
AvailabilityZones:
Description: List of 2 Availability Zones to use for the subnets in the VPC.
Type: "List<AWS::EC2::AvailabilityZone::Name>"
KeyPairName:
Description: Public/private key pair to provide SSH access to the EC2 instances.
Type: "AWS::EC2::KeyPair::KeyName"
Resources:
VPCStack:
Type: AWS::CloudFormation::Stack
Properties:
TemplateURL: 'https://s3.amazonaws.com/quickstart-reference/aws/vpc/latest/templates/aws-vpc.template'
Parameters:
AvailabilityZones: !Join [',', !Ref AvailabilityZones]
KeyPairName: !Ref KeyPairName
NumberOfAZs: 2
SecurityGroup:
Type: AWS::EC2::SecurityGroup
Properties:
GroupDescription: VPC Security Group
VpcId: !GetAtt VPCStack.Outputs.VPCID
OpalServer1:
Type: AWS::EC2::Instance
Properties:
ImageId: !FindInMap [ RegionMap, !Ref "AWS::Region", opal]
InstanceType: !Ref InstanceType
SecurityGroupIds: [!Ref SecurityGroup]
SubnetId: !GetAtt VPCStack.Outputs.PrivateSubnet1AID
KeyName: !Ref KeyPairName
OpalServer2:
Type: AWS::EC2::Instance
Properties:
ImageId: !FindInMap [ RegionMap, !Ref "AWS::Region", opal]
InstanceType: !Ref InstanceType
SecurityGroupIds: [!Ref SecurityGroup]
SubnetId: !GetAtt VPCStack.Outputs.PrivateSubnet2AID
KeyName: !Ref KeyPairName
RStudioClient:
Type: AWS::EC2::Instance
Properties:
ImageId: !FindInMap [ RegionMap, !Ref "AWS::Region", rstudio]
InstanceType: !Ref InstanceType
SecurityGroupIds: [!Ref SecurityGroup]
SubnetId: !GetAtt VPCStack.Outputs.PublicSubnet1ID
KeyName: !Ref KeyPairName
私はあなたの参照のためのリンクを共有しています要件ごとにあなたはAWSが提供する既製のテンプレートを使用し、それらを変更することができます。
注:Cloudformationは、構文のJSONベースの世話で
あなたがのためにテンプレートを作成するCloudFormerを使用することができ、図のように、このような環境をすでに展開している場合君は。
http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-using-cloudformer.html
カスタムパラメータを渡したい場合はさらに、あなたはCloudFormerによって生成されたテンプレートを変更し、パラメータ
http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html
を宣言することができ、私はあなたがそこに定型Cloudformationを見つけることができません推測していますこの正確なトポロジに適合しますが、簡単に自分で作成することができます。一方向の接続のうちのためには、NATゲートウェイを使用したいと思うでしょう、と双方向のため、単にインターネットゲートウェイに直接VPCのルートを持っている(またはELBを使用したり、リバースプロキシ、セキュリティ状況に応じて、あなたが利用したいです。) – KevinSeaman