« 凄いぞ つくばエクスプレス | Main | Ubuntu 9.04 »

April 20, 2009

LOOX U/C30 で仮想化

E147七つの威力にも書いたが、LOOX U/C30 の CPU Z520 は、仮想化技術に対応している。とりあえず、KVM と言う Ubuntu で使える仮想化ソフトを試してみたけど、まあ画面も小さいし、CPU パワーも少ないし、実用に使うことは無いだろう・・・と、前述のコンテンツにも書いた。

ところが、そうじゃなかった。意外な事に LOOX U/C30 で仮想化を多用している。

具体的には、RedMine と言うWebアプリのインスト方法の調査に仮想化技術を使った。
RedMine と言うのは、Web上で動くソフトウエアのプロジェクト管理ソフトだ。RedMine は、Ruby on Rails で作られていて、さらにデータベースとして MySQL を使っている。また、Rails を Web サーバーの Apache 上で動かすためには、Passenger や FastCGI などの中間的なモジュールも必要となる。RedMine をインストするパターンは、RedMine自体のバージョンのみならず、Apache、中間モジュール、Ruby、Rails、MySQL の各々のバージョンの組合せと言う何十通りも存在することになる。
これを我が家で動いている格安(?)静音サーバーの Debian etch で動かそうと言うのが、目的だ。最新の Debian lenny なら、最新のパッケージをインストすれば良い。だが、2年前にリリースされた etch だと、古いパッケージも沢山含まれている。この際、Debian lenny にインストしなおした方が良いかもしれない。だが、可能な限り、サーバーを止めずに、現状維持に近い状態で、RedMine をインストできるものなら、インストしたい。

そこで、LOOX U/C30 の Ubuntu 上に KVM を使って、仮想HDDにDebian etch をインストし、我が家のサーバーと同じような環境を作った。もちろん、HDD容量が小さいので、保管しているファイルは少ないが・・・
仮想HDDは単なるファイルになので、これをコピーして、4つにした。流石に何十通りものパターンを調べるのは大変なので、典型的な4通りのパターンで、RedMine をインストし、比較した。

もし、仮想化が無くて、4通りのパターンでインストして比較するとしたら、大変だ。HDDに一々インストしなければならない。実際、以前は、そのような方法をやっていたが、思い出すだけでも嫌になるくらい時間と手間がかかる。しかし、仮想化を使えば、何通りものパターンを、LOOX U/C30 の上で比較評価することも簡単だ。

仮想化するなら、LOOX U/C30 のような超小型ノートPCでなくても、デスクトップPCの方が向いていると思われるかもしれない。我が家では、Athlon64X2を用いたデスクトップ機でも同じような仮想化ができるし、画面も大きく、CPU能力もメインメモリも大きいので、仮想化に向いている筈だ。

ところが、実際には、LOOX U/C30 と言う超小型ノートPCで、作業は行った。理由は簡単。電車の中で作業ができるからだ。本物のインターネットに接続する作業でなければ、LOOX U/C30 の中の仮想的なネットの中で、全て作業できる。私の場合、通勤に電車を使っているのと、出張が多いので、電車の中で作業するのが、最も時間を取れるのである。
仮想マシンの上で、インスト方法を確立した後、実際のサーバーにインストしたから、サーバーの運用停止は最小限に抑えることができた。大成功である。

仮想化技術を使うと、このようなサーバーの試験テストがとても簡単になる。まだ、複数の仮想マシンを仮想ネット上で接続する試験を行った事は無いが、それができれば、分散コンピューティングなどの試験もできるだろう。

最近、流行りの UMPC の中で、仮想化技術に対応している CPU は ATOM の中でも Z530とZ520だけで、一般に使われている ATOM N270等は仮想化に対応していない。
UMPCを買うときに CPU が仮想化に対応しているかどうかは、重要視されないだろう。私自身も自分が使うまで、それが重要だとは思わなかった。しかし、実際に使ってみると凄く役に立つ。私のようにサーバーのお守りをするような人は、UMPCを買うときも仮想化技術に対応したものを選ぶべきだろう。

