開発運用

UbuntuでKVM仮想化の設定

KVM(カーネルベースの仮想マシン)は、Linuxカーネルに組み込まれた仮想化技術で、物理サーバ上で複数の仮想マシン(VM)を効率的に実行することができます。UbuntuでKVMをインストールし、仮想マシンを作成するプロセスを完全かつ包括的に説明します。このガイドに従うことで、UbuntuでKVMを使用して仮想環境を構築する方法を理解できます。

必要な前提条件

KVMは、仮想化をサポートするCPUと、ハードウェア仮想化支援(Intel VT-xやAMD-V)が有効になっていることが前提となります。Ubuntuのインストール後、以下の要件を確認する必要があります。

  1. ハードウェアの仮想化サポート
    • Intel CPUの場合、vmxが有効であること。
    • AMD CPUの場合、svmが有効であること。

これらは、以下のコマンドで確認できます。

bash
egrep -c '(vmx|svm)' /proc/cpuinfo

1以上の数字が表示されれば、ハードウェア仮想化がサポートされています。

  1. Ubuntuのバージョン
    • Ubuntu 18.04以降のバージョンであれば、KVMはサポートされています。

1. KVMのインストール

まず、UbuntuにKVMをインストールするための準備をします。以下の手順でKVMをインストールします。

  1. パッケージの更新

    最初にシステムを最新の状態に更新します。

    bash
    sudo apt update sudo apt upgrade
  2. 必要なパッケージのインストール

    KVMと関連するツールをインストールします。

    bash
    sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
    • qemu-kvm:KVMの実行環境を提供。
    • libvirt-daemon-systemlibvirt-clients:仮想マシンの管理ツール。
    • bridge-utils:ネットワークブリッジを管理するツール。
    • virt-manager:仮想マシンを管理するGUIツール。
  3. サービスの確認と開始

    インストール後、libvirtサービスが自動的に起動していない場合があります。以下のコマンドで確認し、サービスを起動します。

    bash
    sudo systemctl enable --now libvirtd

    サービスの状態を確認するには、以下のコマンドを使用します。

    bash
    sudo systemctl status libvirtd

2. KVMのセットアップ確認

KVMが正しくインストールされ、動作しているかを確認するために、以下のコマンドを実行します。

bash
sudo virsh list --all

これにより、現在の仮想マシンのリストが表示されます。何も表示されない場合は、まだ仮想マシンを作成していないことを意味します。

また、kvm-okというツールを使って、ハードウェア仮想化が有効かどうかも確認できます。

bash
kvm-ok

このコマンドが「KVM acceleration can be used」と表示された場合、KVMが使用可能であることを意味します。

3. 仮想マシンの作成

仮想マシンを作成するには、GUIツールであるvirt-managerを使用するか、コマンドラインでvirt-installを使用します。ここでは、両方の方法を紹介します。

GUIツール(virt-manager)を使用する方法

  1. virt-managerを起動

    以下のコマンドでvirt-managerを起動します。

    bash
    sudo virt-manager

    起動すると、仮想マシンの管理画面が表示されます。

  2. 新しい仮想マシンを作成

    GUI画面から「新規」ボタンをクリックし、仮想マシンの作成ウィザードを開始します。

    • 仮想マシンの名前を設定。
    • インストールメディア(ISOファイル)を指定。
    • 仮想マシンのメモリ、CPU数、ディスク容量などを設定します。

コマンドライン(virt-install)を使用する方法

コマンドラインから仮想マシンを作成するには、virt-installを使用します。以下に基本的なコマンドを示します。

bash
sudo virt-install \ --name testvm \ --ram 2048 \ --vcpus 2 \ --disk path=/var/lib/libvirt/images/testvm.qcow2,size=10 \ --cdrom /path/to/your/iso-file.iso \ --os-type linux \ --os-variant ubuntu20.04 \ --network network=default \ --graphics spice \ --console pty,target_type=serial
  • --name:仮想マシンの名前。
  • --ram:仮想マシンに割り当てるメモリ(MB単位)。
  • --vcpus:仮想マシンに割り当てるCPUの数。
  • --disk:仮想マシンのディスクイメージファイルの場所とサイズ。
  • --cdrom:インストールするISOファイルのパス。
  • --os-type--os-variant:使用するオペレーティングシステムのタイプとバージョン。
  • --network:ネットワーク設定。
  • --graphics:グラフィカルインターフェースを有効にするための設定。
  • --console:コンソールアクセスの設定。

コマンドが正常に実行されると、仮想マシンが作成され、インストールが開始されます。

4. 仮想マシンの管理

仮想マシンが作成された後は、virshコマンドを使用して管理することができます。

  • 仮想マシンの起動

    bash
    sudo virsh start testvm
  • 仮想マシンの停止

    bash
    sudo virsh shutdown testvm
  • 仮想マシンの状態確認

    bash
    sudo virsh list --all
  • 仮想マシンの削除

    bash
    sudo virsh undefine testvm

5. ネットワーク設定

仮想マシンをインターネットに接続するためには、ネットワークブリッジを設定する必要があります。UbuntuのKVM環境では、bridge-utilsを使用してネットワークブリッジを管理します。

  1. ネットワークブリッジの設定

    /etc/network/interfacesファイルに以下の設定を追加します。

    bash
    auto br0 iface br0 inet dhcp bridge_ports eth0

    この設定は、物理ネットワークインターフェース(例:eth0)を仮想ブリッジ(br0)に接続し、DHCPでIPアドレスを取得します。

  2. ネットワークサービスの再起動

    設定後、ネットワークサービスを再起動します。

    bash
    sudo systemctl restart networking

6. 仮想マシンのバックアップとスナップショット

仮想マシンのバックアップやスナップショットを取ることも重要です。virshコマンドを使用してスナップショットを作成できます。

  • スナップショットの作成

    bash
    sudo virsh snapshot-create-as testvm snapshot1
  • スナップショットの復元

    bash
    sudo virsh snapshot-revert testvm snapshot1

結論

UbuntuでKVMを使用して仮想マシンを作成する手順を理解することは、仮想化環境を効果的に管理するための重要なスキルです。virt-managervirt-installを使用することで、KVMのインストールから仮想マシンの管理まで一貫した操作が可能です。このガイドを参考に、Ubuntu上でKVMを活用した仮想化環境を構築し、効率的に仮想マシンを運用することができるようになります。

Back to top button