仮想サーバの構築(VMware Server: WindowsXP編)


おやじは、いつでも乗り換えられるようにいろいろなデストリのテストをしていたため、今までは1つのディスクに複数のデストリをインストールしていました。しかしながら、今回、仮想化テクノロジの本家とも言うべきVMwareがBeta版(正式版も無償で公開される予定のよう)ながらVMwareシリーズの「VMware Server」を無償公開してくれたので、これをWindows XP Pro SP2クライアントに入れて仮想マシンとして動作させるようにしてみました。
一般に、WindowsクライアントはCPUもそこそこ早いですし、メモリも結構積んでおり、HDDも容量があると思います。おやじの場合は、Pentium 4 2.6CG、1GByte、HDD: 256GByte +128GByteですが、ほとんどストレスなく動かすことができました。仮想マシンのイメージをバックアップしておけば、いつでもその状態に戻せるなど、Linuxの勉強をするには最適かと思います。

■事前準備

まずは、VMware Serverがないことには始まりません。VMwareのサイトに行って、ダウンロードしてきます。Linux版とWindows版がありますがWindows版(Windows版が正式にサポートしているのはWindows2000/2003 serverのみ。)です。ダウンロードするためには、メールアドレス等のユーザ登録が必要ですが、登録したメールアドレス宛にVMware Server用の20桁のシリアル番号が送られてくるので、正確に記入する必要があります。
ダウンロードしてくるのは下記の2つですが、Windowsの場合は、他のWindowsマシンからリモートコンソールを使用しないなら、2項目は不要です。

No.

概 要

ファイル名

1

VMware Server本体 VMware-server-installer-e.x.p-xxxxx.exe
2 VMware Virtual Machine Console(Windows版) VMware-server-win32-client-e.x.p-xxxxx.zip

■インストール

ダウンロードしたVMware Server本体(VMware-server-installer-e.x.p-xxxxx.exe)を、下記のように順次インストールしていきます。

◆VMware Serverのインストール

  1. VMware Server本体(VMware-server-installer-e.x.p-xxxxx.exe)をダブルクリックし起動すると、下記のようなウィザードが表示されるので、「Next」をクリックしてインストールを開始する。



  2. ライセンスが表示されるので目をとおし、「I accept the in the license agreement」にチェックを入れ、「Next」をクリックする。



  3. セットップのタイプの選択画面が表示されるが、「Complete」を選択して、「Next」をクリックする。



  4. Windows版の場合、「VMware Management Interface」でIISを使用するため、インストールされていないと以下のような警告がでるが、後で、入れることもできるるし、サーバ機のVMware Server Consoleでも作業できるので無視して「OK」をクリックすればよい。



  5. インストールパスを聞いてくるが、特段変更する理由がなければそのまま「Next」をクリックする。



  6. CD-ROMのオートランを動かしていると、いろいろ不都合があるようなので、オートランを停止するよう「Yes disable autorun」にチェックを入れ、「Next」をクリックする。



  7. 準備ができたので、「install」をクリックしインストールを開始する。



  8. ユーザ情報の登録を行う。メールで送られてきたWindows用の20桁の「Serial Mumber」を設定し、「Next」をクリックする。



  9. インストールが完了したら、デスクトップに「VMWare Server Console」のアイコンがあるのでクリックすれば下記のコンソール画面が表示されるはずである。「VMWare Virtual Macine Console」のアイコンもあるが、こちらからなら対象とするホスト(通常はLocal host)を選択し、「Connect」ボタンをクリックする。



■仮想マシンの作成

