勝手にAWS教室 1時間目:EC2
情報が古い場合があります。間違っている箇所がありましたらご教授いただけると幸いです。
AWSの中でも特に重要なサービスと言っても過言ではないのが、 Amazon EC2(Elastic Compute Cloud)です。
「なんとなく知ってるけど、細かい概念がごちゃごちゃになる...」という方、多いのではないでしょうか。
EC2自体の理解はできていてもそこに付随する内容が多いので人によってわからなくなったりしてしまうのではないかと。
今回はEC2のサービスの概要とそれに付随して理解が必要なところをピックアップして説明します。
先にまとめ
- AMI・インスタンス・EBS:設計図・建物・倉庫の関係
- 購入オプション3種:タクシー・定期券・新幹線の自由席
- セキュリティグループ vs NACL:警備員・入国審査の違い
- インスタンスタイプ:用途別の車の選び方
EC2とは何か
Amazon EC2とは、一言でいうと クラウド上の仮想サーバー です。
まずは仮想サーバーってなんだろうというところから...仮想とサーバーはまず区切って考えてください。
「サーバー」とは
Webサイトやアプリを動かすための 専用のコンピューター のことです。
普段みなさんが使っているパソコンと仕組みは同じですが、24時間稼働して、他のコンピューターにサービスを提供する役割を持っています。
仮想サーバーとは
1台の物理的なコンピューターの中に ソフトウェアの力で複数のサーバーを作る技術 です。
1つの大きなマンションを部屋ごとに区切って貸し出すようなイメージになります。
つまりは、24時間稼働するAWSのコンピューターの一部を私たちに貸してくれて、それを使ってWebサイトを公開したり、アプリを動かしたりできるサービスと思ってくれればいいです。
EC2はこの仮想サーバーをAWSのデータセンター上に作るので、世界中どこからでもインターネット経由でアクセスできます。
サイズや性能を自由に選べて、使った分だけお金を払う仕組みです。
1. AMI・インスタンス・EBSの関係
EC2を使い始めると、必ず出てくる相棒的な存在が3つ存在します。
- AMI(Amazon Machine Image)
- インスタンス
- EBS(Elastic Block Store)
早速「3つも覚えることあるんかい!」と思うかも知れませんがそうです、大事な概念になります(圧)。
まずはこれを 「設計図・建物・倉庫」 で覚えましょう。
AMI = 設計図(間取り図)
AMIは、サーバーを作るための テンプレート(設計図) です。
「どのOSを使うか(WindowsかLinuxか)」「どんなソフトウェアが入っているか」といった情報が詰まっています。
設計図なので、それ自体は使えません。設計図をもとに「建物」を建てて初めて使えます。
設計書作って何になるの?って思う人いるかも知れませんがこんないいことがあります。
- 同じ構成のサーバーを何台でもすぐに作れる — 1から設定し直す必要がない
- 環境の複製が簡単 — 本番と同じ構成のテスト環境をパッと用意できる
- 障害時の復旧が早い — サーバーが壊れても設計図から同じものをすぐ建て直せる
つまり「毎回ゼロから作らなくていい」のが最大のメリットです。
インスタンス = 建てられた建物
AMIという設計図をもとに 実際に起動したサーバー がインスタンスです。
同じ設計図から同じ間取りの家を何軒でも建てられるように、1つのAMIから複数のインスタンスを起動できます。
インスタンスは「電源を入れる(起動)」「電源を切る(停止)」「壊す(終了)」ができます。停止中は料金がかかりません(ただし後述のEBSは課金されます)。
AWSに関わってくると、「インスタンスを立てて」とか「インスタンス死んでない?」とかという言葉聞くことになるかと思いますが、これはインスタンスをサーバーに置き換えてもらえればいいです。「サーバー立てて」「サーバー死んでない?」ってことですね。
EBS = 外付けの倉庫
EBSは、インスタンスに取り付ける ストレージ(保存場所) です。
パソコンのHDDやSSDに相当します。インスタンスを停止してもデータは消えないのが特徴です。
インスタンスから切り離して、別のインスタンスに付け替えることもできます。まさに「外付けの倉庫」です。
PS2を思い出してください。
PS2のメモリーカードを抜いて別のPS2に挿せば、友達のデータでゲームが遊べちゃいましたね、あれのことです(世代がバレそう)。

