テスト環境の仮想化 {開発・テスト環境での Hyper-V の活用のススメ}
私のブログも1ヶ月ほど前に模様替えをして HEROES happen {here} を真似たものに変えてみました(シルエットは1歳9ヶ月になる息子です(^^))が、Visual Studio 2008 の販売開始、Windows Server 2008 の開発完了(RTM)、SQL Server 2008 の CTP のリリースとにっぱち三兄弟(と私が勝手に呼んでいる)が着々と皆さんのお手元に届く環境が整いつつあります。
リリースしたからといって即、皆さんに使ってくださいというわけには行かないのは事実としてありますが、これらの製品を活用して皆さんのソフトウェア開発環境やテスト環境を今まで以上によりよいものにしていただくことも可能です。
これからのソフトウェア開発に求められるものとしては、当然 QCD が挙げられます。 QCD とは、Quality (高い品質または、品質の維持)、Cost (コスト、赤字の削減、黒字化)、Delivery (短納期、オンスケジュール、安定したリリース、デプロイ)の頭文字です。
これらは、すべて相反している要求なのですが、これらが今日のソフトウェア開発に求められているのは事実です。また、この状況においても、システムはどんどん複雑化してきています。既存のシステムと新たなシステムをつなげる必要性も高まってきています。
こういった状況下において、ソフトウェア開発の環境も変わっていかなければなりません。テスト環境・・・開発コストを上げずに如何に本番環境に近い環境下でテストを行えるかというのは品質の向上の上でもひとつの課題として挙げられてきます。
こういったときに、Windows Server 2008 で提供される(提供予定)の Hyper-V による仮想化環境を活用すると、1台のテスト用サーバー上に、本番環境を見越した(分散された)インフラ環境を仮想化技術を用いて構築できます。これにより、開発前、開発中、テスト前段階から、本番環境に近い環境でのインフラとアプリケーションのミスマッチ(たとえば、アプリは .NET Fx 3.5 を想定したのに、インフラは .NET Fx 3.0 だったとか、アプリ設計上は、別サーバー上の Web サービスを利用するように設計されているのに、インフラ要件としてはその別サーバーのそのポートにはアクセス許可がでていなかった)などが、仮想化環境で検証ができるようになってきます。
Visual Studio Team System 2008 の Architecture Edition の システム定義モデル(SDM)を活用すると、アプリの設計とインフラの設計を行いミスマッチをチェックできますが、仮想環境であってもより本番に近い構成を構築できていれば、インフラ設定をリバースエンジニアリングすることで、たとえば、仮想マシン上の IIS の設定を インフラ設計の IIS の設定に反映させたり)より現実味のある運用を考慮した設計(Design for Operation)が開発ライフサイクル全般にわたって行えることになります。
Hyper-V による仮想化テスト環境は、スナップショット機能などもあるので、テスト前の環境をスナップショットとして保管しておけば、テスト終了後にテスト前環境に戻すといった効率のよいテスト環境の手助けにもなります。それでいて、今までの仮想化技術よりもマシンスペックを活かした環境構築ができるわけですから、開発で活用しない手はないわけですね。
※上述のような環境は私もデモ環境のひとつとして構築を予定しています。何かのセミナーなどで披露できたらと企てています。
このように、Windows Server 2008、SQL Server 2008 は、皆さんが開発しているシステムやソフトウェアが稼動するプラットフォームとしてだけではなく、皆さんの開発で使うインフラ環境としてもいろいろな用途で活用できるはずです。またそこで得たノウハウ、ナレッジは、当然皆さんがその後に作成する Windows Server 2008、SQL Server 2008 をプラットフォームとしたより価値のあるシステムの提案にも活かせると信じています。
ぜひ、にっぱち三兄弟をいろいろな用途でご活用していただければと思います (^^)
ながさわともはる
Comments
- Anonymous
February 21, 2008
私のブログも1ヶ月ほど前に模様替えをして HEROES happen {here} を真似たものに変えてみました(シルエットは1歳9ヶ月になる息子です(^^))が、Visual Studio 2008