いよいよ仮想マシンを作成しますが、ここではホストOSがインストールされているディスク上に仮想ディスクを作成する方法で行うことにします。

  1. まず、上記の「VMware Server Console」の画面で「New Virtual Machine」をクリックし加増マシン作成ウィザードを起動する。起動したら、「次へ」をクリックする。



  2. 仮想マシンの作成方法を指定する。「Typical」と「Custom」があるが、今回はウィザードで作業でき設定が簡単な「Typical」で行うこととし、「Typical」を選択し、「次へ」をクリックする。



  3. この仮想マシン上で動かすゲストOSを選択する。今回はSuSE10.0をインストールするので、「Guest Operating System」で「Linux」を選択し、「Version」で「SUSE Linux」を選択し「次へ」をクリックする。対象となるOSが無い場合は、「Other」を選択する。



  4. 仮想マシンの名前と仮想マシンをインストールするデフォルトのディレクトリが表示されるので、必要に応じて修正し「次へ」をクリックする。



  5. 続けて、仮想マシンのネットワーク関係の設置画面が表示されるので、ゲストOS から LAN を使用し IP アドレスを付与する場合は、「Use Bridged networking」を選択する。今回は、サーバ機として動かすので当然この設定となる。一方、ゲストOS を異なるネットワーク上のサーバに見立てて、ホストOS が NAT として動作して ホストOS 側のネットワークにルーティングしてくれるモード 「Use network address translation(NAT)」や、バックエンドのネットワークでゲストOSとホストOS間をつなぐ「Use host-only networking」、全くネットワークを使用しないなら「Do not use a network connection」もあるので、用途に応じて選択し「次へ」をクリックする。



  6. 仮想マシンのディスクサイズを設定する。必要に応じて2GBに分割することができる。仮想ディスクは ホストOS 上のディスクに作成されるのでホストOS 上で十分な容量が必要である。最後に「完了」ボタンをクリックして設定は完了する。



  7. 仮想ディスクの作成が行われるが、非常に時間がかかるのでじっくり待つこと。



  8. 仮想マシンに割り当てるメモリ容量を設定するため、「Device」欄の「Memory」をダブルクリックする。



  9. デフォルトの割当メモリ容量、メモリ容量の推奨範囲と実行中の全仮想マシンが使用できるメモリの総容量が表示されるので適宜修正する。SuSEはもともとメモリを喰うデストリなので、物理メモリが1GByteの場合、デフォルトで256MByteが提案されるがこの程度あれば問題なく動作できる。Windowsの場合、物理メモリできれば1GByteはほしい。



  10. 続けて、仮想マシンのCD-ROMを設定するため、「Device」欄の「CD-ROM」をダブルクリックする。デフォルトでは、「Auto detect」になっているが、うまく検出できない場合は、「Connection」のプルダウンメニューで明示的にCD-ROMを指定すると良い。



◆ゲストOSのインストール

続けて、ゲストOSをインストールしていきます。インストール自体は通常のインストールと変わりありません。なお、インストールする際には、テキストモードでインストールするとスピードアップするようです。また、グラフカルモードでインストールする場合は、フルスクリーンモードにすると良いようです。通常のまま実行するとかなり時間がかかるので、対処したほうが良いと思います。

  1. 「Inventry」で起動する仮想マシンを選択し「Power On」ボタンを押せば、あたかもパソコンの電源を入れたかのように仮想マシンが起動してくる。
    その際、下記のようにデフォルトでは仮想マシンは自動起動しない旨の警告がでるが、起動設定は後で運用に併せて設定すればよいので、「OK」を押して先に進む。



    つまり、CD/DVDドライブにSuSE9.3のインストールCD/DVDを入れてからPower Onすれば、ホストOSをインストールしたのと全く同様の操作でゲストOSがインストールできる。なお、新規の場合はこれでよいが、再インストールの場合はデフォルトの仮想BIOSのブートシーケンスが 'HDD' -> 'CD-ROM' -> 'Network' となっているので、CD-ROMからブートはできない。CD-ROMからブートするには、「Power On」ボタン押した後、直ちに仮想マシンの画面をクリックして、VMwareの仮想BIOSの初期画面(Startingと出ている黒い画面) で「Esc」キーを押して、Boot Menu画面を出す。



  2. うまくBIOSに入ることができたならブートデバイスの選択ダイアログがでるので、カーソルキーでCD-ROMを選択して「Enter」キーを押せばよい。



    定常的にブートシーケンスを変更したい場合は、「Power On」ボタン押した後、仮想マシンの画面をクリックして「F2」を押せば(連打すれば)BIOS画面に入れる。



    カーソルキーでBOOTに移動してそこでカーソルキーでCD-ROMに移動して「+」キーで順位を上げ、「F10」でBIOSをセーブすればよい。



  3. もうひとつの方法として、CD/DVD-ROMを作成せずホストOS上にあるISOイメージを直接指定してインストールすることもできる。前項の10項のCD-ROMの選択の「Connection」で「Use ISO image」でISOイメージファイルを選択して、起動すればよい。後で、設定を戻すことを忘れずに。

  4. 後は、普通にホストOSをインストールしたのと全く同様の操作でゲストOSがインストールすればよい。

    インストールが完了した後に、SuSE9.3が起動したイメージを示す。



