専門用語モリモリです。
事務所では開発環境として、Windows Server 2003(x86)にVirtual Server 2005 R2を入れて構築してある。
先日、DELLのPowerEdgeT105が導入されたので、開発環境を移してみようとしてことで作業をした。
すんなり行くかと思ったら手こずってしまったので、メモしておこう。
まずはT105。
お安いサーバで結構売れているようです。小規模サーバならこれで十分かと思われます。
購入したときのメモリはDDR2-667 1G×2枚。これにDDR2-800 2G×2枚を足して6Gにしてみた。
そうすると、起動時に「メモリ構成が異常」という警告が出るようになってしまった。
マニュアルを見る限り、正しい構成のはずなのだが。
困ったときの2ちゃんねるということで、DELL鯖のスレがあったので、質問してみた。
すると、どうやら安価といえどもサーバ機らしく、速度違いのメモリモジュールが混載されていると警告を出すらしい。
まあ、警告なのでF1キーを押すと通過できるのだが、遠隔で再起動させたときに立ち上がってこなくなってしまう。とりあえず、MicrosoftUpdateは通知だけにして自動インストールはさせないようにしないといけない。
つづいて、Windows Server 2008(x64)をインストールすることにした。
せっかくの64ビット機なので、ここは使っておかないとな。
ということで、2008(x64)のDVDを突っ込んでみたのだが、インストーラーの読み込み中画面でなつかしい青画面に。
エラー内容はUnknown hard error。うーむ、未対応ではないはずなのだが、これも同じスレで質問してみる。
これはハードに添付のCDからインストールしないといけないらしい。
いままでDELLのサーバをインストールするときって、OSのメディアからそのまま入れてたよ。
添付のCDからインストールするとあらかじめドライバなどを入れといてくれるのね。
知りませんでした。いままであのディスクの存在意義は、動作チェックのユーティリティだけだと思ってました。
Windows Server 2008(x64)には、Hyper-Vという仮想化機能がある。
Virtual ServerやVirtual PCは完全仮想化という仕組みで、要するにソフトが作った箱庭のなかで別のマシンが動くようなものです。お釈迦様の手が逃れられない孫悟空みたいな(よく分からん例えだな)。
Hyper-Vは、LinuxなどにあるXenと似た仕組みの準仮想化というもので、こちらは皆で仲良く処理能力の資源を分けようというもの。
たとえば母トラ(ハード)から母乳(処理能力)を飲むのに第一子(親となるOS)、第二子(子となるOS)…という感じで均等にぶら下がる。あ、母を機械に例えちゃった。
で、どうせならHyper-Vを試さないとあかんでしょということで、試しにVirtual Server上で動いていた開発サーバをHyper-Vで動かしてみた。
結果、起動画面で速攻青画面。エラー内容もよく分かりません。
準仮想化というのは、皆が仲良くするために、兄弟間である程度決まりを作っておくのです。
Windows Server 2008にはその決まりを持っているのですが、いきなり外から連れてきた野生のトラにはその決まりが分かりません。なので、外から連れてきたトラには、決まりを教えないといけないのですが、起動しないことにはそれも出来ないし、どうしたものか。
いろいろ調べてみたのですが、起動しないという現象が判断できずに諦める。
もともと動かそうと思っていたのは、Windows 2000のサーバで、これはHyper-Vの決まりを教えるのに対応していないらしい。「動かせなくはないけど、すっごい遅いよ」とか書いてあったので、本格的に諦めた。
結局、Windows Server 2008(x64)に、Virtual Server 2005 R2 SP1(x64)を乗せて、その上でWindows 2000を走らせた。
しかし…。
遅い。遅すぎる。
Oracle10gの入ったサーバの起動に10分ぐらいかかる。
しかもバーチャルマシンを2台起動すると、致命的なエラーというログを吐いて、バーチャルマシンが再起動してしまう。
Virtual Serverのオプションにあった、ハードウェアの仮想化処理を使用するというチェックを外してみても駄目。
どちらにしても、遅いのぐらいはなんとかして欲しいのだけど、従来より10倍以上遅くなってしまったのはどういうことか。
うーむ、困った。
いろいろと試行錯誤してみるが、一向に解決せず。
ふと、サーバの役割からHyper-Vを消してみたら…解決。
とてもきびきびと動くようになりました。
Windowsサーバ2台とLinuxサーバ2台を走らせてみましたが、全くのストレスを感じません。
さすがクアッド、さすがメモリ6G、さすがかハードウェアの仮想化処理(Hyper-V消してからまたチェックをつけた)。
冷静になって考えれば、Hyper-Vでも親となるOSも仮想処理で動いているような物なんですよね。
子OSが動いてなければ無害かと思ってました。
ということで、Windows Server 2008にVirtual Serverを入れて動作させるときは、Hyper-Vを削除しましょうというメモでした。
0 件のコメント:
コメントを投稿