[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[orca-users:13311] Re: 仮想マシンについて



松浦@押上駅前 松浦内科クリニックです。

 昨年暮れに開業したばかりで今年初めて各種の健康診断に参加するため、スタッフが検診項目を間違えないように夜も寝ないでマニュアルの作成に時間を割いてきましたがやっと完成に近づいてきたので、議論に参加します。

 結論から言うと私はホストOSとしてCentOS、仮想マシンソフトウェアとしてVirtualBox、仮想マシン同士を接続する仮想スイッチとしてOpenVswitchを使用し、1台のマシンの中で仮想のネットワークを作ると同時に、この仮想スイッチに実物のネットワークインターフェースも接続して院内LANとも接続し、受付端末3台・BrotherMFC-6710CDW(ネットワークプリンター兼スキャナ→6910の方が良かった。。。)・スター精機レシートプリンター(ORCAのお薬手帳印刷用)・CR・エコー・心電図・Vaserra・スパイロ・自動血球計数装置・CRP測定装置(身長体重計や血圧計はこれから接続予定)などと接続し、すべてのデータが仮想マシン上サーバー(つまり、診察室の1台のマシン)に集まってきて、ここから各種出力装置に出力されるように
設定していますよ。

 10年ぐらい前に、不安定なWindowsからFileを守るために使用していたLinuxのFile Serverと、Windows95のデスクトップを1台に統合するために、VMwareWorkstationを発売前の試用版の時からVer.5ぐらいまで使用していました。仮想マシン上では、ハードウェアの不安定性・互換性問題を仮想ソフトウェアがほとんど吸収してしまうので、一旦インストールされてしまえば、非常に互換性が高く、安定するように思います)
 Windows2000前後から、Windowsが安定してきたためしばらく使用していなかったのですが、開業するに当たってサーバーと自分が診察室で使用するマシンを統合する目的で仮想マシンを再評価しました。
 上記の目的からは、
 1)各種サーバーとなるLinux、クライアントとなるWindows、その他のOSがひとつの仮想マシンソフトウェア上で動くことが必要です。(ためしにKVMとVirtualBoxを同時に動かそうとしましたがダメでした。VMwareとVirtualBoxはOKですが、リソースの無駄かなと思い、やめました。)
 2)また、クライアントマシンにはUSB機器が大量に接続されますし、場合によってリモート仮想マシン上で動いているOSに、ローカルのクライアントマシンにつないでいるUSB機器を接続して使用したくなる場面も出てくるかもしれません。
 3)VMware草創期に仮想マシンを使用した経験から言うと、仮想マシン上のOSをクライアントマシンとして快適に使用できるか否かの鍵は、仮想マシン専用ビデオドライバーの完成度が握っています。それに加えて、ディスクアクセス用デバイスドライバーやネットワークインターフェースドライバーの完成度も重要です。(なぜ、わざわざ仮想マシン上のOSをクライアントとして使用するかというと、ホストOSをクライアントとして使用して何かの拍子にホストOSが不安定になったり、リブートを要する状態に陥ったりすると、その中で動いている仮想マシン全てに影響を与えるからです。仮想マシン上の1つのOSを使用していれば、そのOSを飛ばしてしまっても、その他のOSには影響を与えません。)
 4)将来、マシンを複数に分割して、各々のマシンの中に仮想マシン・ネットワークを作り、これらをお互いに接続しあって、片方のマシンが飛んでも、もう片方のマシンで業務を続けられるようにできる必要があります。

 昔使用していて、自分の中での信頼感が絶大なVMwareは当然上記全て可能で、今でもNo1と思っています。VMware上でWindowsだろうが、Linuxだろうが使用していると、まったく違和感がないので、仮想マシン上で動かしていることを完全に忘れてしまうことがあります。しかし、上記4)を行おうとしたとたん、高価なオプションソフトウェアが必要となってきます。これが結構何度もバージョンアップさせられるんです、多分。と、いうことでボツ。

 KVM。評価していたときは、すごい勢いで開発が続いていましたが、例えばUSBの接続の方法も複数のプロジェクトで開発されており、いったいどれが主流になるのやら、制限も多いし。将来性はありそうだけど、いつかは安定するだろうから、それからゆっくり考えても良いかな?また、ビデオドライバーの完成度が低くて、内部的な計算は終了しているのに、画面の描画が遅すぎて、一仕事終わるのに数テンポ遅れている感じがします。サーバーのみの使用であれば、画面描画は関係ないからよいかも。と、言うことで今回はこれもボツ。

 Xen。カーネルを入れ替える必要がある。。。もし緊急で復旧する必要性がある状態に陥っていたら、、、そんなことしてたら絶対に間違えます。ボツ。

 LXC。ホストOSのカーネルを皆で利用する。。。と、言うことはWindows Clientは動かせないです。。。入れる予定のアドオン・ソフトや、Windows上で動くrs_base、業務用会計ソフトが使えません。(もしかしたらLXC上のLinux上のVMware上のWindowsは動かせるかも。試していません。ちなみにKVM上のLinux上にVirtualBoxをインストールしたら動きました。すごいとは思うけど遅い。)ボツ。

 と、言うことで最後にVirtualBox。
 Oracleのサイトから、本体とextension pack(USB接続機能、ネットワーク上のiSCSIディスクをまるでローカルに接続されているディスクに見せる機能、リモートデスクトップで接続しているマシンにローカルマシンのUSB機器をネットワーク越しに接続する機能などなどを提供)をインストールしました。VMwareよりもまれに不安定なこともあるけれども、Oracleにライセンス条項OKサインを出しさえすれば、タダで使えます。また、使用しているモニターによって、自動的にWindowsのデスクトップの解像度が変化します。しかも、決して遅くない。Ver.5ぐらいのときのVMwareのような印象です。モニター2台つなげば、仮想マシンのデスクトップもモニター2台まで広げることも可能です。
 さらにOpenVswitchという高機能仮想スイッチも問題なく使用でき、複数マシンに広がる仮想ネットワークなども、(やる気さえあれば)構築可能。
 もちろん、クローン(HDのUUIDやネットワークインターフェースのMacアドレスもそっくりコピーされるモードと、中身はそっくり同じだけどUUIDとMacアドレスだけ変えるモードあり)、スナップショット(ある時点でのマシンの状態をそっくり保存しておき、後で問題が生じたらいつでもその時点の状態に戻せる機能)もできます。
 さらに気合があれば、仮想マシンを動作させたまま、1台のホストマシンから、別のホストマシンへネットワークを介して移動させることも可能です。
 と、言うことで採用。

 他にも沢山あるようですが、全部評価するのは無理です。

 ホストOSは紆余曲折の結果、安定している印象と、仮想環境がなんだかより軽く感じるCentOSに決めました。Ubuntuはクライアントとして使用するとたいてい自動でやってくれるので便利ですが、Virtual Hostとして使用すると、なんだかもっさりと遅い印象でした。

 今現在、HPのエントリーサーバー内でORCA2台、電子カルテ1台、File Server1台、rs_base1台、診察用Windows1台、その他の業務用Windows1台、レセプトオンライン用Windows1台が動いており、8台分のマシンが1台の中に入ってしまっています。さらに、サーバーを1台追加して日医特定検診システムを立てて、メタボ判定をこいつにやらせようかなと思っていますし、ORCA4.7が十分に安定してきたら4.6と同時に動かしておいて、問題が生じたらいつでも戻せるようにしたいなと思っています。

 直接つながっているUSB機器は10台ぐらい。さらにUSBデバイスサーバーをネットワークにつないで、仮想マシン上のWindowsにつないだら、あっさりと接続されたので、デバイスサーバーをあちこちに設置して、ここに血球計数器やスパイロやレシートプリンターもつないでいます。

 開業以来、実際に約半年使用していますが、最初は自分の設定が悪かったり、業者が勝手に院内ネットワークの配線を変えて行ったりしておかしくなることはありましたが、やっぱり相手は機械なので、ちゃんと原因を究明して正しく設定すればとても安定しており、個人的には非常に満足しています。

 と、いうことで私の結論。

 サーバーもクライアントもまとめて1台に押し込みたい方で、
