AWSクラウド・インフラ・開発基盤

【Udemy AWS 14 days】Day2の知識整理:Amazon EC2

AWS

Amazon EC2とは何か?

Amazon EC2(Elastic Compute Cloud)は、Amazon Web Services (AWS) が提供するクラウドコンピューティングサービスの一つであり、仮想サーバー構築サービスです。EC2という名称は、Elastic Compute CloudのCが2つあることに由来します。

EC2は、AWSの IaaS (Infrastructure as a Service) の一つとして位置づけられています。EC2を最も簡単に例えるなら、インターネット上でいつでも借りられる高性能なパソコンです。

従来、サーバーの準備には物理的なサーバーマシンの購入や設置が必要でしたが、EC2を利用することで、ユーザーは数クリックするだけで、数分以内に自分専用の仮想サーバーを立ち上げることができます。

EC2を利用する上での仮想サーバーは「インスタンス」という単位で呼ばれます。EC2インスタンスは、ウェブサーバー、アプリケーションサーバー、データベースサーバーなど、さまざまな用途に利用可能です。AWS管理のデータセンター上にあるホスト(物理マシン)に、Hypervisor層を介してEC2インスタンスが構築されています。

EC2のメリット

EC2を使用する主なメリットと基本概念は以下の通りです。

メリット説明
(1) 柔軟性とスケーラビリティ必要なだけサーバーを追加・削除でき、負荷に応じてインスタンスの数やサイズを調整可能です。サーバーのスペックアップや台数の増加が容易なため、トラフィックが急増しても遅延やエラーを防ぐことができます。
(2) 費用効率(従量課金制)利用した分だけ支払う従量課金制が基本です。必要なときにだけインスタンスを起動すれば、料金は起動している時間に応じて発生し、初期投資を抑えることができます。
(3) 運用管理の手間削減物理サーバーのような機器メンテナンスや設置場所の確保が不要です。ブラウザから簡単に管理でき、複雑な設定も自動化できます。
(4) 無料利用枠初心者向けに、アカウント作成から12ヶ月間、特定のインスタンス(例:t2.micro)を毎月750時間まで無料で利用できる枠が提供されています。(2025年11月24日時点)

EC2のインスタンスの種類と選び方

EC2インスタンスのスペックはインスタンスタイプと呼ばれ、CPU、メモリ、ストレージ、ネットワーク性能などを用途に応じて選択できます。

インスタンスタイプの命名規則は、「ファミリー + 世代 + サイズ」で成り立っています。世代の数字が大きいほど、新しい世代であることを示し、性能が向上しています。

ファミリー特徴主な用途代表的なタイプ
T型バースト可能な低コストインスタンス。無料利用枠の対象。開発環境、小規模Webサイト。t2.micro, t3.small
M型バランスの取れた汎用インスタンス。中規模Webサーバー、アプリケーションサーバー。m5.large, m6i.xlarge
C型計算処理に最適化。バッチ処理、高トラフィックWebサーバー。c5.large, c6i.xlarge
R型メモリ最適化。データベース、キャッシュサーバー。r5.large, r6i.xlarge
P型/G型GPU搭載 (高速コンピューティング)。機械学習、画像処理。p3.2xlarge, g4dn.xlarge
https://docs.aws.amazon.com/ja_jp/ec2/latest/instancetypes/instance-types.html

用途に応じた選定が重要であり、例えば t2.micro は小規模用途に、m5.large は中規模用途に適しています。

AMI(Amazon Machine Image)によるインスタンスのテンプレート化

AMIは、EC2インスタンスを起動するためのテンプレート(仮想マシンのイメージ)です。OSやアプリケーションの設定など、インスタンスの起動に必要な情報がパッケージ化されています。

AMIには以下の種類があります:

パブリックAMI: AWS公式が提供する標準的なOSイメージ(Amazon Linux, Ubuntu, Windows Serverなど)。

カスタムAMI: 自分で構築した環境から作成したイメージ。環境の複製やバックアップに利用されます。

まお
まお

AMIはインスタンスの基となるイメージです。どのOSが入っているか(例:Amazon Linux、Windowsなど)、どんなソフトウェアがプリインストールされているか、仮想化の方式(NitroベースやXenベース)、CPUアーキテクチャ(x86_64、ARM64など)などの情報を含みます。

実際操作では、EC2インスタンスを起動する際に「AMI」を選択し、その後に起動するインスタンスの「インスタンスタイプ(性能スペック)」を別途指定します。

Elastic IP、EBS(ボリュームストレージ)によるEC2停止・終了への対応

