2012年6月23日土曜日

Amazon Web ServiceのCTO, Werner Vogel氏が見る、5年後のクラウド業界

GigaOmが主催するイベントにおいて、AWSが予測するクラウドコンピューティングの業界について、4つの予測を説明している。
折しも、5年前のこのイベントに同氏が初めて登壇し、EC2とS3について説明した経緯があり、その時点から現在に至るまで相当の進歩を遂げている中、今後それがどの様に発展するのか、興味深く読める記事である。

Vogel氏自身も5年前は今日のクラウドがこれだけビジネスに大きな影響を与える事になる、とは予測していなかったようだ。

Werner Vogels, CTO and VP, Amazon Structure 2012
ビデオの配信はここ:http://livestre.am/3YHSy

2017年には次の様な事が起きるだろう、と説明している。

1)AWSの価格はさらに下がる
今まで、AWSは価格を20回下げている実績がある。確かな事は、今後もこの傾向は続く、という事であり、市場に受け入れられるサービスの重要な要件として捕えている。

2)若いビジネスは今後もクラウドで成長する
Socialcam社、Pinterest社、Instagram社等はクラウドをベースにIT基盤を作り、急成長を遂げた会社の代表である。このような会社はどんどん増えていく、と予測する。これらの会社は、従来のハードベースのIT環境をもってあれだけの急成長を実現することが出来ただろうか? まずあり得ない、と言えるだろう。そしてその傾向はますます強くなるものと考える。

3)企業のCIOは若いスタッフにチャンスを与える
ITソリューションの事になると、大企業のCIOはこういったクラウドをフルに活用した若い企業の手法に対して耳を傾ける様になるものと考える。5年前(現在)、CIOは大企業のセオリーにのみ頼っていたが、次第に大きな変化が起きるだろう、と見ている。

4)古いハードウェアベンダーは存続の機器に直面する
HPに代表される従来のハードウェア製造メーカは存続する為に大きな変革を遂げる必要がある。大きな鍵は「クラウドのマインドセット」を持つ事である。クラウドのマインドセット、とは、単に客に対してベンダーの姿勢を持つのではなく、パートナーとしての姿勢を持つ事から始まる、としている。そしてその最も大きな目的な客のITコストを下げる事にある。

AWSの姿勢は、顧客に対して110%の注目をする事、と主張している。競合のはげしいクラウド業界の中、他のベンダーと機能サポートの篠木愛をするのでは無く、顧客の求めている物をより早く提供する事が重要なビジネス要件である、と主張している。


2012年5月17日木曜日

