▪️目的
AWSでEC2を利用していると、「AMI」という言葉を目にすることがあります。
EC2について調べていると、
- AMIって何?
- EC2とAMIはどういう関係?
- EBSとAMIは何が違うの?
- AMIからEC2を作るってどういうこと?
- 自分でAMIを作ることはできるの?
と疑問に思う方も多いのではないでしょうか。
AMIは、EC2を構築するときに重要になる仕組みです。
この記事では、AWS初心者の方向けに、AMIの基本的な仕組みからEC2との関係、EBSとの違い、カスタムAMIの作成まで分かりやすく解説します。
▪️AMIとは?
AMIとは、Amazon Machine Imageの略です。
簡単にいうと、
EC2を作成するときに利用するテンプレート
です。
EC2を作成するときには、
「どのOSを使うのか?」
を選択します。
例えば、
- Amazon Linux
- Ubuntu
- Windows Server
などです。
このときに利用するOSのイメージが、AMIです。
イメージとしては、
AMI
│
├─ OS
├─ ソフトウェア
├─ 設定
└─ その他の情報
↓
EC2を作成
という関係になります。
▪️AMIとEC2の関係
AMIとEC2はセットで考えると分かりやすいです。
例えば、Amazon LinuxのAMIを利用してEC2を作成するとします。
Amazon Linux AMI
│
▼
EC2を作成
│
▼
Amazon LinuxのEC2
つまりAMIは、
「この状態のEC2を作りたい」
というときに利用する元データのようなものです。
EC2そのものではありません。
ここは重要なポイントです。
AMI
↓
EC2を作るためのテンプレート
EC2
↓
実際に動作する仮想サーバー
という違いがあります。
▪️EC2を作成するときにAMIを選択する
AWSコンソールからEC2を作成するときには、最初にAMIを選択します。
例えば、
EC2を起動
① AMIを選択
↓
② インスタンスタイプを選択
↓
③ ネットワークを設定
↓
④ ストレージを設定
↓
⑤ セキュリティグループを設定
↓
⑥ EC2を起動
という流れです。
以前の記事で紹介した、
- インスタンスタイプ
- VPC
- Subnet
- Security Group
- EBS
などと組み合わせてEC2を構築します。
▪️AMIには何が含まれる?
AMIには、EC2を作成するために必要な情報が含まれています。
例えば、
AMI
│
├─ OS
├─ OSの設定
├─ インストール済みソフトウェア
└─ EBSの情報
などです。
例えば、自分でUbuntuのEC2を構築して、
Ubuntu
+
Docker
+
AWS CLI
+
各種設定
という環境を作ったとします。
この状態からAMIを作成しておけば、そのAMIを利用して同じような構成のEC2を作成できます。
▪️AMIからEC2を作成するイメージ
例えば、以下のようなEC2を作ったとします。
EC2
│
├─ Ubuntu
├─ Docker
├─ AWS CLI
└─ アプリケーション
このEC2を元にAMIを作成します。
EC2
│
│ AMIを作成
▼
AMI
そのAMIを使って、新しいEC2を作成できます。
AMI
/ \
▼ ▼
EC2-1 EC2-2
このように、同じ環境のEC2を複数作成できます。
▪️カスタムAMIとは?
AWSが用意しているAMIだけではなく、自分でAMIを作成することもできます。
これを一般的にカスタムAMIと呼びます。
例えば、
Amazon Linux
↓
EC2を構築
↓
必要なソフトウェアをインストール
↓
設定を変更
↓
カスタムAMIを作成
という流れです。
例えば、
EC2
├─ Amazon Linux
├─ Docker
├─ AWS CLI
├─ アプリケーション
└─ 各種設定
という環境を作った後にAMIを作成します。
すると、
カスタムAMI
│
┌───┴───┐
▼ ▼
EC2-1 EC2-2
のように、同じ環境を持ったEC2を作成できます。
▪️カスタムAMIを利用するメリット
カスタムAMIの大きなメリットは、EC2の構築を効率化できることです。
例えば、毎回EC2を作るたびに、
OSを用意
↓
Dockerをインストール
↓
AWS CLIをインストール
↓
設定変更
↓
アプリケーションを配置
と作業するのは大変です。
そこで、あらかじめ設定済みのAMIを作っておきます。
カスタムAMI
│
├── EC2
├── EC2
└── EC2
このようにすれば、同じような環境を効率よく作成できます。
▪️AMIとEBSの関係
ここは少し混乱しやすいポイントです。
前回の記事で説明したEBSは、EC2で利用するストレージです。
一方、AMIはEC2を作成するためのイメージです。
簡単に整理すると、
EBS
↓
EC2で利用するディスク
AMI
↓
EC2を作成するためのテンプレート
という違いがあります。
例えば、
AMI
│
└─ EBSの情報
│
▼
EC2作成
│
▼
EBS
という関係になります。
AMIを利用してEC2を起動すると、そのAMIに定義されたルートデバイスなどをもとに、EC2で利用するストレージが用意されます。
▪️AMIとEBSスナップショットの違い
EBSの記事で紹介したEBSスナップショットも、AMIと関係があります。
EBSスナップショットは、
EBSボリュームのデータを保存したもの
です。
一方AMIは、
EC2を作成するために必要な情報をまとめたイメージ
です。
そのため、
EBS
│
└─ スナップショット
↓
EBSの状態を保存
AMI
│
├─ EBSに関する情報
└─ EC2を作成するための情報
↓
EC2を作成
というように役割が異なります。
特にEBS-backed AMIでは、AMIを作成する過程でEBSスナップショットが利用されます。
そのため、
「AMI=EBSスナップショットそのもの」ではない
という点を覚えておきましょう。
▪️AMIを利用したシステム構築
AMIは、複数のEC2を同じ構成で用意したい場合にも便利です。
例えばWebサーバーを2台用意するとします。
ALB
│
┌──────┴──────┐
▼ ▼
EC2-1 EC2-2
│ │
└─────┬───────┘
│
同じAMI
EC2-1とEC2-2を同じAMIから作成すれば、同じOSやソフトウェア構成を持ったEC2を用意しやすくなります。
このような仕組みは、複数台のサーバーを構築するときに役立ちます。
▪️Auto ScalingとAMI
AMIは、Auto Scalingとも相性が良いです。
Auto Scalingでは、負荷に応じてEC2の台数を増減させることができます。
例えば、
アクセス増加
↓
EC2を追加
↓
AMIから新しいEC2を作成
というような仕組みを構築できます。
あらかじめ必要なソフトウェアや設定を組み込んだAMIを用意しておけば、新しく起動するEC2でも同じような環境を作りやすくなります。
そのためAMIは、EC2を大量に同じ構成で起動したい場合にも重要になります。
▪️AMIを利用するときの注意点
AMIを利用するときには、いくつか注意するポイントがあります。
① AMIにはリージョンの考慮が必要
AMIはリージョンを意識して利用する必要があります。
例えば、
東京リージョン
│
└─ AMI
として作成したAMIを、別のリージョンでそのまま利用できるとは限りません。
別リージョンで利用したい場合には、AMIをコピーするなどの対応が必要になります。
② AMIの中身を更新する必要がある
カスタムAMIを利用する場合、
古いAMI
をそのまま使い続けてしまうと、
- OSのアップデート
- セキュリティパッチ
- ミドルウェアの更新
- アプリケーションの更新
などが反映されない可能性があります。
そのため、本番環境ではAMIをどのように更新・管理するのかを考える必要があります。
③ AMIを削除しても関連リソースを意識する
AMIを利用している場合、AMIそのものだけではなく、関連するEBSスナップショットなども管理対象になります。
不要になったAMIや関連スナップショットを放置すると、不要なコストにつながる可能性があります。
そのため、
不要になったAMIやスナップショットを定期的に整理する
ことも重要です。
▪️AMIを理解するとEC2の仕組みが見えてくる
ここまで説明してきた内容を整理すると、
AMI
│
▼
EC2を作成
│
┌──────┼──────┐
▼ ▼ ▼
CPU Memory EBS
│
▼
データ
という関係になります。
さらにEC2には、
EC2
│
├─ コンピュート
│
├─ ネットワーク
│ ├─ VPC
│ ├─ Subnet
│ ├─ Route Table
│ └─ Security Group
│
└─ ストレージ
└─ EBS
などが関係しています。
そしてAMIは、
「どのような状態のEC2を作るのか」
を決めるための重要な要素です。
▪️まとめ
今回は、AWSのAMIについて解説しました。
AMIは、EC2を作成するためのテンプレートとなるイメージです。
ポイントを整理すると、
- AMIはAmazon Machine Imageの略
- EC2を作成するときに利用する
- OSやソフトウェアなど、EC2の構成に関する情報を含む
- AWSが提供するAMIだけでなく、自分でカスタムAMIを作成できる
- カスタムAMIを利用すると、同じ構成のEC2を効率よく作成できる
- EBSはEC2で利用するストレージ、AMIはEC2を作成するためのテンプレート
- EBSスナップショットとAMIは関連するが、同じものではない
- Auto Scalingなど、複数のEC2を起動する仕組みでもAMIが利用される
- AMIを運用する場合は、更新や不要なリソースの整理も重要
AWSでは、EC2を1台作って終わりではなく、同じ構成のサーバーを効率よく作成したり、必要に応じて増減させたりする仕組みが用意されています。
AMIは、そのようなEC2の構築・運用を支える重要な仕組みの一つです。
次回は、AWSでデータを保存する代表的なサービスであるS3について解説します。
*「S3」の記事はこちら
→「https://lovelabengineer.com/2026/10/08/awsのs3とは?オブジェクトストレージの仕組みを初/」

No responses yet