お問い合わせはこちら

【図解】Linux KVMの仕組みとは?

公開
更新

KVMとは、Linuxに最適化された仮想化技術の一つです。この記事ではKVMの基本的な仕組みを整理したあと、KVMを実際に動かす方法を解説しています。

最初にホストOS(今回はUbuntu)にKVMを設定します。次に、ホストOS上に仮想マシン(今回はUbuntu機とWindows機の2台)を構築していきます。ホストOSのUbuntuにはデスクトップ環境を導入して、できる限りやさしく解説していきます。

KVM

Linux KVMの仕組みとは?

KVMの仕組み

KVMはKernel-based Virtual Machineの頭文字をとった略称で、カーネルベースの仮想マシンと訳されています。カーネルとは、OSの基本機能の役割を担うソフトウエアです。

KVMによりホストマシンを仮想化し、その上に複数の仮想マシン(ゲストマシン)を稼働することができます。この仮想マシンには、Windowsを含むさまざまなOSのマシンを搭載可能です。そのため1台のサーバー機を、複数の利用者で共用することができるようになっています。例えば、レンタルサーバー会社のなかにはこのKVMにより、多くのユーザーに比較的リーズナブルな価格帯でサービスを提供している会社もあります。

仮想化全般については、以下の記事で詳しく解説しています。より詳しく知りたい方は、ぜひお読みください。

サーバーの仮想化とは?仕組み、メリット・デメリットをわかりやすく解説します

サーバーの仮想化とは?仕組み、メリット・デメリットをわかりやすく解説します

近頃よく聞かれる、「サーバーの仮想化」という言葉。サーバーの仮想化を導入することで容易にビジネスの変化に対応できるだけでなく、サーバー台数の減少によるコスト低減やスペースの確保が見込まれます。この記事では、そもそも仮想化ってどういうこと?メリットやデメリットは?という疑問について、わかりやすく解説します。 サーバー仮想化とは 物理的な1台のサーバー上で、複数の仮想的なサーバー(仮想サーバー)を運用…

QEMUと組み合わせることで仮想化を高速に

KVM-QEMU

QEMUとは仮想マシン・エミュレータと呼ばれ、KVMなどの仮想マシンとともに利用する場合があります。この組み合わせにより、それぞれが得意な役割を担うことで、処理速度が向上するなどメリットが生まれます。

具体的にはイメージ図のように、KVMは仮想CPUを提供する一方、QEMUはメモリや仮想I/Oデバイスを提供しています。

KVMの機能とメリット

それでは多くの仮想化技術の中で、KVMにはどのような特徴があるのでしょうか。ここでは機能とメリットから、まとめてみたいと思います。

機能

  • 柔軟なネットワーク管理が可能(ローカルネットワークが構築可)
  • ストレージ(ディスクイメージをオンデマンドでストレージを割り当て可)
  • ライブ・マイグレーション(電源をいれたままで仮想マシンの移動可)

メリット

  • 高速(メモリ管理などの各種管理をLinuxカーネルのものを利用するため)
  • セキュリティ維持(SELinuxなどの機能を拡張し実現)
  • 拡張性(負荷に合わせて対応可)

【参考:KVM とは(Red Hat)】

KVMの使い方

ubuntu-windows

次の3つのステップで解説していきます。導入しやすくするため、ホストOSはあらかじめデスクトップ環境にしておきます。これで作業も大幅に軽減します。

  1. ホストOSにKVMをインストール
  2. 仮想マシンを構築するための準備
  3. ホストOS上に仮想マシンを構築(UbuntuとWindowsの2台)

【参考:ホストOS(Ubuntu)をデスクトップ環境にする方法】
taskselコマンドを実行し、表示された画面でUbuntu desktopを選択します。

【※注意】
仮想化技術を利用するには、CPUがIntel-VTやAMD-Vなどの仮想化支援機能に対応している必要があります。

ホストOSの環境

今回は以下のスペックにて検証しています。

CPUAMD 6コア
メモリ4GB
ストレージSSD 120GB
OSUbuntu 16.04.3 LTS
デスクトップ環境Ubuntu desktop導入済

今回はUbuntuを利用していますが、Linux OSには多くの種類があります。以下の記事にて、おすすめのディストリビューションをご紹介しています。あわせて参考にしてみてはいかがでしょうか。

【最新】初心者必見! Linuxディストリビューション用途別おすすめ10選(2023)

【最新】初心者必見! Linuxディストリビューション用途別おすすめ10選(2023)

