AWS認定資格 WEB問題集&徹底解説

ソリューションアーキテクト – アソシエイト

Amazon EC2 の概要と試験出題ポイントは?

AWSサービスの一つであるAmazon EC2はどんな内容なのでしょうか?また、AWS認定資格のソリューションアーキテクト-アソシエイト(SAA)に合格するためには、サービスのどんなポイントを押さえておけばよいのでしょうか?
ここでは、そんなあなたの疑問に回答していきたいと思います

Amazon EC2 徹底解説 | AWS認定試験の頻出ポイントまとめ

1. サービス概要

Amazon EC2(Elastic Compute Cloud)は、AWS上で仮想サーバー(インスタンス)をオンデマンドに起動・停止できるコンピューティングサービスです。 物理ハードウェアの管理から解放され、数分でサーバーを立ち上げ、需要に応じて台数やスペックを柔軟に変更できます。料金は使った分だけの従量課金が基本です。

現在のEC2はNitro Systemを基盤とし、仮想化のオーバーヘッドを抑えて高い性能とセキュリティを実現しています。 主なユースケースは、Web/アプリケーションサーバー、バッチ処理、開発・テスト環境、ビッグデータ分析、機械学習、HPC(高性能計算)などです。

2. 主な特徴と機能

2.1 インスタンスファミリー

用途に応じて多様なファミリーが用意され、世代番号(例: m7g)やサイズ(large〜24xlarge等)で表します。Gravitonプロセッサ(ARM、末尾g)は高いコストパフォーマンスが特長です。

  • 汎用(M/T/Mac): バランス型。Tシリーズはバースト可能(CPUクレジット)で、低負荷時にクレジットを貯め、必要時に高性能を発揮(unlimitedモードあり)。
  • コンピュート最適化(C): CPU負荷の高いバッチ処理・高性能Web・ゲームサーバー向け。
  • メモリ最適化(R/X/High Memory): インメモリDB、大規模キャッシュ、SAP HANA等の大容量メモリ用途。
  • ストレージ最適化(I/D/H): 高IOPS・大容量ローカルストレージが必要なNoSQL/データウェアハウス向け。
  • 高速コンピューティング(P/G/Inf/Trn/F): GPUや専用アクセラレータでML学習・推論、グラフィックス処理。
  • HPC最適化(Hpc): EFA等と組み合わせた大規模並列計算向け。

2.2 AMIとインスタンスのライフサイクル

インスタンスはAMI(Amazon Machine Image)から起動します。AMIはOSや構成済みソフトを含むテンプレートで、リージョン単位のリソースです(別リージョンへはコピー、共有も可能)。 状態遷移は「起動 → 実行中 → 停止/休止/終了」。停止(Stop)ではEBSは保持されインスタンスストアは消失、休止(Hibernate)ではメモリ内容をEBSへ保存して再開を高速化、終了(Terminate)ではインスタンスが破棄されます(既定のEBSルートボリュームも削除)。

2.3 ストレージオプション

永続ストレージはAmazon EBS(インスタンスから独立し、停止・再起動をまたいでデータ保持。gp3/gp2/io2/io1/st1/sc1等のボリュームタイプ)、高速な一時領域はインスタンスストア(物理ホスト直結。停止・終了でデータ消失)を利用します。 オブジェクトストレージのS3や共有ファイルのEFS/FSxと組み合わせるのが一般的です。

2.4 ネットワーキング

EC2はVPC内のサブネットで起動し、プライベートIP/パブリックIP、セキュリティグループ、ネットワークACLでアクセスを制御します。 固定パブリックIPはElastic IP、複数IP・複数NICはENI(Elastic Network Interface)で実現します。 高スループット用途には拡張ネットワーキング(ENA)、HPCにはEFA(Elastic Fabric Adapter)を利用します。

2.5 プレースメントグループ

  • クラスター: 単一AZ内で近接配置。低遅延・高スループット(HPC向け)。
  • スプレッド: 物理ハードウェアを分散(AZあたり最大7インスタンス)。重要インスタンスの同時障害を回避。
  • パーティション: 複数パーティションにグループ分けして配置。HDFS/Kafka等の大規模分散システム向け。

2.6 スケーリングと自動化

EC2 Auto Scaling起動テンプレートを組み合わせ、負荷に応じて台数を自動増減します(ターゲット追跡/ステップ/スケジュールドスケーリング、ヘルスチェック、ライフサイクルフック)。 Systems Manager、CloudWatch、EventBridge/Lambdaと連携した構成管理・監視・自動運用も可能です。