[#Cloud #クラウド ] クラウド上でのHigh Availabilityを実現するための4つのステップ。いずれもクラウド運用のベストプラクティスとしては重要な要件だと思います。

クラウド上で可用性の高いアプリケーション環境を構築するのは一見、難しい作業の様に思えますが、重要なポイントは、クラウド上のコンポーネント全てに障害が起きうる、という事を認識しそれに対応した障害対策や自動化の対策を講じる、という意外と地味な作業を行う事です。

6月11~14日に予定している、RightScale User Conferenceにおいては、このHA (High Availability)とDR (Disaster Recovery)が重要なテーマとして様々なセッションが予定されています。多くの企業がこの課題に対して取組んでいる、という実情を反映している事からこのテーマを採用しているわけですが、RightScaleが取組んでいる "HA in the Cloud" に向けた4つのステップについて、下記の通り簡単に説明したいと思います。


1. Build for server failure 
サーバの障害は必ず起きるという前提でシステム構築をする
クラウド上のインスタンスは、データセンタにあるサーバと同様のレベルのサポートが必要です。特にサーバの障害に対する対応策の設計は大事です。サーバ障害への対処の第1ステップは任意のサーバ/サービスのリブートに影響を受けない様な環境で動かす事です。下記の点への着目が必要です。
  • 自動スケーリングを設定し、様々なトラフィックの増減のパターンに対して対応出来る様な設計にする。
  • データベースのミラー、マスター/スレーブ環境等を設定し、データの保全性を確保しダウンタイムを最小限に留める。
  • ダイナミックDNSや、固定IPを利用し、アプリケーションが利用するインフラのコンポーネントが常に同期している事を保証する。

2. Build for zone failure
クラウドゾーンも必ず障害が起きる、という前提でシステムを構築する
サーバ単位で障害が発生するばかりではない。停電、ネットワーク障害、落雷による電力系統の障害、等さまざまである。こういった複数のサーバ群を対象とした障害に対する対処もアプリケーションとしては必要になってくる。AWSのAvailability Zoneの様に、こういた地域単位の障害に対する保全性、耐久性を確保したサーバ群の単位をゾーン(Zone)と呼び、複数のゾーンにまたがった次の様なアプリケーションの実装が必要になってきます。
  • 少なくとも2つのゾーンに対してアプリケーションが稼働するサーバ群を配置する。
  • ゾーン間でのデータの同期を行う。通常の範囲でのデータ同期は定額で行う方法がある。

3. Build for cloud failure
クラウド自体もも必ず障害が起きる、という前提でシステムを構築する
稀なケースで、一つの地域(リージョン)に配置される複数のゾーンが同時に障害を起こすケースもあります。2011年、4月に起きた、AWSのサービス障害がその一例です。ここでいう「リージョン」とは、個別のAPIをもつ独立したシステムリソースの事を指し、RightScaleが定義するクラウドの単位でもあります。
可用性(Availability)を限りなく100%に近くする為には、このリージョン(クラウド)単位での障害にも対応出来るためのプロセスを考慮する必要があります。しかし、クラウド間でシステムを構築する際にはいくつかの難しい課題に直面します。API、システム構成等、インタフェースの違い等がまず問題になり、これに対しては、アプリケーションとしては特定のクラウドAPIにとらわれない、汎用的なインターフェースを採用するコンセプトに基づいて構築される必要があります。
RightScaleの提供するクラウド管理システムはこういったクラウド間の違いを吸収し、開発者、システム運用管理者に対して、障害対応力に極めて強い、標準コンポーネントによって構成されるアプリケーション設計戦略を構築するのに大きな効果を発揮します。特定のベンダーが提供する複数のリージョン間にに搭載されるアプリケーションの実装ではなく、ベンダーにも限定されない複数のインフラ提供者にまたがった、次の様なアプリケーションの運用が非常に容易になります。
  • データのバックアップを複数のリージョンやIaaSプロバイダ間で行う。プロバイダ間のデータの転送はインターネット上で行われるので、特にデータセキュリティの保全が重要になります。
  • 障害時の補完用のインスタンスを別リージョン/クラウドに配置することにより、ゾーンやクラウド上の障害に対するキャパシティ設計を行う。
  • いっぺんに大規模なクラウド間システムを構築するのでは無く、段階をもってシステムの障害対応戦略を拡張していく(複数ゾーン対応から複数クラウド対応へ)

4. Automate and test everything
全ての管理工数を自動化し、テストを行ってから実装する
システムの構成を順次サーバ障害、ゾーン障害、クラウド障害へ対応出来る様構築していくにつれ、障害に対する対策手順を自動化していく事が次のステップになります。クラウド管理ステムは、上記の様な複数サーバ、ゾーン、クラウドの単位それぞれに対して、障害対策手順を設計し、運用/管理出来る様な機能を提供します。障害時は大抵時間との戦いになるケースが多く、手順を自動化する事は非常に重要、且つ有効なソリューションになる事は自明で、次の様な対策が勧められる。
  • 全てのステージに於けるデータのバックアップを自動化し、障害発生時にはデータの保全性を確保する様に設計します。
  • 常に、システムを監視し、有事の際にアラートが発生する様にシステムをセットアップし、問題が発生した時にどこでどのような問題が起きたのかを迅速に検知出来る様な仕組みを構築する。クラウドプロバイダーからの連絡を待つ方法では、情報伝達が遅い上、精度に欠けるケースが多いのが現状です。(4月のAWS障害時はその問題がよく話題に上がっている)
  • 障害対策プランは、実際にテストをする事によって初めて有効である、と判断出来る。クラウド上でのテストは従来のOn Premise上でのシステムと比較して非常に安くテストを行う事が可能になっている。特に過負荷テスト、障害のシミュレーション等は、RightScaleのコンソールを通して構造的な方法をもって行うことが出来ます。
クラウドのインフラは、DR(Disaster Recovery)やHA(High Availability)のシステム設計を非常に安く、そして確実に導入する事を可能にしている、という点は改めて評価する必要があります。最近、頻繁に発生しているクラウドサービスの障害のニュースが飛び交う中、クラウド上でMission Criticalな業務アプリケーションを何の問題も無く運用を継続し続ける会社も多いのも事実です。こういった会社はあまりニュースに登場していないだけだ、という現状を認識すべきであるが、多くの事が学べると考えます。
RightScaleの提唱するクラウドベストプラクティスと参照アーキテクチャについての上はこのリンクWhite Paper on HA and DR Scenariosを是非ご参考にして下さい。

Brian Adler @ RightScale, Inc.






2012年4月13日金曜日

[#Cloud #クラウド ] 1社のクラウドサービスで閉じたクラウド戦略であってはいけない理由

1社のクラウドサービスで閉じたクラウド戦略であってはいけない
 
昔からの言い伝えで、「全てを卵を一つのバスケットに入れてはいけない」という諺があります。イースターの祝日に良く行われる、イースタエッグの祝い事が毎年4月上旬に北米ではよく行われるが、きれいに色付けした卵を広場の所々に隠して、子供達が競ってそれをバスケットに入れて集める遊びである。この諺は、一つのバスケットに卵を全部入れてしまうと、万が一転んだ時に全部がいっぺんに割れてしまうので気をつけなさい、という意味である。

企業に於けるクラウド戦略を策定する際にも同じ様な論理が働く。
一社のクラウドサービス事業社に企業のIT資産を全て移行してしまうと、大きな失敗に繋がる可能性が高くなる、という事である。

ここで重要な事は、クラウドサービス事業社の立場としては、上記と全く異なる立場でお客さんに自社のサービスをプロモートする、という事を理解する必要がある。

実際、JoyentAmazonRackspaceVMWareHPCloudSigma, 等のクラウドサービス事業社は、自社のSLAの強み、DRソリューション、セキュリティ対策、等自社のサービスが如何に堅強で安心してIT資産を預けられるかを具体的ににプロモートしている。企業間の競争というのはすばらしいもので、業界全体の質的な向上には非常に良い方向である、と言える。
問題は、リスク回避、という観点においては、どのクラウドサービス事業社も所詮、自社のデータセンタ内で閉じたソリューションしか提供していない、という事である。複数データセンタ間での多重化、バックアップ、プライベートクラウド連携によるハイブリッド化、等テーマは色々とあるが、クラウド事業社自体が重要障害を起こしたら全てが壊れてしまう、というリスクは依然残る。

最終的には、ユーザ自身が、クラウドサービス事業社に依存しないリスク回避の為の施策を考えて、実行に移す必要がある、という事を改めて認識する必要がある、というのが今後の最重要課題である、という事を主張したい、


実は、「一つのバスケットに全ての卵を入れる」、という行為自体は、えも言われぬ安心感を産む、という事も事実である。
何せ、問い合わせ窓口は一つだけだし、ベストプラクティス、当面に於いても専門家から統合的なコンサルを受ける事が出来るわけである。

このブログの筆者である、Mark Thiele氏は、Switchと呼ばれる、ラスベガスに拠点を置くjoyent
というデータセンターの運用を経営している会社のEVPである。
同氏は、FluidITというIT運用コンセプトを提唱しており、よりAgileで、より効率の良いITエコシステムを作る必要性を主張している。この中で、マルチクラウドを統合的に運用管理することによるリスク回避、地理的なカバレッジの拡大、アプリケーションの多様性、新規技術の早期導入、等の価値の大きさを特に重要している。

この記事でも同様のアプローチをしている。
幾つか、非常に興味深いポイントを述べる。
1)クラウド、特に複数のクラウドの運用はリスク回避を企業の責任として持つ際には不可避の選択になる。
2)マルチクラウドを効果的に運用、管理するコンポーネントの導入はその為に非常に重要な要件となる。
3)企業に於けるIT運用のガバナンスは、マルチクラウド管理のコンポーネントが持つべきである。各々のクラウドサービス事業社に企業のガバナンスするモデルは今後もどんなにクラウド事業社が成長してもあまり期待してはいけない。