1.お金が余っている人はVMware
2.お金を少しでも節約したいが、代わりに自分で構築する人はVirtualBox
 (サーバーのみ仮想化できれば十分な人は、もっと選択枝は広いです。)
 (1台のマシンに何でもかんでも押し込む場合は、可能ならCPUもファンも、電源も、ネットワークインターフェースも全て2重化されているものが、好ましいです。念のため。)
 (1台に押し込んだ上で、データごとマシンを飛ばすと、全てを失います。私は責任を負えないので、やるならあくまで自己責任でお願い致します。)

押上駅前 松浦内科クリニック
松浦 崇行

--- On Fri, 2013/5/24, Yoshimoto Tadanori <octet@xxxxxxxxxxxxxx> wrote:

> 吉本@オクテットです。
> 
> Ubuntu上で仮想環境作るなら、CPUがVT対応ならKVM、そうじゃないならLXCで
> しょう。
> 
> 
> (2013年05月21日 20:55), tatsuya uza wrote:
> > (かなり以前、別件で、virtualBoxをかじって、挫折しました。usbがつなげなかった。)
> 
> VirtualBoxはUSBのサポートは、以前は別版で現在はオプションになっているよ
> うです。
> そのせいでは?
> 
> > その2
> > 同じソフトで作った仮想領域なら、イメージは転用できるのですか?例えば、mac内のvirtualBox内のubuntuのイメージのバックアップから、windows内のvirtualBox内のubuntuに、みたいな。もし、可能なら、どれぐらいの時間で移せますか?
> 
> ちょっと面倒ですけど、可能なんじゃないでしょうか。
> 
> > その3
> > ubuntuで仮想マシンのためだけの最小限の環境をセットして、そこにvirtualBoxを入れて、その中にubuntu
> > 12.04を入れて、日医のマニュアル通りの環境を構築。 はどうでしょうか?
> > ホストマシン ubuntu / ゲストマシン ubuntu12.04
> > 考えは、ubuntuのリソースをくわないで安定した環境の中に、ubuntuをいれるのです。
> > まさに、バックアップを優先した、無駄遣い環境にも思えますが、操作の一貫性も考えるとありかもと思えますが、どうでしょうか?
> 
> これがまさにLXCにぴったんこな環境です。メモリを仮想環境用に確保する必要
> もありませんし。
> 幸い今回(?)からサーバとクライアントを別々に入れられますから好都合です。
> 実環境にORCAクライアント、LXCコンテナではORCAサーバを入れます。
> 
> http://pc.amanogawa.info/fix001
> このサイトを見てLXCにORCAサーバを入れましたが動きました。
> wget等がないので、無いものは入れていくのと、ネットワーク設定さえ気を付け
> れば普通に使えるんじゃないでしょうか。
> 
> クローンやバックアップ/リストアも簡単です。←これポイント!
> 
> USBは使えるらしいのですが、USBプリンタの接続を挑戦しましたが失敗しました。
> どなたか教えて欲しいです。
> 
> > その5
> > 仮想化ソフトそのものの安定性は?
> 
> 馴染みのないLXCですが、なんといってもLinuxの標準機能ですし。
> 上のURLのサイトの人は実運用しつつお薦めしてますし問題はないと思います。
> 
> が、私は実運用じゃないので責任は持てません。(^^;
> 
> -- 
> 吉本匡孝 TEL&FAX 0977-67-5698
> 合資会社オクテット http://octet.oita-beppu.com/
> 
>