仮想化 · 2 min read · Jan 31, 2026

CentOS 5.2 サーバーでの KVM を使用した仮想化

CentOS 5.2 サーバーでの KVM を使用した仮想化

バージョン 1.0
著者: Falko Timme

このガイドでは、CentOS 5.2 サーバー上で仮想マシンを作成および実行するために KVM をインストールして使用する方法を説明します。イメージベースの仮想マシンと論理ボリューム (LVM) を使用する仮想マシンの作成方法を示します。KVM は Kernel-based Virtual Machine の略で、ハードウェア仮想化を利用します。つまり、ハードウェア仮想化をサポートする CPU が必要です。例: Intel VT または AMD-V。

これがあなたにとって機能するという保証はありません!

1 前提条件

ここでは、ホスト名 server1.example.com と IP アドレス 192.168.0.100 を持つ CentOS 5.2 サーバーを KVM ホストとして使用しています。

また、インストールした仮想マシンのグラフィカルコンソールに接続するために virt-manager をインストールするデスクトップシステムが必要です。ここでは、Ubuntu 8.10 デスクトップを使用しています。

2 KVM のインストール

CentOS 5.2 KVM ホスト:

実行します

system-config-securitylevel

SELinux を Permissive に設定します (SELinux を Disabled に設定すると virt-install は機能しません)。

次に、CPU がハードウェア仮想化をサポートしているかどうかを確認します。これが当てはまる場合、コマンド

egrep '(vmx|svm)' --color=always /proc/cpuinfo

は何かを表示するはずです。例えば、次のように:

[root@server1 ~]# egrep '(vmx|svm)' --color=always /proc/cpuinfo  
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall  
 nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy misalignsse  
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall  
 nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy misalignsse  
[root@server1 ~]#

何も表示されない場合、プロセッサはハードウェア仮想化をサポートしていないため、ここで停止する必要があります。

次に、ソフトウェアパッケージの GPG キーをインポートします:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

KVM と virtinst (仮想マシンを作成するためのツール) をインストールするには、次のコマンドを実行します

yum install kvm kmod-kvm qemu libvirt python-virtinst

その後、システムを再起動します:

reboot

再起動後、KVM カーネルモジュールがロードされているはずです:

lsmod | grep kvm
[root@server1 ~]# lsmod | grep kvm  
kvm_amd            50452  0  
kvm                109264  1 kvm_amd  
[root@server1 ~]#

(この出力は AMD-V プロセッサを搭載したシステムからのものです。システムが Intel VT CPU を使用している場合、kvm_intel のような表示がされるはずです。)

KVM が正常にインストールされたかどうかを確認するには、次のコマンドを実行します

virsh -c qemu:///system list

次のような表示がされるはずです:

[root@server1 ~]# virsh -c qemu:///system list  
 Id Name                 State  
----------------------------------  
  
[root@server1 ~]#

エラーが表示される場合は、何かがうまくいかなかったことを意味します。

次に、仮想マシンが他のホストから物理システムのようにアクセスできるように、サーバーにネットワークブリッジを設定する必要があります。

これを行うために、bridge-utils パッケージをインストールします…

yum install bridge-utils

… そしてブリッジを構成します。ファイル /etc/sysconfig/network-scripts/ifcfg-br0 を作成します ( /etc/sysconfig/network-scripts/ifcfg-eth0 ファイルから BOOTPROTO、BROADCAST、IPADDR、NETMASK、および NETWORK の値を使用してください):

vi /etc/sysconfig/network-scripts/ifcfg-br0

| DEVICE=br0 TYPE=Bridge BOOTPROTO=static BROADCAST=192.168.0.255 IPADDR=192.168.0.100 NETMASK=255.255.255.0 NETWORK=192.168.0.0 ONBOOT=yes |

/etc/sysconfig/network-scripts/ifcfg-eth0 を次のように修正します (BOOTPROTO、BROADCAST、IPADDR、NETMASK、および NETWORK をコメントアウトし、BRIDGE=br0 を追加します):

vi /etc/sysconfig/network-scripts/ifcfg-eth0

| # Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ DEVICE=eth0 #BOOTPROTO=static #BROADCAST=192.168.0.255 HWADDR=00:10:A7:05:AF:EB #IPADDR=192.168.0.100 #NETMASK=255.255.255.0 #NETWORK=192.168.0.0 ONBOOT=yes BRIDGE=br0 |

ネットワークを再起動します…

/etc/init.d/network restart

… そして実行します

ifconfig

これでネットワークブリッジ (br0) が表示されるはずです:

[root@server1 ~]# ifconfig  
br0       Link encap:Ethernet  HWaddr 00:10:A7:05:AF:EB  
          inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0  
          inet6 addr: fe80::210:a7ff:fe05:afeb/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:17 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:53 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:0  
          RX bytes:1160 (1.1 KiB)  TX bytes:14875 (14.5 KiB)  
  
eth0      Link encap:Ethernet  HWaddr 00:10:A7:05:AF:EB  
          inet6 addr: fe80::210:a7ff:fe05:afeb/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:13662 errors:7 dropped:160 overruns:4 frame:0  
          TX packets:11646 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:1000  
          RX bytes:15144608 (14.4 MiB)  TX bytes:1379942 (1.3 MiB)  
          Interrupt:74 Base address:0xcc00  
  
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0  
          inet6 addr: ::1/128 Scope:Host  
          UP LOOPBACK RUNNING  MTU:16436  Metric:1  
          RX packets:38 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:38 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:0  
          RX bytes:4308 (4.2 KiB)  TX bytes:4308 (4.2 KiB)  
  
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0  
          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:35 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:0  
          RX bytes:0 (0.0 b)  TX bytes:9987 (9.7 KiB)  
  
[root@server1 ~]#

3 Ubuntu 8.10 デスクトップに virt-viewer または virt-manager をインストールする

Ubuntu 8.10 デスクトップ:

ゲストのグラフィカルコンソールに接続する手段が必要です - これには virt-manager を使用できます (Ubuntu 8.10 での KVM ゲスト管理を参照)。Ubuntu 8.10 デスクトップを使用していると仮定します。

次のコマンドを実行して

sudo aptitude install virt-manager

virt-manager をインストールします。

(もし Fedora 10 デスクトップを使用している場合、次のようにして virt-manager をインストールできます:

root になります…

su

… そして実行します

yum install virt-manager

)

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。