ホチキス先生の「プログラマーと呼ばれたい」

InfoPath & SQL Server !

Microsoft TechEd 2010 レポート – Day 3 – 1 – T1-402「既存業務システムのWindows Azureへの移行」

leave a comment »

クラウドコンピュータの波がやってきて、既存のITシステムは大きな見直しを迫られている。社内で独自に構築された「オンプレミス」システムなのか、ネットワークに展開されたクラウドシステムなのか、どちらかを選択しなければならない時代になった。とりわけコスト削減の要求が厳しくなり、クラウドの利用を積極的に考えなければならない。

クラウドコンピューティングが現れはじめたとき、その期待から全てのシステムをクラウドに置くということが言われた。しかし現実にはそうでなく、自社内の「オンプレミス」なシステムとクラウドの両方を組み合わせることが現実解となっている。ではオンプレミスとクラウドの使い分けをどう考えればよいのだろうか。ここで業務システムを3つのタイプに分類して考える。

まず、金融などミッションクリティカルな業務システムである。これはクラウドには不向きである。それは、クラウドでは性能保証が難しく、可用性用件が非常に難しい、自社でのデータ保有や管理の要件があることが多い、などの理由からだ。具体的には可用性の面では、クラウドでは99.9%しかない。次にクラウドならではの新しいタイプのシステムとして大規模分散計算処理の分野がある。モンテカルロ法などシミュレーション、大規模ログ解析、統計分析、学術計算領域など、伸縮自在性を生かせる領域で強みを発揮する。しかし現実はこれら両極端な業務形態に分けられるものばかりではない。

三番目のものとして、従来からある業務システムがある。たとえば簡単な.NETアプリケーションはほぼそのままAzureに移行できるだろう。しかし本当にそんなに簡単に移行できるのだろうか、という声はよく聞かれる。たとえばデータセンターは現状では海外にしかない、可用性が一律99.9%の設定である、ストレージの容量制限がある、などだ。だがこれらの問題は、実際に使ってみないとわからない。クラウドコンピューティングのメリットは魅力だが移行してよいのか、移行できるのかという悩みがある。しかし今日の技術進歩を念頭におくと、クラウド技術の発展は急激におこっている。今できることが半年たっただけで急激に広がることは間違いないだろう。

クラウドの技術革新については、VM RoleとWindows Azure Platform Applianceという2つのキーテクノロジーが出てくると状況はかなり変わるだろう。VM RoleはIaas型に近いクラウドサービスの提供で、自由に環境を変えることができる、仮想マシン環境を提供するものである。Windows Azure Platform Applianceは、AzureをMicrosoftだけでなく、「プロバイダのAzure」や「自社内のAzure」といった形態も提供できるものだ。これによって地理的に近い場所での利用、物理的なAzureの制御、データの保有などが可能になる。

これらの見通しの中で、では、今、何をやるべきだろうか。それは「まず使ってみる」ことである。クラウドは進展が早く、現時点では適用できない領域が、半年、一年、数年後には大きく変化し、適用できる領域が大きく広がる可能性がある。また可用性が99.9%という数値があるが、では月あたり43分もシステムが止まるのか、と思うととても使えないと思うかもしれないが、実際はシステムが停止するわけではない。むしろパッチを当てることも止めることなくできる。つまり机上の検証では実感できないことが多く、その意味でも実際に使ってみる必要が大いにある。いざ導入が目前になり、検証を行うのでは遅すぎることになる。

クラウド化で何が変わるのか。たとえばツールの使い方などは技術資料を見ながら学べばよい。しかしクラウドの概念、設計やアーキテクチャの考え方のパラダイムシフトが必要になる。パラダイムシフトのポイントは3つにまとめられる。まずデータストレージ選択の考え方、次にオンプレミスとクラウド連携の考え方、三つ目に運用監視の考え方である。

まずデータストレージだが、クラウドになって最も厄介なものはデータベースの移行だ。RDBMSの基本思想は「一事実一ヶ所」である。オンプレミスのデータベースはスケールアップが基本だが、クラウドではスケールアウトを考え、この思想は全く反対だ。クラウド環境では「機能」「容量」「価格」の3つを同時に満たすことは不可能だ。たとえばオンプレミスのデータベースでは、サーバーの性能を良くすることで「機能」と「容量」の両方を高めることができるが、この場合は「価格」を下げることはできない。クラウドではSQL AzureデータベースサービスとWindows Azureストレージサービスがあり、前者は「機能」は高いが「容量」は50GBまでの制限がある。後者は「機能」は低いが容量は大きく使える。そこでデータをAzureにおくときは、業務データはSQL Azureデータベースサービスにおき、ログなど大量に蓄積する必要のあるものはWindows Azureストレージサービスに置くといった使い分けを考える。もし業務データの規模が大きく、SQL Azureデータベースの容量制限をクリアしたい場合は、データベースの水平分割が必要である。

オンプレミスとクラウドの連携をするときは、「データ連携」「処理連携」「認証連携」「運用連携」の4つの考え方が必要だ。「データ連携」ではマスタデータの同期が必要である。「処理連携」ではAppFabricサービスパスを活用したシステム間連携、「認証」ではADシングルサインオンを実現するフェデレーション認証がある。AppFabricサービスパスとフェデレーション認証は連携に関するキーテクノロジである。AppFabricサービスパスは、オンプレミス側とクラウドからの両側からAppFabricサービスパスへの接続を張るもので、オンプレミスとクラウドのデータ連携を行うために、オンプレミス側のファイヤーウォールの受信ポートを解放する必要がない技術だ。フェデレーション認証はAzure上のシステムに社内ADアカウントでシングルサイオンのログインができる技術だ。

運用監視考え方がクラウドでは大きく変わる。オンプレミスの運用では管理者はアプリケーションからミドルウエア、インフラまで全部を対象としている場合が多いと思われるが、クラウドではミドルウエアとインフラの管理はMicrosoftにまかせればよい。管理者はアプリケーションの運用に専念できる。

Microsoft TechEd 2010 Japan 公式サイト
http://www.microsoft.com/japan/teched/2010/

Written by Yoshio Matsumoto

2010年8月28日 @ 8:10 PM

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。