レベル: 初級 Matt Haynos (mph@us.ibm.com), Product Manager, WebSphere Extended Deployment, IBM
2005年 1月 11日 自動化とグリッド・コンピューティングに関して、IT 市場では多くの関心を集めています。その中でも最も熱く論じられている二つのトピックは、プロビジョニングとオーケストレーションです。これらは、必要なソフトウェアのロード、管理タスクのワークフロー自動化、および資源の割り振りに関係しています。言い換えると、動的に資源を割り振る「方法」とその「理由」ということになります。この記事では、より堅固なグリッドおよびオンデマンド・システムを実現するために、自動化とグリッド・コンピューティングがこれらの機能をどのように使用できるかについて明らかにしていきます。
ビジネス・コンピューティングの世界では、自動化とグリッド・コンピューティングという 二つの領域で、多くの議論が展開されています。業界誌の記事や IT アナリストによる研究報告の数の多さが、そのことを裏付けています。これらの記事やレポートでは、変化するビジネス要件に動的に対応する機能を有する新しいインテリジェントなインフラストラクチャーという概念について論議が行われています。このインフラストラクチャーは、以下のように、多くのベンダーの戦略の基盤となっています。
- IBM では、このインテリジェントなインフラストラクチャーのことをオンデマンド・ビジネス と呼んでいます。
- HP では、Adaptive Enterprise (アダプティブ・エンタープライズ) と呼んでいます。
- Forrester Research では、Organic IT (有機的な IT) という名前を付けています。
呼び名はともかく、現在各企業が直面している厳しいビジネス環境をサポートするためには、柔軟性、回復力、適応性を兼ね備えた IT インフラストラクチャーが必要であることは明らかです。
このシリーズの前回の記事 (参考文献を参照) では、グリッド・コンピューティングが登場した背景と分散コンピューティングの他のパラダイムとの違いについての概要を説明しました。この記事では、プロビジョニング とオーケストレーション に焦点を当てて、グリッドの将来における自動化の重要性について説明します。
グリッドにおける自動化の役割
IBM がお客様との業務を通じて得た多くの経験から、グリッドと仮想化の成長のためには自動化と管理規則の効果的な使用が必要であるということが明らかになっています。グリッドが元々分散コンピューティングの一形態であることを考えれば、これは驚く必要のないことかもしれません。しかし、プロビジョニングやオーケストレーションなどのように新しい種類のインフラストラクチャー管理テクノロジーにより、企業はさらに洗練された自動化機能を使用できるようになり、それによって組織の IT インフラストラクチャーの柔軟性と対応能力を向上させることができます。
こうして、自動化は従来のシステム管理業務から脱して、インテリジェントなインフラストラクチャーの重要なコンポーネントとなるまでに成熟しました。図 1 は、この成熟への動きを示したものです。
図 1. グリッド・コンピューティングにおける自動化の進化
グリッド・コンピューティングの真髄は、洗練されたワークロード管理機能や情報の仮想化機能を利用して、組織内で疎結合した広範な異種混合資源を効率的かつ最適な方法で利用することにあります。疎結合されている異種混合資源はサービス・レイヤーを介して顕在化できるため、このアプローチはしばしば、サービス指向仮想化、または単にサービス仮想化 と呼ばれます。
自動化によって、グリッド・コンピューティングのこの特性はさらに拡張され、新たなインフラストラクチャー管理機能が追加されます。図 1 で示されているように、この拡張に至るまでには、論理的な発展があります。自動化機能の追加によって基盤である仮想化の観点が変化しないように、この拡張はシームレスに行われるので、自動化の効果はアプリケーションおよびユーザーには意識されることはありません。
したがって、各組織では、業務の遂行能力に対する大きな影響を及ぼすことなく、自動化の機能をモジュラー方式で徐々に強化していくことができます。
自動化とは何か
自動化 という用語については、IT 市場において非常に多くの定義説明がなされてきました。仮想化と同様に、その定義や意味付けは、何通りもの方法で行われています。
しかし、この言葉の語源は (誰も意外には思わないでしょうが)、単に「自動的にすること」です。したがって、IT 市場では、自動化とは、手動のプロセスを、自動的なやり方で反復が可能な、体系化できるプロセスに置き換えることを意味します。
これを行うことによって、以下のような大きな価値が生まれます。
- 人的資源をより高価値の活動へと再配置できる。
- 場合によっては、複雑なプロセスを人間が管理するためには自動化が必須である(工場の製造工程の自動化のように)。
- 最も重要なことには、自動化が可能なプロセスから人的要素を排除することで、一貫性の向上やエラーの発生減少がもたらされる。
例えば、半導体製造プロセスでは、自動化によって、製造が難しい高価値製品における異物混入や取り扱いミスの発生率が減少します。IT インフラストラクチャーにおいては、システム管理タスクの自動化によって、構成上のエラーが発生する可能性が減少します。これらの例を念頭に置けば、自動化が IT および事業を担当する役職者にとって非常に説得力のある考え方であるのは当然のことです。
IT 市場における自動化の例はいくらでもあります。例えば、セールス・フォース・オートメーション(Sales Force Automation)は、この自動化 (automation) という語が一般的な目に見える形で使われている例の一つです。
ただし、自動化は従来のシステム管理業務の副産物として見られているようです。従来のシステム管理が IT 資源およびプロセスの管理における規律を確立するものであるとすれば、自動化はその規律をインテリジェントなソフトウェアによって行使することを可能にするものです。
この記事では、IT 運用の効率化に狙いを定めた自動化ソリューションのこの側面、特にグリッド・コンピューティング環境への適用可能性に注目していきます。
グリッド・コンピューティング・ソリューションにおける自動化の価値
多くの組織では、ある一つのアプリケーションを目標としてグリッド・コンピューティングを使い始めます。システム資源の仮想化と、ワークロードを専用インフラストラクチャーから論理的に分離することが、その関心の対象となっています。しかし、最初の取り組みとしては、まずグリッドに慣れて、自社のインフラストラクチャーおよびアプリケーション設計における必要事項を把握することから始めます。
グリッド・ソリューションを実稼働環境に導入してうまくいくことを確認した時点で、成功を他に拡大・適用する方法を探し始めるのがほとんどのやり方です。つまり、自社のアプリケーション・ポートフォリオをさらに調べて、グリッドを拡張する方法についてインフラストラクチャーの観点から把握する試みを開始するのです。
そこで、企業は管理と自動化の側面に注意を向けるようになり、グリッドの能力を成長させるためには洗練された自動化機能が必要であることに程なく気づきます。
「私たちが必要とするのは製品そのものだけではなく、管理の容易性のためのツール、プロビジョニング・ツール、さらに自社の環境内でこれらのものをサポートするためのエコシステムのすべてです。」 Tony Scott 氏 (General Motors、CTO)
CIO Magazine
(2004 年 5 月号)
したがって、グリッドが成長するに従って、自動化が不可欠となります。要するに、企業の仮想化を効果的に行うためには、自動化が必要なのです。これらの両者を分けることは難しくなっていきます。IBM では、この現象のことを、オンデマンド・オペレーティング環境における IT インフラストラクチャー管理 と呼んでいます。仮想化と自動化は、真の共生関係にあるといえます。
自動化はまた、管理領域における変革、つまり仮想化とグリッド・コンピューティングによって推進される変革へとつながります。これまでのシステム管理は、単にシステムおよびインフラストラクチャーの管理に集中したものでした。ところが、分散したシステムの仮想化とグリッド・コンピューティングが成長するにつれて、管理は仮想化ファブリック内に織り込まれるようになってきています。
もしも、各ユーザーが自分のインフラストラクチャーを単一の仮想コンピューターと見なし始めたのであれば、この仮想コンピューターを多くの資源から構成される集合体として管理するのではなく、単一のエンティティーとして管理可能なものと見なすほうが理にかなっています。
また、仮想化には、VMware のような企業によって提供されるシステム資源の仮想化から、IBM WebSphereR®、DataSynapse の GridServer、Platform Computingの Platform Symphony などの製品によって提供されるアプリケーション・サービスの仮想化に至る、複数のレイヤーが存在します。これらの多層構造の仮想化によって、管理システムのベンダーは、古い概念による IT 資源を単純に管理するのではなく、仮想化を効果的に管理するという大きな責務を負うことになります。
さらに、グリッドによってベンダーは資源の管理に集中するのではなく、業務の管理に重点を置くことを強いられます。ユーザーは最適な方法で業務が遂行されることを望むものであり、それこそがユーザーが IT インフラストラクチャーを使用する理由です。したがって、業務遂行の能力をサポートするために管理機能が進化するのは、極めて当然なことです。
ビジネスの柔軟性により、企業では、業務の優先順位を決め、"最適状態"をほぼリアルタイムで決定することが可能になります。ビジネス・サービス管理関連の製品およびソリューションの目指すものはここにあります。
この自動化の柔軟性を提供するための概念上のツールとして、プロビジョニングとオーケストレーションを挙げることができます。
プロビジョニング
今日、プロビジョニングはIT 自動化のコア・テクノロジーの一つと見なすことができます。プロビジョニングで最初に焦点となったのは、必要なソフトウェアをマシン上にロードすることと、システム管理の繰り返し作業のワークフローの自動化でした。
これらの取り組みによって、企業には以下の結果がもたらされ始めています。
- IT インフラストラクチャーへの一貫性の導入
- ソフトウェア構成上のエラーの、サービス・レベルへの影響の軽減
- 作業の効率化
分散コンピューティングのパラダイムとして見たグリッド・コンピューティングは、このことから恩恵を受けてきました。しかし、グリッドは 3 層構造のアーキテクチャーに代表される典型的な「e-business」アーキテクチャーよりもさらに動的である傾向があるため、グリッド・コンピューティングではプロビジョニングがさらに重要となります。その理由について検討してみましょう。
グリッドでは、ジョブ・スケジューリングにより、アプリケーション自体と、インフラストラクチャーにおいてアプリケーションが実際にどこで実行されるのかということの分離が進められてきたため、適切なソフトウェアを適切な場所に適切なタイミングで動的にプロビジョニングできることが不可欠です。最悪の場合、あるジョブの実行に必要な基本オペレーティング・システムまで含めたすべてのソフトウェアを装備したマシンをプロビジョニングすることが必要となります。このような措置は、通常はコスト高になりますが、アプリケーションが長期間実行されるのであれば、それだけの投資に見合う可能性があります。ただし、たいていの場合、企業がプロビジョニングすることを望むのは、アプリケーション・ソフトウェアと、おそらくジョブを実行するために必要ないくつかのミドルウェアだけです。
図 2. マシン上のソフトウェアのレイヤー
プロビジョニングの所要時間とアプリケーションの実行時間との間には、特有のトレードオフが存在します。アプリケーション実行時間が短い場合は、あらゆるプロビジョニングを迅速に行うことが必須です。一方、アプリケーション実行時間が長い場合、必要なソフトウェアのプロビジョニングに要する時間はそれほど問題になりません。
ここで重要なのはバランスを調べること、すなわち、アプリケーション実行時間とソフトウェア・プロビジョニング所要時間との間のトレードオフを調べることです。これを明らかにするには、ジョブ・スケジューリング・ソフトウェアがプロビジョニング・ソフトウェアと情報を交換することが必要になるでしょう。
いずれにしても、プログラムをグリッド上のどこででも実行できるようにするために、プロビジョニングはグリッド・コンピューティングにとって重要な、自動化全体の中核を成す部分であると言えます。
さらに、プロビジョニング可能な対象やプロビジョニングが必要な対象をソフトウェア以外に拡大することも、グリッドによって容易になります。プロビジョニングは複数のエンティティーを対象にすることが可能であるため、プロビジョニングは以下のようなケースを含む一般的な概念となります。
- グリッド環境におけるアプリケーション実行をサポートするためには、ソフトウェア・ライセンスの動的なプロビジョニングが必要となる
- ストレージをプロビジョニングしてグリッド・アプリケーションで利用できるようにすることが必要となる
- IT インフラストラクチャー内で、アクセス権やセキュリティー・クレデンシャルをプロビジョニングする
さらに、光ファイバー伝送における高密度波長分割多重方式 (DWDM) の導入により、ポイント・ツー・ポイントのネットワーク帯域幅の選択的なプロビジョニングが可能となります。グリッド・インフラストラクチャーに適用した場合、このことは特に重要で斬新な概念と言えます。
要点をまとめると、グリッド・コンピューティングの持つ動的な性質ゆえに、プロビジョニング・ソフトウェアを洗練してインテリジェントなグリッド・ソフトウェアとの統合を拡大することが必要になってくるでしょう。この動きは既に開始されています。プロビジョニングは IT 市場において活況を呈している分野であり、IBM (TivoliR® Provisioning Manager)、VERITAS Software (OpForce) や Opsware (Opsware) などの多数の製品およびテクノロジーがすでに利用可能です。
自動プロビジョニング :オーケストレーション
プロビジョニングが動的な資源の割り振りの「方法」であるとすれば、オーケストレーションはその「理由」であると考えることができます。
オーケストレーションにより、企業内部にある複数の異なるアプリケーション・インフラストラクチャーにわたる有限の資源プールの割り振りが自動化されます。企業では、複数のビジネス・ユニットや組織にわたって複数のアプリケーション・インフラストラクチャー (グリッドを含む) が存在するのが普通です。オーケストレーションによって、サービス・レベル契約などのビジネス・ポリシーに基づいてこれら複数のインフラストラクチャーにわたる企業資源のインテリジェントな自動割り振りが可能になります。グリッドを動的なものににするために、オーケストレーションはグリッド・コンピューティングを補完する重要な機能であると言えます。
オーケストレーションによる自動プロビジョニングは、ワークロード・スケジューラーと連動しながら、資源にグリッド・インフラストラクチャー上を行き来させることを可能にします。また、動的な資源割り振りによって、グリッドをエンタープライズ・ファブリックにさらにシームレスに統合することもできます。
スケジューラーがグリッド・インフラストラクチャーに対して需要を(ワークロードの形で)提供するものだとすれば、オーケストレーションは供給を(資源の形で)提供するもので、この意味でオーケストレーションとグリッド・コンピューティングは共生関係にあります。この両者を共に取り入れることにより、強力な組み合わせを手にすることができます。
この考え方は、ワークロードがインフラストラクチャーに適応するのではなく、インフラストラクチャーがワークロードに適応するようになる、というインフラストラクチャー管理における重大な変化の始まりを示すものです。今後デベロッパーは、マシンのアーキテクチャーや物理的インフラストラクチャーの制約に縛られる必要がなくなります。
この概念は、ソフトウェア・デベロッパーにとっては特定のマシン向けにアプリケーションを開発する必要性がなくなり、自動プロビジョニングによって動的に変化する仮想のインフラストラクチャーを対象としてアプリケーションを開発できるようになることから、仮想化の促進にも繋がります。
グリッド環境における自動プロビジョニングの有用性を理解する際には、いくつか考慮すべき事項があります。その一例を挙げます。グリッド・アプリケーションは通常大量の資源を必要とします。そのため、追加資源にアクセスできるようになれば、グリッド・アプリケーションは常にその追加資源を使用できるため、必然的に恩恵を受けることになります。そこで、企業内に存在するグリッド・インフラストラクチャーに対して資源をいつどのような方法で割り振るかという問題が生じてきます。Tivoli Intelligent Orchestrator では、この処理は Objective Analyzer によって行われます。
Objective Analyzer は、基本的にはアプリケーション・インフラストラクチャーと連動して、割り振られている資源の数を元に、サービス・レベル契約などの目標に反する事態が生じる確率について報告します。Tivoli Intelligent Orchestrator は、この情報を利用して、資源の割り振り先を決定します。グリッド環境においては、平均 CPU 使用率のような資源の標準的な負荷測定基準は適用できません。これは、グリッド・インフラストラクチャーにおいては通常時の資源の使用率が非常に高く、高い使用率が正常な稼働状態を示すものだからです。したがって、グリッド・インフラストラクチャーでは、使用率そのものよりも使用率における細かい偏差に注意を向けることが重要となります。
また、追加資源の割り振りタイミングを決定する際に利用すると便利な、洗練されたキャパシティー・プランニング・アルゴリズムを使用することもできます。
グリッドに資源を割り振るタイミングを決定する最も単純なアルゴリズムは、おそらく時間帯でしょう。これは、金融サービス業界では広く一般的に使用されています。例えば、市場が開いている時間帯のオペレーションに割り振られている資源を、市場が引けた後、グリッド・アプリケーションへと再プロビジョニングして再配備し、翌日の市場が開く前に再度割り振るというやり方です。
まとめ
この記事では、グリッド・コンピューティングにとっての自動化の重要性と、自動化がどのような形でグリッド・コンピューティング・ソリューション・アーキテクチャーの重要な要素になっているかということについて概説しました。特に、プロビジョニングとオーケストレーションの価値に重点を置きました。
次の記事では、ワークロード・スケジューラーとプロビジョニング・ソフトウェアの間の重要な情報交換について考察するとともに、グリッド・インフラストラクチャー内部で完全にオートノミックな資源の割り振りを実現する段階的アプローチについて説明します。
参考文献
学ぶために
- "Perspectives on grid: Grid computing -- next-generation distributed computing" (developerWorks, January 2004) provides a view of where grid computing came from and how it is different from other distributed computing paradigms.
- Webopedia describes sales force automation as a technique of using software to automate the business tasks of sales, including order processing, contact management, information sharing, inventory monitoring and control, order tracking, customer management, sales forecast analysis and employee performance evaluation.
-
True Grid (CIO Magazine, May 2004) outlines why CIOs need to examine their applications to see if their businesses can benefit from grid's power and economies.
-
VERITAS Software's OpForce is a server automation platform that uses intelligent provisioning to build, manage, and optimize server infrastructure.
- This tutorial explains DWDM, a fiber-optic transmission technique that employs light wavelengths to transmit data parallel by bit or serial by character, designed to satisfy the needs of ever-increasing bandwidths.
- "Analytics Acceleration Grid Environment, Part 2: Components and structure" (developerWorks, November 2004) demonstrates how dynamic resource allocation also allows grids to more seamlessly integrate into the enterprise fabric.
著者について  | 
|  | Matt Haynos is the product manager for IBM WebSphere Extended Deployment. Before that, he was on IBM's grid computing team since its inception as an emerging business opportunity, and he had various responsibilities covering a broad range of initiatives and strategies related to building IBM's grid computing business. He has held a variety of technical and managerial positions within IBM in the application development, program direction, and business development areas. He holds a bachelor's degree in computer science/applied mathematics and cognitive science, with honors, from the University of Rochester; and a master's degree in computer science from the University of Vermont. He lives with his wife and two sons in Connecticut. |
記事の評価
|