もちろん、マルチクラウドを管理するインフラを導入せず、全て企業が各クラウドの運用管理を直接行う、という選択もある。マルチクラウド管理のコンセプトはまだ新しく、本当に信頼出来る技術ベンダーは誰なのか、選択するのもそう簡単ではない、という考え方もある。全て独自管理する手法を採用すると、それに伴う管理コスト、工数はそれ相当に大きくなる、という事は容易に想像出来る。場合によっては、クラウドを最初から採用しない方が安く済むのではないか、という考え方も出てくる。クラウドに投資出来ないで躊躇している企業や、SIはこの辺で大きく悩んでいるケースは良く聞く。
Thiele氏の例えを借りると、交通渋滞の中でフェラーリを運転している様なものである、と述べている。企業内のIT管理者は能力は高いが、その能力をマニュアルでマルチクラウドを取りまとめる事に注力してしまったら、実にもったいない、と言う事である。

まず、ユーザとして理解しなければいけないのは、マルチクラウド環境を構築する事によるメリットである。一般的には次の様な点が上げられる。
A)  負荷分散
B)  IaaSコストの最適化
C)  レイテンシー(Latency)の最適化
D)  クラウド業界での障害に対するDR
E)  クラウド間の資産の移動をビジネスプラクティスとして汎用化する

