EC2が仮想化のネストに対応したので、UbuntuでKVMを動かす。
よ〜んです。
先日、Amazon EC2のC8i、M8i、R8iタイプでネストされた仮想化に対応した、というアナウンスが出ました。
Amazon EC2 supports nested virtualization on virtual Amazon EC2 instances
どうしてもx86_64マシン上のKVMで検証したいことがあったのですが、手元にx86_64環境がなくて困っていたので、これはかなり助かります。
「ベアメタルインスタンスでよくない?」
はい、正論です。しかし今までコスト的な問題で見送っていました。
今回はUbuntuを使います。Amazon Linux 2023でもできなくはないですが、kvm関連パッケージのビルドが必要であったりで面倒そうだったのでUbuntuにしました。
EC2側の設定メモ
ポイントはCPUオプションです。
--cpu-options "NestedVirtualization=enabled"`
この記事執筆時点(2026/02/22)では、CDK/CloudFormationから指定できなさそうであっ他ため、今回はカスタムリソース経由で作成しました。
Ubuntu側のセットアップ
KVM関連をまとめて入れます。
sudo apt update
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils cpu-checker
確認コマンド:
kvm-ok
結果
以下の出力になり、KVMアクセラレーションが利用可能な状態を確認できました。
$ kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
今回はここまでです。次回はこの上でDebian GNU/Hurdを動かしてみます。