セキュリティグループ付きのEC2インスタンスをcloudformationで作成する
こんにちは、つじたく(@Tsuji_Taku50)です。
今回はcloudformationを利用して、sshで接続できるEC2インスタンスを作成しました。
cloudformationについて前にブログで書いたので、そちらを御覧ください。 tsujitaku50.hatenablog.com
今回もyamlで書きました。
公式ドキュメント
EC2インスタンスはこちら docs.aws.amazon.com
セキュリティーグループこちら docs.aws.amazon.com
ソースコード
リージョンは「米国東部 (オハイオ)」を選択しています。
--- AWSTemplateFormatVersion: '2010-09-09' Description: It is an instance Resources: # インスタンス Instance: Type: "AWS::EC2::Instance" Properties: AvailabilityZone: us-east-2a ImageId: ami-c55673a0 InstanceType: t2.nano KeyName: xxx SecurityGroups: - default - !Ref InstanceSecurityGroup # セキュリティーグループ InstanceSecurityGroup: Type: "AWS::EC2::SecurityGroup" Properties: GroupDescription: ssh SecurityGroupIngress: - IpProtocol: "tcp" FromPort: "22" ToPort: "22" CidrIp: "xxxx"
上記のソースコードは
sshで接続するセキュリティーグループを付属させたEC2インスタンスを作成することができます。
KeyName : キーペア名を記載する
CidrIp : 接続を許可したいIPアドレスを記載する
!Ref
は同じyamlファイルの中で定義された関数を使用することができます。
今回の例で言うと、InstanceSecurityGroup
をInstance
に付属させています。
このようにすることで、インスタンス作成した時にセキュリティーグループを付属させた状態で作成することが可能です。
まとめ
このテンプレートと一度用意しておけば、次からはすぐにsshで接続できるEC2インスタンスを作成することができるのでめちゃくちゃ便利です!
何か思いついたときにサクッとインスタンスが欲しいなーなんてときはいいですね。
おわり!!