コンテンツにスキップ
Classmethod Ec2 Nested Virtualization Kvm

AWS EC2 仮想インスタンスでネステッド仮想化(Nested Virtualization)を有効化して、KVM で VM を作ってみた

  • URL: https://dev.classmethod.jp/articles/ec2-enable-nested-virtualization-and-create-kvm/
  • 日付: 2026-06-09
  • Tier: Tier 2
  • 要旨: 2026年2月に第8世代IntelベースのEC2仮想インスタンスでネステッド仮想化がサポートされたことを受け、m8i.largeでKVMを使いAlpine Linux VMを起動する手順を実機検証。ベアメタルインスタンス比で最大約100倍のコスト差を実現。

詳細

背景

  • 従来: .metalベアメタルインスタンスのみでネスト仮想化可能
  • 2026年2月: 第8世代Intelベース仮想インスタンス(c8i/m8i/r8iなど)でも対応

コスト比較(東京リージョン、2026年5月時点)

インスタンスvCPUメモリ時間単価
m8i.metal-48xl192768GB$13.12416
m8i.large28GB$0.13671

最大約100倍のコスト差でネスト仮想化が可能に

セットアップ手順

  1. EC2インスタンス起動時に「高度な詳細」→「ネストされた仮想化」を有効化
  2. 確認: lsmod | grep kvmkvm_intelを確認
  3. KVM関連パッケージインストール: qemu-system-x86, libvirt-daemon-system, virtinst
  4. ゲストVM作成: Alpine Linux 3.21 ISO + qcow2ディスク + virt-install

ポイント

  • ネストされた仮想化機能自体は追加料金なし
  • 検証OS: Ubuntu Server 26.04 LTS
  • ゲストOS: Alpine Linux 3.21(軽量で検証に最適)
  • m8i.large: 1〜2時間で$0.30程度