しかし、電車の中で、小さなノートPC相手に、何通りもの仮想サーバーをセッティングしているのも、異常といえば異常なんだろうな。

|

« 凄いぞ つくばエクスプレス | Main | Ubuntu 9.04 »

Comments

はじめまして。
突然の書き込みで失礼します。
当方、縁あって知人からLOOX_U/C30を譲り受けました。
PCを持ち歩く人間ではないことから、エコ流行りも兼ねて自宅のサーバにしようと思っています。
経験ないところで仮想化にチャレンジしているワケです。

【OS】
CentOS5.5Final
※KVMインストール
※BIOSにてintel-VTをON

インストール後、仮想マシンマネージャを起動しゲストOSを作成使用としているのですが、仮想化の方法にて準仮想化しか選択できず、CPUには完全仮想化サポートがないと言われます。
LOOX U/C30のZ520では、完全仮想化できないものでしょうか?

色々調べたのですが、なかなかヒットする情報がなくOS違いでお聞きするのは失礼かとも思いましたが、書き込みをさせて戴いた次第です。

不適切な内容であれば削除をお願い致します。
宜しくお願い致します。

Posted by: shigezo | June 26, 2010 01:00 PM

ようこそ、shigezo さん。「不適切な内容」ではありませんので、ご安心を。

私の LOOX U/C30のZ520で、完全仮想化できております。

気になる点が3つ
1)BIOS
・BIOSにてintel-VTをON
とありますが、
・起動時、何かのキーを押しBIOS設定画面を出す。
・「詳細」「CPU設定」
 ・「Virtualization Technology=使用する」
・「保存して起動」
していますでしょうか?

2)/etc/modules
また、CentOS5.5Final は詳しくないのですが、
・/etc/modules に kvm-intel と言う一行が入っているか? 入っていなければ、追加して再起動。
 ・Ubuntuの場合、KVMをインストすると自動的に挿入されるようです。

3)/dev/kvm のパーミッション
・kvmを走らせる前に、それを走らせるユーザーから/dev/kvm が書き換え実行可能なパーミッションにする必要がある。
 ・ chmod 777 /dev/kvm
・Ubuntu の場合、起動する度に/dev/kvm のパーミッションがもどるので、毎回、パーミッションを変更する必要がある。

私が気になる点は、以上です。お試しください。

Posted by: 野田篤司 | June 27, 2010 07:39 AM

快くご相談・ご助力を頂きまして、誠に有難うございます。
ご指摘戴いた内容について、現状までも進捗報告をさせて頂きます。

> 1)BIOS

起動時に任意のキーを押し、BIOSへ移動。
CPU設定の「Virtualization Technology」を「使用する」に変更し、「保存」してから完全に電源を遮断してから起動しております。

> 2)/etc/modules

まず、/etc/modulesが存在しませんでした。
調べておりますと、/etc/modules.confが存在しない場合、デフォルトで読み込む内容が存在し、これを「modprobe -c」で確認できるとの情報がありましたので、試してみると"kvm-intel"と言う行はありませんでした。

> 3)/dev/kvm のパーミッション

やはり「/dev/kvm」も存在しませんでした。

その他、気になる点としてXを起動しパッケージマネージャを起動してみると「仮想化」-「KVM」のチェックが外れていました。
これをチェックし、「適用」をしてみると「依存性関係を解決中にエラー」が発生します。

「libvirt conflicts with kvm」

もう少し調査をすすめる必要があるようですが、KVMがちゃんとインストールできてない?なんてオチも含め調べてみます。

Posted by: shigezo | July 01, 2010 12:04 AM

やはり、KVMがlibvirtとコンフリクト起こしているのが、一番ありそうですね。ちなみに ubuntu では、 kvm インストには libvirt は要らないようです。

Posted by: 野田篤司 | July 04, 2010 01:28 PM

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack


Listed below are links to weblogs that reference LOOX U/C30 で仮想化:

« 凄いぞ つくばエクスプレス | Main | Ubuntu 9.04 »