カテゴリ: AWS 更新日: 2026/01/18

AWS CloudFormation(クラウドフォーメーション)でEC2(イーシーツー)インスタンスを自動作成する方法を完全解説

AWS CloudFormationでEC2インスタンスを自動作成する方法
AWS CloudFormationでEC2インスタンスを自動作成する方法

先生と生徒の会話形式で理解しよう

生徒

「AWS(エーダブリューエス)でサーバーを作るときって、毎回画面をポチポチ操作しないといけないんですか?」

先生

「AWS CloudFormation(クラウドフォーメーション)を使えば、画面操作をしなくてもEC2(イーシーツー)インスタンスを自動で作れますよ。」

生徒

「自動で作れるんですか?プログラミング初心者でもできますか?」

先生

「大丈夫です。テンプレートという設計図を書くだけなので、順番に見ていきましょう。」

1. AWS CloudFormation(クラウドフォーメーション)とは?

1. AWS CloudFormation(クラウドフォーメーション)とは?
1. AWS CloudFormation(クラウドフォーメーション)とは?

AWS CloudFormation(クラウドフォーメーション)は、AWS(エーダブリューエス)のインフラ構成を自動化するためのサービスです。サーバーやネットワークを人の手で作るのではなく、文章で書いた設定をもとにAWSが自動で環境を作ってくれます。

このような考え方は「インフラ自動化」や「Infrastructure as Code(インフラストラクチャー・アズ・コード)」と呼ばれ、最近のクラウド運用では欠かせない技術です。

2. EC2(イーシーツー)インスタンスの基本を理解しよう

2. EC2(イーシーツー)インスタンスの基本を理解しよう
2. EC2(イーシーツー)インスタンスの基本を理解しよう

EC2(イーシーツー)とは、AWS上で使える仮想サーバーのことです。パソコンの中にもう一台パソコンを作るようなイメージで、Webサイト公開やアプリ実行に使われます。

CloudFormation(クラウドフォーメーション)を使うことで、このEC2インスタンスを「何台」「どんな性能で」「どのOSで作るか」をまとめて指定できます。

3. CloudFormationテンプレートの仕組み

3. CloudFormationテンプレートの仕組み
3. CloudFormationテンプレートの仕組み

CloudFormation(クラウドフォーメーション)では「テンプレート」と呼ばれる設定ファイルを使います。テンプレートはYAML(ヤメル)またはJSON(ジェイソン)形式で書きます。

テンプレートには、EC2インスタンスの種類、AMI(エーエムアイ)、インスタンスタイプ、セキュリティ設定などをまとめて記述します。これが設計図の役割を果たします。

4. EC2インスタンスを作成するテンプレート例

4. EC2インスタンスを作成するテンプレート例
4. EC2インスタンスを作成するテンプレート例

以下は、最小構成でEC2(イーシーツー)インスタンスを自動作成するCloudFormation(クラウドフォーメーション)テンプレート例です。


AWSTemplateFormatVersion: '2010-09-09'
Description: EC2 instance sample

Resources:
  MyEC2Instance:
    Type: AWS::EC2::Instance
    Properties:
      ImageId: ami-0abcdef1234567890
      InstanceType: t2.micro

このテンプレートでは、AMI(エーエムアイ)と呼ばれるOSの元になるイメージと、インスタンスの性能を指定しています。t2.microは無料枠でも使われることが多いサイズです。

5. AWSマネジメントコンソールから実行する方法

5. AWSマネジメントコンソールから実行する方法
5. AWSマネジメントコンソールから実行する方法

AWSマネジメントコンソールからCloudFormation(クラウドフォーメーション)を開き、「スタックの作成」を選びます。そこに先ほどのテンプレートを貼り付けるだけで準備は完了です。

画面の指示に従って進めると、数分後にはEC2(イーシーツー)インスタンスが自動的に作成されます。手動操作と比べて、作業ミスが減るのが大きなメリットです。

6. コマンドラインでCloudFormationを実行する

6. コマンドラインでCloudFormationを実行する
6. コマンドラインでCloudFormationを実行する

AWS CLI(エーダブリューエス・シーエルアイ)を使えば、コマンド操作でもEC2インスタンスを作成できます。サーバー管理や自動化に慣れてきたら便利です。


aws cloudformation create-stack \
--stack-name sample-ec2-stack \
--template-body file://ec2.yml
{
    "StackId": "arn:aws:cloudformation:..."
}

7. CloudFormationを使うメリット

7. CloudFormationを使うメリット
7. CloudFormationを使うメリット

CloudFormation(クラウドフォーメーション)を使う最大のメリットは、同じ構成を何度でも再現できる点です。テスト環境、本番環境を同じ設定で簡単に作れます。

また、設定内容が文章として残るため、後から見返しても内容が分かりやすく、チーム作業にも向いています。

8. 初心者がつまずきやすいポイント

8. 初心者がつまずきやすいポイント
8. 初心者がつまずきやすいポイント

初心者がつまずきやすいのは、AMI(エーエムアイ)IDの指定ミスや、リージョン違いです。AMIは地域ごとに異なるため、使うリージョンに合ったものを選ぶ必要があります。

エラーが出た場合は、CloudFormationのイベント画面を見ることで原因を確認できます。焦らず一つずつ確認することが大切です。

カテゴリの一覧へ
新着記事
New1
ファイル・ディレクトリ構造
Linuxのファイル構造とは?初心者向けにディレクトリ構造の全体像を徹底解説
New2
CloudFormation(インフラ自動化)
AWS CloudFormation(クラウドフォーメーション)でEC2(イーシーツー)インスタンスを自動作成する方法を完全解説
New3
シェルとターミナル基礎
bashとは?Linuxで標準的に使われる理由を初心者向けに完全解説
New4
CloudFormation(インフラ自動化)
AWS CloudFormationテンプレートの構文を完全解説!YAMLとJSONの書き方を初心者向けにやさしく理解
人気記事
No.1
Java&Spring記事人気No1
S3(オブジェクトストレージ)
AWS S3の料金体系をわかりやすく解説
No.2
Java&Spring記事人気No2
AWS 基本
AWSの公式料金計算ツール(Pricing Calculator)の使い方
No.3
Java&Spring記事人気No3
S3(オブジェクトストレージ)
AWS S3のデータ保護(オブジェクトロック・WORM設定)を初心者向けにやさしく解説
No.4
Java&Spring記事人気No4
Direct Connect(専用線接続)
AWS Direct Connectのルーティング設計(BGP設定の基本)を初心者向けにやさしく解説
No.5
Java&Spring記事人気No5
VPC(プライベートクラウド)
AWS VPCでNATゲートウェイを構成してプライベートサブネットから外部アクセスする方法を初心者向けに解説!
No.6
Java&Spring記事人気No6
RDS(データベース)
AWS RDSのメンテナンスウィンドウの設定方法を解説!初心者でもできるクラウドデータベースの管理
No.7
Java&Spring記事人気No7
S3(オブジェクトストレージ)
AWS S3のアクセスログを有効化する方法をやさしく解説!初心者でもできる設定手順
No.8
Java&Spring記事人気No8
AWS 基本
AWSのサービスのステータス確認方法(AWS Health Dashboard)