はじめに
特定のSubnetにEC2を起動するためのCloudFormationを利用して作成します。
テンプレートの作成
CloudFormationでリソースを作成するためのテンプレートを作成します。
MyEC2.yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: Create EC2 Instance
Resources:
MyEC2Instance:
Type: AWS::EC2::Instance
Properties:
ImageId: ami-aaaaaaaaaaaaaaaa
InstanceType: t3a.micro
SubnetId: subnet-aaaaaaaaaaaaaaaa
IamInstanceProfile: role-managed-ec2
SecurityGroupIds:
- sg-aaaaaaaaaaaaaaaa
Tags:
- Key: "Name"
Value: "My EC2"
- Key: "Costs"
Value: "AAA"
利用するパラメータなど
基本的にはこちらのリファレンスを参照します。
ImageID
起動の元となるAMIを指定する。自前のAMIはもちろんコミュニティAMIも利用可能。
InstanceType
インスタンスタイプを指定する。
SubnetId
設置対象のサブネットを指定する。指定しない場合はデフォルトVPCのデフォルトサブネットが設定される。
IamInstanceProfile
EC2に付与するIAMロール。SystemManagerやCloudWatch関連が必要なら。
SecurityGroupIds
EC2にアタッチするセキュリティグループ。複数設定が可能です。
スタックの作成
CloudFormationのコンソールからyamlファイルを読み込んでスタックを作成します。
おわりに
とりあえず狙ったEC2を構築することはできるようになりました。もう少々研究が必要です
参考文献