◆VMware toolsのインストール

このままで使用することもできますが、VMware toolsをゲストOSにインストールすると以下のような機能が使えるようになるので、ここでインストールします。


VMware ServerにはRPMも用意されているので、簡単にインストールできます。(CentOS4.xの場合は、GUIではうまくインストールできないので、CUIでインストールする。)

  1. まず、「VM」->「Install VMware Tools」でインストールを開始する。



  2. インストーラを起動すると、以下のメッセージが表示されるので、ゲストOSが起動していることを確認し、「Install」をクリックする。



  3. CDイメージが表示される。rpmとtarファイルがあるが、今回はrpmでインストールするのでrpmファイルをクリックするとrpmビューアが開くので、上部にある「YaSTでパッケージをインストールする」をクリックしてインストールを行う。



  4. VMware Toolsの設定を行う。設定を行うのはゲストOSの画面解像度である。

    # vmware-config-tools.pl

    Stopping VMware Tools services in the virtual machine:
       Guest operating system daemon:                                      done
       Guest filesystem driver:                                            done
    Shutting down network interfaces:
    Shutting down service network  .  .  .  .  .  .  .  .  .  .  .  .  . done.
       Guest vmxnet fast network device:                                   done
    Trying to find a suitable vmhgfs module for your running kernel.

    The module bld-2.6.11.4-20a-i586default-SuSE9.3 loads perfectly in the running
    kernel.

    Trying to find a suitable vmxnet module for your running kernel.

    The module bld-2.6.11.4-20a-i586default-SuSE9.3 loads perfectly in the running
    kernel.

    Detected X.org version 6.8.

    This program previously created the file
    /usr/X11R6/lib/modules/drivers/vmware_drv.o, and was about to remove it.

    Please choose one of the following display sizes (1 - 13):

    [1]  "640x480"
    [2]  "800x600"
    [3]  "1024x768"
    [4]  "1152x864"
    [5]  "1280x800"
    [6]  "1152x900"
    [7]  "1280x1024"
    [8]  "1376x1032"
    [9]  "1400x1050"
    [10]  "1680x1050"
    [11]  "1600x1200"
    [12]  "1920x1200"
    [13]  "2364x1773"
    Please enter a number between 1 and 13:

    [3] 3[Enter]


    X Window System Version 6.8.2
    Release Date: 9 February 2005
    X Protocol Version 11, Revision 0, Release 6.8.2
    Build Operating System: SuSE Linux [ELF] SuSE
    Current Operating System: Linux linux 2.6.11.4-20a-default #1 Wed Mar 23 21:52:37 UTC 2005 i686
    Build Date: 22 March 2005
            Before reporting problems, check http://wiki.X.Org
            to make sure that you have the latest version.
    Module Loader present
    Markers: (--) probed, (**) from config file, (==) default setting,
            (++) from command line, (!!) notice, (II) informational,
            (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (++) Log file: "/tmp/vmware-config3/XF86ConfigLog.6822", Time: Sat Apr 15 08:24:09 2006
    (++) Using config file: "/tmp/vmware-config3/XF86Config.6822"

    X is running fine with the new config file.

    (WW) VMWARE(0): Failed to set up write-combining range (0xf0000000,0x1000000)
    Could not init font path element /usr/X11R6/lib/X11/fonts/local, removing from list!
    Starting VMware Tools services in the virtual machine:
       Switching to guest configuration:                                   done
       Guest filesystem driver:                                            done
       Guest vmxnet fast network device:                                   done
       DMA setup:                                                          done
       Guest operating system daemon:                                      done

    The configuration of VMware Tools e.x.p build-22874 for Linux for this running
    kernel completed successfully.

    You must restart your X session before any mouse or graphics changes take
    effect.

    You can now run VMware Tools by invoking the following command:
    "/usr/bin/vmware-toolbox" during an XFree86 session.

    To use the vmxnet driver, restart networking using the following commands:
    /etc/init.d/network stop
    rmmod pcnet32
    rmmod vmxnet
    depmod -a
    modprobe vmxnet
    /etc/init.d/network start

    Enjoy,

    --the VMware team

  5. このままでは、VMware-toolの機能は使用できない。仮想マシン上で下記を入力するとコンソール画面が表示される。

    # vmware-toolbox &

    必要に応じて設定を行い、「Close」をクリックして、コンソールを閉じる。コンソールを閉じてもバックグランドで動作しているので、機能は動作している。



  6. このまま仮想マシンが動作していればいいが、再起動したりすると当然停止してしまい、毎回起動が必要になる。そこで、X起動時に自動的に起動するように設定する。gnomeに関しては、 GSX Server のドキュメントにあるので参考にすると良い。おやじは KDE なので、http://www.atmarkit.co.jp/flinux/rensai/linuxtips/266startupkde.html での設定方法に従い "/usr/bin/vmware-toobox " を登録する。

[CUIインストール(CentOS4.xの場合]

CentOSの場合、GUIではインストールできないCUIでインストールする。(CUIインストールが本来の方法?)

  1. ゲストOSのコンソールでrootになって、一時的にランレベル3になる。

    $ su -
    Password:
    xxxxx
    # telinit 3

    この方法ではうまくいかない場合(おやじは不可)は、/etc/inittab を下記のように5 -> 3に変更してゲストOSを再起動する。最後に元に戻すのを忘れずに。

    id:3:initdefault:

  2. 前述の1,2項と同様に[VM] -> [Install VMware Tools]を選択し、確認ダイアログで[Install]をクリックする。

  3. /media/cdrecorder(/media/cdrom)をマウントして、RPMをインストールする。

    # mount /media/cdrecorder
    mount: ブロックデバイス /dev/hdc は書き込み禁止です、読込み専用でマウントします
    # ls /media/cdrecorder
    VMwareTools-e.x.p-20925.i386.rpm VMwareTools-e.x.p-20925.tar.gz
    # rpm -Uvh /media/cdrecorder/VMwareTools-e.x.p-20925.i386.rpm
    Preparing...  ########################################### [100%]
    1:VMwareTools ########################################### [100%]

    インストールが完了した後は前項と同様であり、解像度を設定後に「startx」で起動して、自動起動の設定等を行えばよい。最後にランレベルを5に戻すのを忘れずに。

     

■システムクロックが異常に進む

Windows版ではLinux版で発生した、「'_'(アンダーバー)の入力ができない」という問題は発生しないが、替わりといっては何だが、仮想マシンのシステムクロックが異常に進むという問題が発生することがある。おやじの場合はCentOS4.3が顕著であり、VMware-toolの「Options」でホストマシンとの同期をとっても駄目であり、ntpdも全く同期することができなかった。チョット調べたところ、下記の3点の対策を行えばほぼ問題ないレベルまで同期できるようである。0〜10秒程度に収まっている。

  1. ホストマシンであるWindowsのクロックを、桜時計等で時刻同期させる。

  2. VMware-toolの「Options」でホストマシンとの同期をとるように設定する。(上記の5項参照)

  3. ゲストOSのkernelの起動オプションに以下の赤字を追加する。修正は、/etc/grub/menu.lst(/etc/grub/grub.conf)で行う。

    title SUSE LINUX 9.3
        kernel (hd0,1)/boot/vmlinuz root=/dev/sda2 vga=0x333 selinux=0 splash=silent acpi=off clock=pit noapic resume=/dev/sda1 showopts
        initrd (hd0,1)/boot/initrd


Top Pageへ