3. アーキテクチャおよび技術要素

  1. ユーザーがマネジメントコンソール/CLI/SDKでインスタンスを起動。
  2. 指定したAMIから、VPCサブネット内に、選択したインスタンスタイプで起動。
  3. キーペア、セキュリティグループ、IAMロール(インスタンスプロファイル)、ユーザーデータで環境を構成。
  4. ストレージ(EBS/インスタンスストア)をアタッチし、必要に応じてElastic IPやENIを付与。
  5. Auto Scaling+ELBで高可用性とスケーラビリティを確保。Nitro Systemが基盤として性能・分離を提供。
  6. 購入オプション(オンデマンド/リザーブド/Savings Plans/スポット/専有)でコストを最適化。

4. セキュリティと認証・認可

  • IAMロール(インスタンスプロファイル): インスタンス上のアプリが、アクセスキーを埋め込まずにAWSサービスへ安全にアクセス。資格情報は自動でローテーションされる。
  • セキュリティグループ: ステートフルでインスタンス(ENI)レベル。許可ルールのみ(拒否は表現しない)。戻りの通信は自動で許可。
  • ネットワークACL: ステートレスでサブネットレベル。許可・拒否の両方を番号順に評価。戻り通信も明示的に許可が必要。
  • キーペア: SSH/RDP接続用の公開鍵・秘密鍵。秘密鍵は利用者が安全に保管する。
  • 接続方法: SSHキーペア、ブラウザから一時鍵で繋ぐEC2 Instance ConnectSSM Session Manager(インバウンドポート・キーペア・踏み台不要、IAMで認可しログ記録可能)。
  • IMDSv2: インスタンスメタデータ(169.254.169.254)はトークン方式のIMDSv2を必須化することで、SSRF攻撃による資格情報の窃取を防止できる。
  • 暗号化: EBSの保存時暗号化(KMS連携)、転送時はアプリ層でTLSを利用。

5. 料金形態

EC2の料金は、稼働時間・インスタンスタイプ・OS/ライセンス・リージョン・データ転送・EBS使用量などで決まります。主な購入オプションは次のとおりです。

  • オンデマンド: 秒/時間単位の従量課金。コミットなしで最も柔軟。短期・予測困難なワークロード向け。
  • リザーブドインスタンス(RI): 1年/3年のコミットで割引。Standard(割引大・変更不可)/Convertible(タイプ変更可)、リージョン/ゾーン指定がある。
  • Savings Plans: 一定の利用額($/時)を1年/3年コミットして割引。Compute Savings Plans(最も柔軟、Fargate/Lambdaも対象)/EC2 Instance Savings Plans(特定ファミリー・リージョンで割引大)
  • スポットインスタンス: 余剰キャパシティを大幅割引で利用。中断の可能性あり(2分前の通知)。中断に強い・ステートレスなバッチ/分析向け。
  • 専有(Dedicated): Dedicated Hosts(物理サーバー占有、ソケット/コア単位ライセンス持ち込みBYOLに対応)、Dedicated Instances(専有ハードウェアだがホスト可視性なし)。
  • キャパシティ予約(On-Demand Capacity Reservations): 特定AZで必要な容量を事前確保。Savings Plans/RIの割引と併用可。

6. よくあるアーキテクチャ・設計パターン

  • 高可用性Webアプリ: 複数AZにまたがるAuto Scaling+ELBでEC2を冗長化し、スケーラビリティと耐障害性を確保。
  • コスト最適化バッチ: 中断に強い処理をスポットインスタンス(Spot Fleet)で実行し、S3のデータを処理。
  • HPC/大規模並列: コンピュート最適化+クラスタープレースメントグループ+EFAで低遅延・高スループット。
  • キーレス運用: SSM Session Managerで踏み台もSSHキーも使わずに運用(インバウンドポート開放不要)。
  • ハイブリッド/BYOL: ライセンス要件のあるソフトはDedicated Hostsで持ち込みライセンスを満たす。