マルチクラウド運用は、さらにクラウド採用の最大の懸念要因である、セキュリティとプライバシーを解決する為のソリューションとして考慮する価値がある。各々のクラウドの運用状況を細かくモニターし、障害やそれ以外の要因でデータの保全性に影響する様な問題は早い段階で検知し、しかるべきデータの移動、複製、ロールバック、等の処置を自動化することが出来る機能は既に存在する。

これに限らず、クラウド上のアプリケーション業務の性能の確保、ロードバランス、自動プロビジョニング、等も同様の運用管理機能である。これらをIT管理者が常に複数のクラウド上を監視し、マニュアルの操作をするのではなく、マルチクラウド管理レイヤーがルールベースの自動化作業に置き換える事によって、IT管理業務をクラウドに移行しても、SLAを十分に確保することが出来る、という事が見える様になってくる、と期待する。またそうなると、クラウド、それもマルチクラウド運用も出るの採用に踏み切る為の判断材料を定量的に見積もることが出来る様になる、という事が期待される。

2012年4月11日水曜日

[#Cloud #クラウド ]GartnerのMagic Quadrantの分析によるクラウド業界の動向

この図は、Gartner Groupが昨年11月に発表した、同社としては初めてのクラウド市場に関するMagic QuadrantとHype Cycleのレポートから、Hype Cycleの表を抜粋し、その分析を行ったもの。 

クラウドは、そのキーワードが登場してからかなりいろんな新しいキーワードが派生して登場しており、いくつかのグループ分け、分類なくしては非常に混乱の要因になる市場になって来ている事がこの表だけでもわかる。

次の様な4つの傾向と分類が考えられる。

1)IaaS、PaaS、SaaSといった、クラウドコンピューティングが登場した当時から存在していたキーワードは既にピークを越え、"Trough of Disillusionment"(幻滅、失意)の領域に入りそうである。これは、当初の大きな期待が持たれていたこれらXaaSといったキーワードは話題程の価値を業界全体に提供していない、という状況を反映している、と言える。当然SalesForce.comやAmazon Web Servicesの様に一定の成功を収めている企業も登場しているが、IT市場全体の規模と比較すると、まだごく一部のシェアを獲得している、と言う方が正しく、当初市場を席巻するのでは、と想像されていたクラウドは実はある特定の市場領域での成長に限定されている、という意識が特にエンタプライズ市場において持たれている、というのがGartner Groupの見解の様である。

2)Big Dataに関連した新技術に大きな注目が置かれ始めている。企業内のデータを如何に有効活用するか、特に大量の情報を整理し、必要な時に必要な情報を引き出せる能力、重複している情報を統合し、一元化する能力が基幹システムに要求されており、クラウドインフラを利用してそのデータを比較的安く一括管理出来るソリューションが期待されている。その技術としてHadoopやCassandra等のBig Dataが注目されており、それを利用するアプリケーションとして、クラウド上のBPM等が今後成長していく、と予測されている。クラウド利用事例の有効なモデルとして評価されていく事が想定される。

3)クラウド間コラボレーションは、クラウド利用が段々と定着し、企業内で複数のクラウドを利用する環境が出来た時に必要となってくる管理面での課題に対するソリューションの総称である。Cloud Collaboration、Hybrid Cloud Computing、Cloud Services Brokerage、CloudBursting等のキーワードは全て複数のクラウドを組み合わせてより高度なクラウドの利用方法を実現しようとする方式である。 

4)クラウドセキュリティに関しては今後は強化されていく方向は業界全体が求めている事であり、具体的なソリューションが今後登場していくと期待されている。従来のOn PremiseやWebアプリケーションの導入/運用で要求されて来たセキュリティの提供をクラウド環境にも適用していく動きはある上、一部その業界標準化、もしくは業界をして受け入れることが出来るセキュリティ基準の様なものが作られていく事が想定される。


こうやってみていくと、クラウドビジネスは段々と実際に採用、導入、運用し始める事を通して生じてくる、より具体的な課題に話題が移行しつつある事がわかる。当然と言えば当然であるが、この中で一番押さえどころは、やはりセキュリティを明確に打出すクラウドソリューション、と言うところではないかと思う。定量的な評価がしにくいファクターである上、クラウド上のセキュリティの基準、と言う者が存在しないため、何を持ってセキュアなクラウドなのか、という共通の理解を得るのが難しいからである。