Linuxを使って仮想化環境を構築したいと考えたとき、有力な選択肢の一つが「KVM(Kernel-based Virtual Machine)」です。KVMはLinuxカーネルに組み込まれた仮想化機能であり、高速で安定した仮想マシン環境を構築できます。本記事では、KVMをLinuxにインストールし、実際に仮想マシンを動作させるまでの基本的な流れを解説します。
UbuntuなどのDebian系とCentOSなどのRed Hat系、両方に対応した手順を紹介するので、自分の環境に合わせてぜひ活用してください。
KVMとは何か?基本の理解
KVM(Kernel-based Virtual Machine)は、Linuxカーネルをハイパーバイザーとして動作させるための仮想化技術です。Intel VTやAMD-Vといったハードウェア支援機能を活用し、効率的な仮想化を実現しています。
KVM自体はモジュール(kvm
、kvm-intel
またはkvm-amd
)として提供され、QEMUと連携することで仮想マシンの作成や管理が可能になります。また、virt-manager
やvirsh
などのツールを用いることでGUIおよびCLI両方で管理が行えるのも魅力の一つです。
1. KVMを使う前に確認すべきこと
ハードウェアの仮想化支援の確認
まず、使用しているCPUが仮想化支援機能(Intel VT/AMD-V)に対応しているか確認しましょう。以下のコマンドで確認できます。
bashコピーする編集するegrep -c '(vmx|svm)' /proc/cpuinfo
1以上の値が返ってくれば、ハードウェアが対応しています。
BIOS設定の確認
ハードウェアが仮想化対応でも、BIOSで無効になっている場合があります。必要に応じてBIOS設定を開き、「Intel VT」または「AMD-V」オプションが有効になっているか確認してください。
2. KVMのインストール(Ubuntu/Debian系)
UbuntuなどのDebian系Linuxでは、以下のコマンドで必要なパッケージをインストールできます。
sudo apt update
sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager
インストール後、libvirtd
サービスが自動で起動していない場合は以下で起動します。
sudo systemctl enable --now libvirtd
また、現在のユーザーをlibvirt
グループに追加することで、管理者権限なしでも仮想マシンを操作できるようになります。
sudo usermod -aG libvirt $(whoami)
ログアウト・ログイン後に反映されます。
3. KVMのインストール(CentOS/RHEL系)
CentOSやRocky LinuxなどRed Hat系では以下の手順でKVMをインストールします。
sudo dnf install @virt
または個別に必要なパッケージを指定してインストールも可能です。
sudo dnf install qemu-kvm libvirt virt-install bridge-utils virt-manager
サービスの有効化と起動を行います。
sudo systemctl enable --now libvirtd
ユーザーをlibvirt
グループに追加する場合は次の通りです。
sudo usermod -aG libvirt $(whoami)
変更後に再ログインしてください。
4. 仮想マシンの作成方法(GUIとCLI)
GUIで作成:virt-manager
virt-manager
(Virtual Machine Manager)を使えば、仮想マシンの作成や操作がGUIベースで行えます。
起動は以下のコマンドから:
virt-manager
ISOイメージを指定し、仮想マシンの名前・CPU・メモリ・ストレージ容量などを設定すれば、直感的に仮想マシンを構築できます。
CLIで作成:virt-install
ターミナルで仮想マシンを作成するにはvirt-install
を使います。以下はUbuntuのISOから仮想マシンを作成する例です。
sudo virt-install \
--name ubuntu-vm \
--ram 2048 \
--vcpus 2 \
--disk path=/var/lib/libvirt/images/ubuntu-vm.img,size=20 \
--os-type linux \
--os-variant ubuntu20.04 \
--network network=default \
--graphics vnc \
--cdrom /path/to/ubuntu.iso
作成後はvirsh
コマンドで起動や停止ができます。
5. 仮想マシンの基本操作(virsh)
仮想マシンの管理はvirsh
コマンドでも可能です。いくつか基本的な操作を紹介します。
- 仮想マシンの一覧表示:
virsh list --all
- 起動:
virsh start ubuntu-vm
- 停止:
virsh shutdown ubuntu-vm
- 強制停止:
virsh destroy ubuntu-vm
- 削除:
virsh undefine ubuntu-vm
6. ネットワークとブリッジの設定(必要に応じて)
KVMでは仮想マシンがホストと同じネットワークに接続できるように、ブリッジインターフェースの設定をする場合もあります。
ブリッジ設定ファイルの例(Netplan, Ubuntu)
network:
version: 2
renderer: networkd
ethernets:
eno1:
dhcp4: no
bridges:
br0:
interfaces: [eno1]
dhcp4: yes
設定後は次のように適用します。
sudo netplan apply
ブリッジネットワークを使うことで、仮想マシンが物理ネットワークと直接通信できるようになります。
7. よくあるエラーと対処法
- 仮想化が無効になっている → BIOSでIntel VTやAMD-Vが有効か確認してください。
- 仮想マシンがネットワークに接続できない → ブリッジ設定やファイアウォールの確認をしましょう。
- virt-managerで接続エラーが出る →
libvirtd
サービスが起動しているか、ユーザー権限が適切か確認してください。
まとめ
KVMは、Linuxに組み込まれた高性能な仮想化基盤であり、無料で利用できる点でも非常に魅力的です。インストールと設定は一見難しく感じるかもしれませんが、今回紹介した手順を順に進めていけば、誰でも仮想環境を構築できます。
実際に仮想マシンを作成・運用していくことで、テスト環境の構築やサーバーシミュレーション、スナップショットの利用など、活用の幅がどんどん広がっていきます。ぜひこの機会にKVMでの仮想化を試してみてください。