Linuxを使ってみよう!と動き出したけれど、たくさんのディストリビューションを目の前に、頭を抱えてしまう方も多いのではないでしょうか。 ここでは、Linuxディストリビューションについておさらいした上で、初心者へのおすすめを紹介していきます。あなたにとって、最適なディストリビューションを選択するのに役立ててください。 Linuxのディストリビューションとは 一般的にLinuxディストリビューショ…

ホストOS (Ubuntu)にKVMをインストールする方法

(1)必要なパッケージをインストールします。

【コマンド】

sudo apt-get -y install qemu-kvm libvirt-bin virtinst bridge-utils
sudo systemctl enable libvirt-bin

(2)ブリッジインターフェースを構成します。

【コマンド】

sudo vi /etc/network/interfaces

開いたら、最下部に以下を追記し保存します。

【コマンド】

auto br0
iface br0 inet dhcp
bridge_ports ens3
bridge_stp off
bridge_maxwait 0

最後に再起動すれば、KVMのインストールは終了です。

仮想マシンを構築するための準備

(1)必要なパッケージをインストールします。

【コマンド】

sudo apt-get -y install virt-manager qemu-system

(2)次にホストOSの画面上でターミナルを起動し、下図のように「virt-manager」と入力します。

KVM使い方

(3)すると「仮想マシンマネージャー」画面が表示されます。

KVM使い方

ここまで設定できたら、あとは好きな仮想マシンを作成するだけです。

仮想マシンを作成する(Windows編)

今回はWindows Server 2019評価版のISOを利用しています。入手の手続き方法は簡単で、下記のページにアクセスし、利用者の情報を登録するだけです。ここからISOファイルをダウンロードし、わかりやすい場所に保管しておきます。
リンク:Windows Server Evaluations

(1)「仮想マシンマネージャー」画面の左上にある赤枠の部分(新しい仮想マシンの作成)をクリックします。

KVM使い方

(2)今回はダウンロード済みのWindows Server 2019評価版ISOを使い仮想マシン作成するため、赤枠の部分(ローカルのインストールメディア)を選択します。

KVM使い方

(3)赤枠の「ISOイメージを使用」を選択し、ISOファイルを指定します。

KVM使い方

(4)割り当てるメモリ量とCPU数のサイズを指定します。

KVM使い方

(5)割り当てるディスクのサイズを指定します。

KVM使い方

(6)赤枠のネットワークの選択で「ブリッジ」を選択し、完了ボタンをクリックします。

KVM使い方

(7)画面左上の赤枠の部分にある「インストールの開始」ボタンをクリックします。

KVM使い方

(8)無事にWindows Server 2019のセットアップ初期画面が表示されました。

KVM使い方

仮想マシンを構築する(Ubuntu編)

それぞれの手順は、Windows編と基本は同じです。違いは手順(3)で、使用するISOファイルをWindowsではなくUbuntuを選択することだけです。

最後に下図のような画面が表示されます。Windowsの場合と比べて、メモリやCPUなどのスペックは低めに指定可能ですね。

KVM使い方

これでホストOSに2台の仮想マシンを作成し、稼働できるようになりました。

KVM、VMware Workstation Player、Citrix Hypervisorどれがいいの?

kvm-vmware-citrix

3つの代表的な仮想化技術を、簡単ではありますが筆者の主観で比較してみました。どれにしたらいいか迷っている場合に、参考にしてみてはいかがでしょうか。

KVMVMware Workstation PlayerCitrix Hypervisor
デスクトップ環境
速度●●
ホストOSLinuxLinux/ WindowsLinux/ Windows/Mac
ネットワークブリッジ/NATブリッジ/NATブリッジ/NAT
価格無償商用以外は無償無償(Free Edition)
インストールのし易さ
マニュアルの充実度●●
想定する対象者(予想)広く一般広く一般法人ユーザー
おすすめ度●●

【結論】上記の表にもありますが、速度と導入のしやすさからKVMがおすすめと筆者は考えています。

(注)Citrix Hypervisorは、旧XenServerの名称です。

まとめ

ここまでいかがでしたか。Linux KVMを活用すればより快適に、そして有限なサーバー機器を最大限に活用できるようになります。Windows OSも動作させることができるので、テスト用などの用途が広がるのではないでしょうか。

カゴヤ・ジャパンのVPSでは、このLinux KVMで構築されたプランも提供しています。ぜひご利用になり、体感されることをおすすめします。

日額 20円 で使えるVPS

開発・検証・プログラミング学習に。無駄なコストもかけたくないあなたにおすすめのVPS

カゴヤのVPSは初期費用無料でアカウント登録さえしておけば、必要なときだけ日額課金でサーバーを立ち上げ可能!料金は使った分だけ。