1 views
実現する機能
KVM(Kernel-based Virtual Machine) (ケーブイエム) は仮想化ソフトです。Windowsを搭載していたパソコンが壊れたので、サーバー機でCentOSとWindowsを同時に動かして使っています。動画ファイルの変換にはWindowsが不可欠ですからね。さらには、CentOSのテスト環境を構築し、危ないソフトを試したりしています。欠点は、DVDドライブ以外の周辺機器はUSBも含めて使えない点です。マザーボードが古いせいかもしれませんが、残念です。
※KVMを導入するためには、パソコンのプロセッサが「Intel VT」か「AMD-V」のどちらかでないと動作しません。
KVMの導入手順
(1)自宅サーバーが仮想化できるか確認
[root@ufuso ~]# egrep '(vmx|svm)' /proc/cpuinfo ← 自宅サーバーがKVMで仮想化できるPCか調べる flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch lbrv ← svm(Intelならvmx) とあるのでOK。 flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch lbrv ← svm(Intelならvmx) とあるのでOK。 [root@ufuso ~]# lsmod | grep kvm ← kvmモジュールがロードされているか確認 ← 何も表示されないので、ロードされていない [root@ufuso ~]# modprobe kvm ← 必要なモジュールを組み込む [root@ufuso ~]# modprobe kvm_amd ← AMD用モジュールの組込。INTEL用だとkvm_intel [root@ufuso ~]# lsmod | grep kvm ← モジュールが組み込まれたか確認 kvm_amd 41702 0 kvm 316506 1 kvm_amd ← ロードされている |
(2)KVMのインストール
[root@ufuso ~]# yum -y install qemu-kvm libvirt python-virtinst bridge-utils virt-manager ← kvmとlibvirt をインストール Installed: libvirt.x86_64 0:0.9.10-21.el6_3.4 python-virtinst.noarch 0:0.600.0-8.el6 qemu-kvm.x86_64 2:0.12.1.2-2.295.el6_3.1 virt-manager.x86_64 0:0.9.0-14.el6 Dependency Installed: augeas-libs.x86_64 0:0.9.0-4.el6 celt051.x86_64 0:0.5.1.3-0.el6 cyrus-sasl-md5.x86_64 0:2.1.23-13.el6 ebtables.x86_64 0:2.0.9-6.el6 gnutls-utils.x86_64 0:2.8.5-4.el6_2.2 gpxe-roms-qemu.noarch 0:0.9.7-6.9.el6 gtk-vnc.x86_64 0:0.3.10-3.el6 gtk-vnc-python.x86_64 0:0.3.10-3.el6 iscsi-initiator-utils.x86_64 0:6.2.0.872-41.el6 libcacard.x86_64 0:0.15.0-2.el6 libvirt-client.x86_64 0:0.9.10-21.el6_3.4 libvirt-python.x86_64 0:0.9.10-21.el6_3.4 nc.x86_64 0:1.84-22.el6 netcf-libs.x86_64 0:0.1.9-2.el6 numactl.x86_64 0:2.0.7-3.el6 numad.x86_64 0:0.5-4.20120522git.el6 qemu-img.x86_64 2:0.12.1.2-2.295.el6_3.1 radvd.x86_64 0:1.6-1.el6 seabios.x86_64 0:0.6.1.2-19.el6 sgabios-bin.noarch 0:0-0.3.20110621svn.el6 spice-glib.x86_64 0:0.11-11.el6 spice-gtk.x86_64 0:0.11-11.el6 spice-gtk-python.x86_64 0:0.11-11.el6 spice-server.x86_64 0:0.10.1-10.el6 usbredir.x86_64 0:0.4.3-1.el6 vgabios.noarch 0:0.6b-3.6.el6 yajl.x86_64 0:1.0.7-3.el6 Complete! [root@ufuso ~]# /etc/rc.d/init.d/libvirtd start ← ibvirtdの起動 libvirtd デーモンを起動中: [ OK ] [root@ufuso ~]# chkconfig libvirtd on ← 自動起動設定 |
(3)ゲストOSがブリッジ接続できるようにブリッジネットワークを構成
※ブリッジ接続は、一歩間違えるとインターネットに繋がらなくなります。仮想PCを自宅のネットワークに参加させてファイルの共有とかをやる必要がなければ、ブリッジ接続はお勧めしません。
[root@ufuso ~]# cd /etc/sysconfig/network-scripts ← network-scriptsフォルダへ移動 [root@ufuso network-scripts]# cp ifcfg-eth0 ifcfg-br0 ← eth0をbr0にコピー [root@ufuso network-scripts]# vi ifcfg-br0 ← br0ファイルの編集 DEVICE="br0" ← 「br0」に変更 BOOTPROTO=none #NM_CONTROLLED="yes" ← 行頭に#を付加してNetworkManagerを無効化 ONBOOT=yes TYPE=Bridge ← 「Bridge」に変更 UUID="7b7e19bf-1b75-49d1-80b7-cd8e1c47f20a" DEFROUTE=yesIPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" HWADDR=90:E6:BA:C9:DE:B3 LAST_CONNECT=1344602933 ← 以下、無ければ自分のネットワーク環境を追記 IPADDR=192.168.24.240 ← サーバーのIPアドレスを入力 PREFIX=24 GATEWAY=192.168.24.1 ← ルーターのIPアドレスを入力 DNS1=192.168.24.240 ← サーバーのIPアドレスを入力 DNS2=192.168.24.1 ← ルーターのIPアドレスを入力 DOMAIN=ufuso.dip.jp ← サーバーのドメイン名を入力 [root@ufuso network-scripts]# vi ifcfg-eth0 ← eth0ファイルの編集 DEVICE=eth0 TYPE=Ethernet UUID=e2ea16f0-5687-454c-9aa2-379f302cc0f8 ONBOOT=yes #NM_CONTROLLED="yes" ← 行頭に#を付加してNetworkManagerを無効化 BOOTPROTO=none IPADDR=192.168.24.240 PREFIX=24 GATEWAY=192.168.24.1 DNS1=192.168.24.240 DNS2=192.168.24.1 DOMAIN=ufuso.dip.jp DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" HWADDR=90:E6:BA:C9:DE:B3 LAST_CONNECT=1366279082 BRIDGE=br0 ← ブリッジ名「br0」を明記 [root@ufuso network-scripts]# cd ← network-scriptsフォルダから移動 [root@ufuso network-scripts]# service NetworkManager stop ← NetworkManagerの 停止 NetworkManager デーモンを停止中: [ OK ] [root@ufuso ~]# chkconfig NetworkManager off ← NetworkManagerは使わないので 自動起動を停止 [root@ufuso ~]# chkconfig --list NetworkManager ← 停止できているか確認 NetworkManager 0:off 1:off 2:off 3:off 4:off 5:off 6:off ← すべてOFFならOK [root@ufuso ~]# /etc/rc.d/init.d/network restart ← networkの再起動 ループバックインターフェースを終了中 [ OK ] ループバックインターフェイスを呼び込み中 [ OK ] インターフェース eth0 を活性化中: [ OK ] インターフェース br0 を活性化中: [ OK ] [root@ufuso ~]# ifconfig ← br0がIPを取得できているか確認 br0 Link encap:Ethernet HWaddr 90:E6:BA:C9:DE:B3 inet addr:192.168.24.240 Bcast:192.168.24.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:23 errors:0 dropped:0 overruns:0 frame:0 TX packets:47 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:4039 (3.9 KiB) TX bytes:6291 (6.1 KiB) eth0 Link encap:Ethernet HWaddr 90:E6:BA:C9:DE:B3 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:564491 errors:0 dropped:0 overruns:0 frame:0 TX packets:515650 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:217747911 (207.6 MiB) TX bytes:54705923 (52.1 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:79984 errors:0 dropped:0 overruns:0 frame:0 TX packets:79984 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:21209637 (20.2 MiB) TX bytes:21209637 (20.2 MiB) virbr0 Link encap:Ethernet HWaddr 52:54:00:E9:F5:B9 inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:62 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:11145 (10.8 KiB) |
(4)WindowsXPをゲストOSとして新規にインストールする場合
1.赤枠1をクリックして表示される一覧から赤枠2をクリックし、表示される一覧から赤枠3をクリックします。
3.赤枠1に仮想マシン名を入力し、CD又はイメージファイルからインストールする場合で説明を進めるので赤枠2をクリックし、最後に赤枠3をクリックします。
4.赤枠1にチェックが入っていること確認し、赤枠2と3でOSの情報を選択し、終わりましたら赤枠4をクリックします。
5.赤枠1と赤枠2の設定数値を入力して、赤枠3をクリックします。
6.赤枠1は8GBでは足りなくなると思いますので、最低でも例示程度の設定は必要かと思います。赤枠2は逆にチェックを外してハードディスク全体の容量が固定化で無駄になるのを避けます。終わりましたら赤枠3をクリックします。
7.赤枠1の「詳細なオプション」をクリックすると赤枠1内に設定内容が表示されます。赤枠3をクリックするとインストールが始まります。赤枠2にチェックが入っていると7ー2の画面が表示されます。(CentOSの例ですが、手順は変わりません)
7ー1.ブリッジ接続の設定をしていない場合には、赤枠の設定になります。
7ー2.赤枠1のメモリは1024Mがきびしければ、赤枠2内の初期値を512Mまで下げてください。赤枠3をクリックするとインストールが始まります。
8.WindowsXPのインストール画面が表示されましたら、赤枠の指示どおりエンター・キーを押します。
12.赤枠1の表示が出ましたら、赤枠2の指示どおりエンター・キーを押します。
13.赤枠1の表示が出ましたら、赤枠2の指示どおりエンター・キーを押します。
15.赤枠1にユーザー名を入力して、赤枠2をクリックします。
16.赤枠1にコンピューター名を入力して、赤枠2をクリックします。
17.この画面が出ましたら、日を確認して赤枠をクリックします。
18.赤枠1にチェックが入っていることを確認して、赤枠2をクリックします。
19.この画面がこれまで説明した画面の全体像です。真ん中の黒い画面に表示されているOKボタンをクリックします。背景はScientific Linux 6.2の画面です。
20.CentOSの画面の上にWindowsXPの画面が表示されています。説明は以上です。最新のWindowsアップデートをしてからお使いください。この状態でインターネットを使うとセキュリティホールだらけですから。
(5)作成済みのゲストOS(WindowsXP)を再インストールする場合
1.赤枠1をクリックして表示される一覧から赤枠2をクリックし、表示される一覧から赤枠3をクリックします。
2.赤枠1にrootのパスワードを入力し、赤枠2の「認証する」をクリックします。
4.赤枠1に再インストールする仮想マシン名を入力し、赤枠2で「既存のディスクイメージをインポート」にチェックを入れ、赤枠3の「進む」をクリックします。
7.既存のディスクイメージのあるフォルダまでたどり、赤枠の既存ディスクイメージをクリックします。
8.赤枠1でOSとバージョンを選び、赤枠2の「進む」をクリックします。
9.赤枠1で仮想OSに割り当てるメモリとCPU数を入力し、赤枠2の「進む」をクリックします。
10.赤枠1の「インストールの前に設定をカスタマイズする」をクリックし、赤枠2のホストデバイスが「br0」であることを確認し、赤枠3の「完了」をクリックします。
11.カスタマイズ画面になるので、例示としてメモリの設定を変えてみます。赤枠1の「Memory」をクリックして、赤枠2の設定を変更し、赤枠3の「適用」をクリックします。カスタマイズが終わりましたら、赤枠4の「インストールの開始」をクリックします。
コメントを残す