ハードウェアの2つの道

ちと話にでたので、考えをメモしときます。記載内容的には、前半で最近話題の仮想化のメリットのについて、後半で
逆にハードウェアを手放してはいけないって話をします。


現在ハードウェアの仮想化が一般にも広がってきています。それにメリットがあることと新型プロセッサIntel Core 2 Dueなどが
ネイティブで仮想化技術を補助するようになった事もあると思います。インテル バーチャライゼーション
テクノロジ(VT)”(コード名Vanderpool Technology:ヴァンダープール)がそれあたり基本的には、
最下層の「T5500:1.66 GHz」以外には全てこの機能が組み込まれます。

インテル® Core™ 2 Duo プロセッサー - 仕様
http://www.intel.co.jp/jp/products/processor/core2duo/specifications.htm


仮想化のメリットはなにか?それはハードウェアに縛られない開発が行える点にあると思います。
つまり、開発時から仮想化した実行環境で開発を行えば、OSイメージのコピーをプロダクトサーバ上の仮想マシンに展開し、
ほぼ同じ環境をでリリースできます。
また、リリースが終わった後の保守や機能追加の場合も、日々の運用によって変化する環境を、そのままコピーして
持ってくることにより、堅固な保守ができます保守のためにプロダクトサーバと同じものを常に構築しておく事は
よほど予算が潤沢にないとできません。同じく仮想化上のOSをコピーによりセキュリティパッチなどについても不具合が発生するか
どうかを確認しやすくなります。

■シナリオ1:古いOSを最新のサーバ上で動かす
■シナリオ2:複数のサーバを統合する
■シナリオ3:OSイメージのバックアップをとる
■シナリオ4:修正プログラムの適用テストを行う
@IT:解説:仮想マシン技術がサーバ導入/管理を大きく変える
http://www.atmarkit.co.jp/fsys/kaisetsu/053virtual_machine/virtual_machine.html


日々サーバの性能は上昇し価格は下がっていますから仮想化による性能ダウンも長期的にみれば容易なハードウェア移行に
より帳消しになるように思います。ハードウェアはその名の通り一度決めると変更は容易ではないのですから。
また仮想化すればスケールアップも容易ですし、故障が起きた場合の問題の切り分けも楽になります。
ここまでの範囲ですと、(宣伝文句が真実ならば)仮想化技術で全て開発した方がメリットが多いように感じます、


最新技術?である仮想化ってこんなにすばらしいって話でしたたが、ハードウェアを直接変更できる事は
それ自体に競争的優位が生まれます。参考文献を掲載すると

これはソフトウェアだけに止まらなかった。我々はサーバ構成についても多くの時間をかけて考えた。我々はサーバを部品から自分達で組み立てたんだ。費用を節約するためでもあり、また必要なものを的確に得るためでもあった。上流のISPがバックボーンに十分速い接続を持っているかを考えなければならなかったし、 RAIDメーカーの記録を逐次とっていた。


でも、ハードウェアは心配の種ってだけじゃない。ハードウェアを制御することができれば、ユーザに対してもっと多くを提供できるんだ。デスクトップアプリケーションでは、最低動作条件を指定することはできるけど、より高性能のハードウェアは当てにできない。サーバを管理しているならば、必要なハードウェアをインストールするだけで、メッセージング機能とか、ファックス送信機能、電話で指示を出せる機能、あるいはクレジットカードの処理機能なんかを追加することができる。我々はいつでも、ハードウェアを追加することで新しい機能が追加できないかと考えていた。それはユーザを喜ばせるってだけじゃない。ライバル会社は、デスクトップソフトウェアを売ったり、ウェブベースアプリケーションをISPに売ったりしていた。ハードウェアを直接制御できない彼らに対して、我々のサービスを差別化するよい方法だったんだ。


もうひとつの未来への道 ---The Other Road Ahead
Paul Graham, September 2001
http://practical-scheme.net/trans/road-j.html


重要なのは何を選択するかとゆう事であり、それは適材適所となります。ただ仮想化技術もハードを制御することも知らなければ選択はできません。
よほど上流工程に関わっていなければハードの選定に関わることがありませんし、ハードに関わる勉強(組み込み技術やOSの深い部分の知識)
よりも、実装作業でSAP,Oracle,Java,C#などの方が適用範囲が広く応用が利き自分を労働力として売りやすいやすい現実もあります。
とゆうわけで、現在はこれらを勉強する気は無いのですが、忘れないためにメモしてみました。