EBS (Elastic Block Store): EC2インスタンスに接続されるブロックストレージサービスで、ハードディスクのようなものです。EC2を停止または終了しても、EBSボリュームのデータは保持されます。EBSには、バックアップ機能としてスナップショット機能があり、障害時の復旧に使用できます。

Elastic IP (EIP): AWSが提供する固定のグローバルIPアドレスです。通常、EC2インスタンスのパブリックIPアドレスは停止・起動すると変わってしまいますが、EIPをインスタンスにアタッチすることで、再起動しても同一のグローバルIPアドレスを利用し続けることができます。ただし、EIPをインスタンスにアタッチせずに使用している場合でも、料金が発生する可能性があります。

まお
まお

EC2の停止・起動によって、通常は以下が失われてしまいます。

  • インスタンスストア(ローカルストレージ)上のすべてのデータ
  • EC2インスタンスのパブリックIPアドレス

キーペアとSSHアクセス

キーペア: SSHなどでEC2インスタンスにログインする際に必要なです。インスタンス作成時にダウンロードしますが、一度ダウンロードすると再ダウンロードはできませんので、大切に保管する必要があります。

SSHアクセス: 接続には、ダウンロードしたキーペアファイル、インスタンスのパブリックIPv4アドレス、そして適切なユーザー名(例:ec2-userubuntu)を使用します。接続前に、キーペアファイルの権限を適切に変更する(例:chmod 400 test-key.pem)必要があります。

EC2へのSSHアクセスについては、Udemy講座にてわかりやすく解説されています。

https://www.udemy.com/course/aws-14days/

課金体系について

EC2のインスタンス料金は、選択したインスタンスタイプと起動している時間(秒単位)に応じて発生します。

AWSでは、コスト効率を上げるために複数の購入オプションが提供されています。

購入オプション特徴料金削減率処理の中断リスク主な用途/メリット
オンデマンドインスタンス最も基本。割引なしで、必要なときに即時起動可能。なし(秒単位課金)なし一時的な利用、負荷が予測不能なワークロード
リザーブドインスタンス (RI)1年または3年単位で利用を「予約」することで、オンデマンド料金よりも安くインスタンスを購入。最大72%なし(処理は中断しない)継続して利用することが決まっているリソース
Savings PlansCPU使用量を約束し、1〜3年のコミットで割引。最大72%なし長期的に継続利用するリソース。インスタンスタイプやリージョンの変更柔軟
スポットインスタンス余剰キャパシティを利用するため、非常にコスト効率が高い。処理が中断(インスタンスが落ちる)可能性あり。最大90%あり(2分前通知で中断)中断されても問題ない柔軟なワークロードやバッチ処理
専用ホスト (Dedicated Hosts)独立した物理サーバーを購入する方法。物理サーバーの選択が可能。割引率は契約内容により異なるなしBYOL (Bring Your Own License) 型のソフトウェアライセンスを持ち込みたい場合
ハードウェア占有インスタンス (Dedicated Instance)独立したハードウェアを購入する方法。物理サーバーの選択は不可能なしなし他のインスタンスと同居するのを避けたい場合

その他の料金として、EBS料金(容量や使用量) や、データ転送料金(インターネット経由などアウトバウンド通信) が発生します。

権限管理とセキュリティ(IAMとEC2)