© https://store.shopping.yahoo.co.jp/daichugame/ps2mc-black.html
3つの関係まとめ
| 用語 | 比喩 | 役割 |
|---|---|---|
| AMI | 設計図(間取り図) | サーバーのテンプレート |
| インスタンス | 建てられた建物 | 実際に動くサーバー |
| EBS | 外付けの倉庫 | データの保存場所 |
2. 購入オプション3種の違い
EC2には料金の払い方が3種類あります。
それぞれメリットデメリットがはっきりしているのですんなり入ってくる内容かなと思います。
また、この知識は今後の別のサービスでも出てきますので覚えておきましょう。
- オンデマンドインスタンス
- リザーブドインスタンス
- スポットインスタンス
これを 「タクシー・定期券・新幹線の自由席」 で覚えましょう。
オンデマンド = タクシー
乗った分だけ料金が発生します。予約不要で、使いたいときにすぐ使えます。
一番割高ですが、使い方を縛られないので 「とりあえず試してみたい」「いつ需要が来るかわからない」 というケースに最適です。
タクシーはどこでも拾えて便利ですが、毎日使うと家計に響きますよね。
常に使用できるというメリットはありますが、サーバー代が割引なしでかかります。
なので、コストを最適化したいって時は他の2つのオプションを選ぶことがあります。
リザーブド = 定期券
1年または3年の使用を 前もって予約(コミット) することで、オンデマンドより最大72%安くなります。
毎日決まった時間に同じ電車に乗るなら定期券を買った方がお得、というのと同じ発想です。「長期間、安定して使い続ける」 ワークロードに向いています。
定期券は先払いした分が無駄にならないよう、しっかり使い倒すことが前提です。
「やっぱり電車使わないや」というふうになったとしてもすでに支払いが完了しているので「お金返せ!」みたいなことはできません。
(定期券を売却するサービスというのもありますが、ここでは触れません。気になる人は「リザーブドインスタンスマーケットプレイス」と調べてみてください。)
スポット = 新幹線の自由席
AWSが余らせているキャパシティを 格安で使える 代わりに、席が保証されない仕組みです。最大90%引きという破格の安さです。
ただし、AWSが「そのキャパシティが必要になった」と判断したとき、2分前通知で強制終了 されます。
中断されても問題ない処理(バッチ処理・動画エンコードなど)に向いています。
新幹線の自由席は安いけど、混んできたら座れない。指定席(オンデマンド、リザーブド)なら確実に座れるけど高い、そんなイメージです。
とてつもなく安いのと引き換えに、めちゃめちゃ不安定なサーバーといえます。
使い方次第によってはとても大きなコスト最適化が可能になります。
3つの購入オプションまとめ
| オプション | 比喩 | 割引率 | 向いている用途 |
|---|---|---|---|
| オンデマンド | タクシー | なし | 短期・不定期な利用 |
| リザーブド | 定期券 | 最大72% | 長期・安定稼働 |
| スポット | 新幹線の自由席 | 最大90% | 中断可能なバッチ処理 |
3. セキュリティグループ vs NACL
EC2のセキュリティを語るうえで必ず登場する2つの概念です。
正直この2つはわかりにくいです。しっかりと絵で覚えてしまうのがいいかもしれません。
- セキュリティグループ(Security Group)
- NACL(Network Access Control List)
どちらも「通信を許可するか拒否するか」を制御するものですが、役割が違います。「警備員・入国審査」 で覚えましょう。
セキュリティグループ = 建物の警備員
セキュリティグループは、インスタンスに直接ついている警備員です。
重要な特徴は ステートフル(状態を記憶する)であること。
一度「この人は入っていいよ」と認めたら、帰るときもわざわざ確認しません。入りのルールだけ設定すれば、出も自動で許可されます。
警備員は「あ、さっき入っていった人だ」と顔を覚えているので、帰りにいちいち止めません。
また、セキュリティグループは 「許可する」ルールしか作れません(拒否ルールは作れない)。
拒否をしたい時は何も設定しなければ拒否する(許可されているルールがない、つまりは全て通さない)ということになります。
NACL = 入国審査
NACLは、サブネット(ネットワークを区切った小さなエリア)の出入口にある入国審査です。
重要な特徴は ステートレス(状態を記憶しない)であること。
入りのルールと出のルールをそれぞれ個別に設定する必要があります。入りを許可しても、出のルールを設定し忘れると通信できません。
入国審査は顔を覚えていないので、入国時も出国時もパスポートされます。そしてそこで拒否されていたら出国できません。
NACLは「許可」と「拒否」の両方のルールが作れます。
なので、IPアドレス(インターネット上の住所のようなもの)を指定して、この住所からは入れないよーみたいなこともできます。
2つのセキュリティ機能まとめ
| 項目 | セキュリティグループ | NACL |
|---|---|---|
| 比喩 | 建物の警備員 | 入国審査 |
| 適用範囲 | インスタンス単位 | サブネット単位 |
| ステート | ステートフル(状態を記憶) | ステートレス(状態を記憶しない) |
| ルールの種類 | 許可のみ | 許可・拒否の両方 |
4. インスタンスタイプの選び方
EC2にはたくさんの「インスタンスタイプ」があります。t3.microやm5.largeなど、暗号のような名前が並んでいますよね。
正直ここの暗記は実務では不要ですが、考え方を知っておくとインスタンス選びやコスト最適化に役立ちます。
これを 「用途別の車選び」 で覚えましょう。
名前の読み方
m5.large というタイプなら:
m → ファミリー名(用途)
5 → 世代(数字が大きいほど新しい)
large → サイズ(small < medium < large < xlarge...)
主要なファミリーと比喩
| ファミリー | 比喩 | 特徴 | 用途例 |
|---|---|---|---|
| t系(t3, t4g) | 軽自動車 | 汎用・コスパ重視 | 開発環境・小規模サイト |
| m系(m5, m6i) | ファミリーカー | CPUとメモリがバランス良い | 一般的なWebアプリ |
| c系(c5, c6g) | スポーツカー | CPU性能特化 | 動画変換・機械学習推論 |
| r系(r5, r6g) | 大型トラック | メモリ大容量 | データベース・キャッシュ |
| p系(p3, p4) | F1マシン | GPU搭載 | 機械学習トレーニング |
「今日の用途は何か」を先に決めれば、自然とファミリーが絞れます。日常使いに軽自動車を選ぶように、まずはt系やm系から検討するのが無難です。
たまにこのサービスにこのインスタンスタイプは必要ないだろというのがあったりします。
そんな時にぜひ声をあげて、インスタンスタイプの変更を検討しましょう。
ただ、無計画なインスタンスタイプの変更は処理を止めてしまう可能性があるので、そこは注意してください。
まとめ
| 概念 | 比喩 | 一言ポイント |
|---|---|---|
| AMI | 設計図 | インスタンスのテンプレート |
| インスタンス | 建てた建物 | 実際に動くサーバー |
| EBS | 外付け倉庫 | インスタンスを停止してもデータが残る |
| オンデマンド | タクシー | 使った分だけ。柔軟だが割高 |
| リザーブド | 定期券 | 長期コミットで最大72%割引 |
| スポット | 新幹線の自由席 | 最大90%割引だが突然終了あり |
| セキュリティグループ | 警備員 | ステートフル・インスタンス単位 |
| NACL | 入国審査 | ステートレス・サブネット単位 |
| t系 | 軽自動車 | 汎用・コスパ重視 |
| c系 | スポーツカー | CPU特化 |
| r系 | 大型トラック | メモリ特化 |
最後に
EC2は「クラウドの基本中の基本」とも言えるサービスです。今回紹介した4つの概念を押さえておくだけで、EC2は語れると思います...多分。
とりあえずEC2について聞かれたら「タクシー、定期券と新幹線の自由席のことですね!」と言ってみてください。これで伝わる人がいればそれはきっと元教員をしていたエンジニアです。
次回は Lambda について説明していきたいと思います。