7. 設定・デプロイ手順(ハンズオン例)

  1. EC2コンソールで「インスタンスを起動」を選択。
  2. AMI、インスタンスタイプ、VPCサブネット、セキュリティグループ、キーペアを指定。
  3. 必要に応じてIAMロール(インスタンスプロファイル)、ユーザーデータ、EBS、IMDSv2必須化を設定。
  4. SSM Session ManagerまたはSSH/EC2 Instance Connectで接続。
  5. CloudWatchで監視し、Auto Scaling(起動テンプレート+スケーリングポリシー)を構成。
  6. 不要になればインスタンスを終了(Terminate)してコストを削減。

8. 試験で問われやすいポイント

8.1 インスタンスタイプ選択

  • Q: ワークロードに応じた選び方は?
    A: CPU集約ならC、メモリ集約ならR/X、ストレージI/O集約ならI/D、GPUが必要ならP/G。コスト重視ならGraviton(ARM)。
  • Q: 普段は低負荷で時々高負荷になるWebは?
    A: バースト可能なTシリーズ(CPUクレジット、必要ならunlimitedモード)。

8.2 セキュリティグループとネットワークACL

  • Q: 両者の違いは?
    A: セキュリティグループはステートフル・インスタンス(ENI)レベル・許可のみ。ネットワークACLはステートレス・サブネットレベル・許可/拒否を番号順に評価。
  • Q: 特定IPを明示的にブロックしたい場合は?
    A: セキュリティグループでは不可。ネットワークACLのDENYルールを使う。

8.3 認証・接続とメタデータ

  • Q: EC2上のアプリからS3等へ安全にアクセスするには?
    A: アクセスキーを埋め込まずIAMロール(インスタンスプロファイル)を割り当てる。
  • Q: SSHキーや踏み台なしで接続・監査するには?
    A: SSM Session Manager(インバウンドポート不要、IAM認可、ログ記録)。
  • Q: メタデータ経由の資格情報窃取(SSRF)を防ぐには?
    A: IMDSv2(トークン方式)を必須化する。

8.4 購入オプションとコスト最適化

  • Q: 長期・安定稼働を割引したい。柔軟性も欲しい場合は?
    A: Compute Savings Plans(Fargate/Lambdaも対象)。特定ファミリー固定でより安くするならEC2 Instance Savings PlansやStandard RI。
  • Q: 中断に強いバッチを最安で動かすには?
    A: スポットインスタンス(中断は2分前通知)。Spot Fleetで複数タイプに分散。
  • Q: ライセンス持ち込み(BYOL)でソケット/コア単位の要件がある場合は?
    A: Dedicated Hosts
  • Q: 重要イベント時に容量を確実に確保したい場合は?
    A: On-Demand Capacity Reservations(割引と併用可)。

8.5 ストレージ(EBS/インスタンスストア)

  • Q: 停止・再起動をまたいでデータを保持したい場合は?
    A: EBS(永続)。インスタンスストアは一時的で停止・終了時に消失。
  • Q: 起動を高速に再開しつつメモリ状態を保持したい場合は?
    A: 休止(Hibernate)でメモリ内容をEBSに保存。

8.6 可用性とプレースメント

  • Q: 単一障害点を避けて重要インスタンスを分散するには?
    A: スプレッドプレースメントグループ(AZあたり最大7)。
  • Q: ノード間を低遅延・高スループットで結びたいHPCは?
    A: クラスタープレースメントグループ+EFA(単一AZ)。
  • Q: 高可用性を保ちながら負荷変動に対応するには?
    A: 複数AZのAuto Scaling+ELB

8.7 状態チェックと復旧

  • Q: システムステータスチェックとインスタンスステータスチェックの違いは?
    A: 前者はAWS基盤(ホスト/ネットワーク/電源)、後者はインスタンスのOS/ネットワーク設定の問題を検知。
  • Q: ハード障害時に自動で復旧させるには?
    A: CloudWatchアラームによる自動復旧(Auto Recovery)を設定。

8.8 IPアドレスとネットワーク

  • Q: 固定のパブリックIPが必要な場合は?
    A: Elastic IPを割り当てる(割り当て済みパブリックIPv4は課金対象)。
  • Q: 停止すると自動割り当てパブリックIPはどうなる?
    A: 解放されて変わる。固定したいならElastic IPを使う。

8.9 類似・関連サービスとの比較

  • Q: サーバー管理をなくしたい場合は?
    A: コンテナはECS/EKS(サーバーレス実行はFargate)、関数実行はLambda、簡易VPSはLightsail。
  • Q: テナンシーの選択肢は?
    A: 共有(既定)、Dedicated Instances、Dedicated Hosts。