EC2における権限管理は、大きく分けて2つの管理要素があります。アクセス制限(セキュリティグループ他のサービスへ接続するための権限(IAMロールです。

1. セキュリティグループ(アクセス制限)

セキュリティグループはEC2に設定する仮想ファイアウォールで、インバウンド(受信)およびアウトバウンド(送信)トラフィックを制御します。

  • 許可したい通信の種類(プロトコル、ポート番号)や通信元・通信先のIPアドレス範囲を指定できます。
  • 例)SSH(ポート22)のみ特定IPからのアクセスを許可、HTTP(ポート80)は誰でもアクセス可能、など。
  • セキュリティグループはステートフルなので、一度許可された通信は応答トラフィックも自動的に許可されます。
  • EC2起動時に複数のセキュリティグループを割り当てたり、起動後に変更したりできます。
まお
まお

デフォルト状態では、インバウンド(受信)の通信はすべて拒否されており、自分で「許可する通信(プロトコル・ポート・送信元IPなど)」を明示的に設定する必要があります。

2. IAMロール(サービスアクセス権限)

IAMロールはEC2インスタンスがAWSの他サービスに安全にアクセスするための権限を委譲する仕組みです。IAMロールは、AWSサービス間の通信の制御に用います。

  • 例えば、EC2からS3バケットにアクセスしたい場合、アクセス権限を持つIAMロールをインスタンスに割り当てます。
  • ユーザーがアクセスキーを管理せずに済むためセキュリティリスクが減ります。
  • IAMロールはポリシーで細かく権限を制御可能で、必要最小限の権限に絞ることが推奨されます。

パフォーマンス最適化とコスト管理

インスタンスのパフォーマンスモニタリング(CloudWatchの基本)

インスタンスのパフォーマンスを監視するために、Amazon CloudWatchが使用されます。

基本モニタリング: 5分間隔でメトリクスを取得します。

詳細モニタリング: 有料ではありますが、全てのメトリクスを1分間隔で利用できます。

ストレージの最適化(EBSタイプの選び方、スナップショットバックアップ)

EC2のストレージとして使用されるEBSは、用途に応じてタイプを選択することがパフォーマンス最適化に繋がります。

ボリュームタイプ特徴パフォーマンス/耐久性主な用途
プロビジョンドIOPS SSD (io2)最高性能と耐久性。IOPSの性能を指定してボリュームを作成可能(追加料金)。最大64,000 IOPS、最大1,000 MB/秒、99.999%の耐久性。I/Oの負荷が大きくても耐えられる。重要業務システム大規模データベース、I/O集約型アプリケーション。
プロビジョンドIOPS SSD (io1)io2の前世代。高い性能と99.9%の耐久性。最大64,000 IOPS、最大1,000 MB/秒。I/O集約型アプリケーション。
汎用SSD (gp3)バランスの取れた性能と価格。独立したIOPSとスループット。最大16,000 IOPS、最大1,000 MB/秒。OS開発環境、中小規模データベース。
汎用SSD (gp2)gp3の前世代。ボリュームサイズに応じた性能。最大16,000 IOPS、最大250 MB/秒。低~中負荷のアプリケーション、仮想デスクトップ。
スループット最適化HDD (st1)低コストで高スループット頻繁なアクセスに最適化最大500 MB/秒、最大500 IOPS。ビッグデータ処理、ログ処理、データウェアハウス。
Cold HDD (sc1)最低コスト。性能は低いが安い。アクセス頻度の低いデータ向け。最大250 MB/秒、最大250 IOPS。アーカイブ、長期保存データ、古いデータのバックアップなど。

EBSスナップショット

ストレージのバックアップにはEBSスナップショット機能を利用でき、これは障害時の復旧に活用されます。また、EC2とEBS間の通信速度がボトルネックになっている場合は、専用スループットを有効化する EBS最適化インスタンス の利用を検討します。

オートスケーリングの活用

Auto Scalingは、負荷に応じてEC2インスタンスの台数を自動的に増減させる機能です。この機能は、通常、Elastic Load Balancing (ELB) と組み合わせて可用性の高い、スケーラブルな構成を構築するために利用されます。Auto Scalingの活用は、AWSの実践力を高める上で重要な要素の一つと見なされています。

コスト削減のポイントと料金シミュレーション

意図しない高額請求を避けるためのコスト管理の鉄則は以下の通りです:

1. インスタンスの停止: 使わないEC2インスタンスは、必ず「停止」すること。EC2は起動している時間に対して課金されます。

2. 予算アラートの設定: AWS Budgetsなどを利用し、「月の利用料が〇〇円を超えたら通知する」といった予算アラートを必ず設定し、想定外の課金を早期に検知する。

3. 長期契約の活用: 継続して利用することが決まっているリソースについては、リザーブドインスタンスSavings Plansといった割引購入オプションを検討する。

4. データ転送の意識: インターネットへのデータ送信(アウトバウンド) が最も高額になりがちであることを認識する。同一リージョン内のAWSサービス間の通信は無料です。

料金の詳細は、AWS公式の料金表や、Amazon Web Services Simple Monthly Calculator(シミュレーションツール)で確認できます。

AWS公式の料金表はこちら
オンデマンドインスタンスの料金 - Amazon EC2 (仮想サーバー) | AWS
オンデマンドインスタンスについては、お客様が使用された EC2 インスタンスの料金のみのお支払いとなります。オンデマンドインスタンスを使用することにより、ハードウェアのプランニング、購入、維持に伴うコストや手間が省け、高額な固定費となりがち...
Amazon Web Services Simple Monthly Calculator(シミュレーションツール)はこちら
AWS Pricing Calculator
AWS Pricing Calculator lets you explore AWS services, and create an estimate for the cost of your use cases on AWS.

まとめ

EC2は、クラウドインフラストラクチャの基礎であり、レゴブロックの基本パーツのようなものです。この基本パーツ(インスタンス)に、ストレージ(EBS)、アクセス制限(セキュリティグループ)、そして他のサービスへ接続するための権限(IAMロール)を組み合わせることで、目的に合った複雑なシステムを自由に構築し、ビジネスの成長に合わせて柔軟に拡張していくことが可能になります。

コメント

タイトルとURLをコピーしました