かべぎわブログ

技術的なことについてかけたらいいな…

CloudFormationで自動割り当てパブリックIPを有効にしてインスタンスを構築する

Amazon Web Services実践入門 (WEB+DB PRESS plus)

Amazon Web Services実践入門 (WEB+DB PRESS plus)

今回はCloudFormationで自動割り当てパブリックIP(パブリックDNS)を有効にしてEC2インスタンスを構築してみたいと思います。

コード

CloudFormation

コードの説明

  • AvailabilityZone - ap-northeast-1aのようにリージョンも含めた記載で書きます。このAZにインスタンスが構築されます。
  • ImageId - インスタンス構築に利用するAMIのIDです。
  • InstanceType - そのまま構築したいインスタンスタイプを指定します。
  • KeyName - 構築したインスタンスにログインするためのキーペア名を指定します。
  • NetworkInterfaces - ENIの設定です。自動割り当てパブリックIPを有効化はENIの項目で設定します。
  • AssociatePublicIpAddress - 自動割り当てパブリックIPの設定です。trueで有効可です。
  • DeviceIndex - 設定を行うENIの番号です。最初にアタッチしたものから0,1,2と連番でふられます。
  • SubnetId - インスタンスを配置するサブネットのIDを指定します。
  • GroupSet - インスタンスにアタッチするセキュリティグループを指定します。複数個指定できます。

注意点

NetworkInterfaceの設定をする際はSecurityGroupIdsの項目は使えません。
こんなかんじのエラーになります。

Network interfaces and an instance-level security groups may not be specified on the same request

GroupSetにアタッチしたいセキュリティグループを指定する必要があります。

まとめ

自動割り当てパブリックIP(パブリックDNS)を有効にしてEC2インスタンスを構築することができました。

マネジメントコンソールをポチポチしていると気が付きませんが、インスタンスの設定なのか、ENIの設定なのか、他の設定なのかといろいろ別れています。
CloudFormationを利用することでAWSのサービスがより深く理解できると思います。

Amazon Web Services実践入門 (WEB+DB PRESS plus)

Amazon Web Services実践入門 (WEB+DB PRESS plus)