(57)【要約】ポイントオブプレゼンス（ＰＯＰ）のエージェントからのモニタリングの情報を収集するクラウドモニタリングサービス（ＣＭＳ）を含むことが可能なクラウドモニタリングフェデレーションについての技術を、本明細書で説明する。クラウドモニタリングＰＯＰは、クラウドに、クライアントマシン上に配置され、クラウドアプリケーションの中に埋め込まれ、またはクラウドに関連付けられる管理エンティティの中の可視性を取得できるいずれの場合でも、配置されうる。本明細書で用いられる、クラウドは、サービス、アプリケーション、およびネットワーク内に位置するデータへの抽象化されたアクセスを提供するネットワーク環境を言うことができる。本明細書に提示される技術および概念の利用を通じて、クラウドモニタリングクライアント（ＣＭＣ）として動作する、管理システムは、ＣＭＳとインターフェースし、クラウド部分としてのエンタープライズの構内外またはネットワーク外で動作するものを含む管理システムのエンタープライズによって使用されるサービスおよびアプリケーションの完全なビューを取得することができる。ＰＯＰによる発行、およびエンタープライズ内のおよびクラウドの外から内へのコンポーネントにわたる管理情報のＣＭＣによる消費は、ロール、責任、スコープ、セキュリティの境界、情報の信頼性、サービスレベルアグリーメント、およびクラウドモニタリングオペレーションの他の側面を管理していることによってサポートされうる。
2013516700.tif 000002
【特許請求の範囲】
【請求項１】
クラウドベースのサービスをモニターするコンピューター実装方法であって、コンピューターが、
クラウドモニタリングポイントオブプレゼンスとインターフェースする動作と、
クラウドモニタリングクライアントとインターフェースする動作と、
前記クラウドモニタリングポイントオブプレゼンスが管理エンティティについての情報を提供する権限を管理する動作と、
前記ポイントオブプレゼンスから前記管理エンティティについての情報を受信する動作と、
前記クラウドモニタリングクライアントが前記管理エンティティについての前記情報を要求する権限を管理する動作と、
前記クラウドモニタリングクライアントからクエリを受信する動作と、
前記受信されるクエリに応答して、前記管理エンティティについての前記情報を、前記管理エンティティに関連している前記クラウドモニタリングクライアントに提供する動作と
を含むことを特徴とするコンピューター実装方法。
【請求項２】
バッファーにおける前記管理エンティティについての前記情報を収集する動作をさらに含むことを特徴とする請求項１に記載のコンピューター実装方法。
【請求項３】
要求に基づくセキュリティポリシーに従い、ポイントオブプレゼンスをモニターする前記クラウドを登録する動作をさらに含むことを特徴とする請求項１に記載のコンピューター実装方法。
【請求項４】
要求に基づくセキュリティポリシーに従い、前記クラウドモニタリングクライアントを登録する動作をさらに含むことを特徴とする請求項１に記載のコンピューター実装方法。
【請求項５】
前記管理エンティティについての前記情報は、ヘルスステータス、パフォーマンスメトリック、オペレーティング統計の１つを含むことを特徴とする請求項１に記載のコンピューター実装方法。
【請求項６】
前記管理エンティティについての前記情報を配布するために、パブリケーションおよびサブスクリプションモデルを提供する動作をさらに含むことを特徴とする請求項１に記載のコンピューター実装方法。
【請求項７】
前記クラウドモニタリングポイントオブプレゼンスと関連付けられるスコープの調整によって、前記管理エンティティについての前記情報のリダンダントを管理する動作をさらに含むことを特徴とする請求項１に記載のコンピューター実装方法。
【請求項８】
前記クラウドモニタリングポイントオブプレゼンスと関連付けられるポリシーの調整によって、前記管理エンティティについての前記情報の量を調整する動作をさらに含むことを特徴とする請求項１に記載のコンピューター実装方法。
【請求項９】
前記クラウドモニタリングクライアントは、管理サーバーに関連付けられることを特徴とする請求項１に記載のコンピューター実装方法。
【請求項１０】
前記クラウドモニタリングクライアントは、内部サービスについての情報を有する前記管理エンティティについての前記情報を収集することを特徴とする請求項１に記載のコンピューター実装方法。
【請求項１１】
処理装置と、
前記処理装置と動作可能に接続されたメモリと、
前記メモリから前記処理装置において実行するプログラムモジュールとを備えたコンピュターシステムであって、
前記プログラムモジュールは、
前記処理装置に、クラウドモニタリングサービスにクラウドモニタリングクライアントとして登録することと、
前記クラウドモニタリングサービスから情報にアクセスする権限をネゴシエートすることと、
前記クラウドモニタリングサービスにクエリを送信することと、
前記クラウドモニタリングサービスから管理エンティティについての情報を受信することとをコンピュターシステムに実行させることにより、
インスタンスの種類およびリレーションシップの種類に従いインスタンスストアにクエリを実行させることを特徴とするコンピューターシステム。
【請求項１２】
前記コンピューターに、前記クラウドモニタリングサービスからの情報配信のサブスクライブをさらにサポートさせることを特徴とする請求項１１に記載のコンピューターシステム。
【請求項１３】
前記クエリは、情報を提供する管理エンティティのスコープを特定することを特徴とする請求項１１に記載のコンピューターシステム。
【請求項１４】
前記コンピューターは、前記クラウドモニタリングサービスを有するモニタリングポリシーをさらにネゴシエートさせることを特徴とする請求項１１に記載のコンピューターシステム。
【請求項１５】
前記モニタリングポリシーは、モニタリング頻度、モニターするポイントオブプレゼンスの数量、モニターするポイントオブプレゼンスの場所、フィルタリング仕様、の１つを備えることを特徴とする請求項１４に記載のコンピューターシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラウドベースのサービスおよびアプリケーションモニタリングに関する。
【背景技術】
【０００２】
管理システムは、ＩＴ（information technology）の運用において用いられるシステムであり、様々なサービスおよびアプリケーションを監視する。従来では、これらのサービスおよびアプリケーションは、エンタープライズの物理的な構内の中に配置され、運用される。クラウドベースのサービス、ウェブベースのアプリケーション、サービスとしてのソフトウェア（software as a service）、サービス志向のアーキテクチャー（service oriented architecture）、その他等の配置の増加と共に、サービスおよびアプリケーションの場所は、物理的、法的、セキュリティの境界を越えている。
【０００３】
従来のＩＴ管理システムは、エンタープライズＩＴのオペレーションの権限外にあるサービスおよびアプリケーションの中の可視性または制御を提供するように、一般に備えない。従来のアプリケーションおよびサービスは、カスタマーエクスペリエンス（customer experience）の改善またはコストの削減をする決定をサポートできる等の情報であるが、他のクラウドコンポーネントのヘルスに適用しない。また、従来のＩＴ管理システムは、組織内および組織外からサービス品質の完全なビューを提供することができない。この制限は、関連するアプリケーションまたはサービスが、クラウドでホストされる、または、内部とクラウドで同時にホストされるところで、特に現れる。
【０００４】
本明細書になされる開示は、これらの考察などに関して提示するものである。
【発明の概要】
【０００５】
ポイントオブプレゼンス（point of presence：ＰＯＰ）のエージェントからのモニタリングの情報を収集するクラウドモニタリングサービス（cloud monitoring service：ＣＭＳ）を含むことが可能なクラウドモニタリングフェデレーション（cloud monitoring federation）についての技術を、本明細書で説明する。クラウドモニタリングＰＯＰは、クラウドに、クライアントマシン上に配置され、クラウドアプリケーションの中に埋め込まれ、またはクラウドに関連付けられる管理エンティティ（managed entity）の中の可視性を取得できるいずれの場合でも、配置されうる。本明細書で用いられる、クラウドは、サービス、アプリケーション、およびネットワーク内に位置するデータへの抽象化されたアクセスを提供するネットワーク環境を言うことができる。本明細書に提示される技術および概念の利用を通じて、クラウドモニタリングクライアント（cloud monitoring client：ＣＭＣ）として動作する、管理システムは、ＣＭＳとインターフェースし、クラウド部分としてのエンタープライズの構内外またはネットワーク外で動作するものを含む管理システムのエンタープライズによって使用されるサービスおよびアプリケーションの完全なビューを取得することができる。ＰＯＰによる発行、およびエンタープライズ内のおよびクラウドの外から内へのコンポーネントにわたる管理情報のＣＭＣによる消費は、ロール（role）、責任、スコープ（scope）、セキュリティの境界、情報の信頼性、サービスレベルアグリーメント（service level agreement）、およびクラウドモニタリングオペレーション（cloud monitoring operation）の他の側面を管理していることによってサポートされうる。
【０００６】
当然のことながら、上述の主題を、コンピューター制御された機器、コンピュータープロセス、コンピューティングシステムとして、またはコンピューター可読媒体といった製品として実装してもよい。これらおよび他の種々の特徴は、以下の「発明を実施するための形態」を読み、関連図面を精査すると、明らかになるであろう。
【０００７】
この「発明の概要」は、「発明を実施するための形態」で以下にさらに説明する概念の抜粋を、簡略化した形で導入するために提供されている。この「発明の概要」は特許請求の範囲の主題の重要な特徴または本質的な特徴を特定しようとするものではなく、この「発明の概要」を、特許請求の範囲の主題の範囲を限定するために用いようとするものでもない。さらに、特許請求の範囲の主題は、本開示のいずれかの部分に記すなんらかのまたは全ての欠点を解決する実装に限定するものでない。
【図面の簡単な説明】
【０００８】
【図１】本明細書に提示する１つまたは複数の実施形態による、クラウドモニタリングフェデレーションを示すブロック図である。
【図２】本明細書に提示する１つまたは複数の実施形態による、クラウドモニタリングフェデレーションに関する追加的な詳細を示す概略図である。
【図３】本明細書に提示する１つまたは複数の実施形態による、クラウドモニタリングサービスについて例示的なプロセスを示すフロー図である。
【図４】本明細書に提示する１つまたは複数の実施形態による、クラウドモニタリングポイントオブプレゼンスについて例示的なプロセスを示すフロー図である。
【図５】本明細書に提示する１つまたは複数の実施形態による、クラウドモニタリングクライアントについて例示的なプロセスを示すフロー図である。
【図６】本明細書に提示する実施形態に実装される可能性のあるコンピューティングシステムについての例示的なコンピューターハードウェアアーキテクチャーを示すアーキテクチャー図である。
【発明を実施するための形態】
【０００９】
以下の詳細な説明は、クラウドベースのサービスおよびアプリケーションモニタリングのための技術を対象としている。本明細書に提示される技術および概念の利用を通じて、クラウドモニタリングクライアントは、クラウド部分としてのエンタープライズの構内外またはネットワーク外で動作するものを含む、エンタープライズ内で使用されるサービスおよびアプリケーションの完全なビューを取得するクラウドモニタリングサービスとインターフェースをしうる。簡潔に上述したように、クラウドは、サービス、アプリケーション、およびネットワーク内に位置するデータへの抽象化されたアクセスを提供するネットワーク環境と言うことができる。
【００１０】
クラウドベースのサービスの例は、サービスコンポーネントの全体が外部組織によって所有され、動作される、サービス志向アーキテクチャー（service oriented architecture：ＳＯＡ）を含むことができる。他の例は、完全な、または部分的なサービスがエンタープライズ上、またはサードパーティのホスティングサービス上にホストされる、クラウドサービスを含みうる。他の例は、エンタープライズがサービスを利用するためのクラウドサービスのプラットフォームの提供とすることが可能である。例えば、パスポートの認証サービス、クレジットカード検証システム、またはクラウドデータベースシステムは、他のエンタープライズサービスによるクラウドサービスとして使用されうる。他の例は、エンタープライズのエンドユーザーがネットワークまたはワールドワイドウェブ（World Wide Web）を介してアクセスできるアプリケーション等のサービスとしてのソフトウェア（software as a service：ＳａａＳ）を含むことができる。
【００１１】
本明細書で説明される要旨を、コンピューターシステム上のオペレーティングシステムおよびアプリケーションプログラムの実行とともに実行するプログラムモジュールの一般的な状況において提示するが、他の実施を他のタイプのプログラムモジュールとの組み合わせで行うことができることを当業者は理解するであろう。一般的に、プログラムモジュールは、ルーチン、プログラム、コンポーネント、データ構造、および特定のタスクを行うまたは特定の抽象データ型を実行する他のタイプの構造を含む。さらに、当業者は、本明細書で説明される要旨を、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラマブルな家電、ミニコンピューター、メインフレームコンピューターおよび同種のものを含む、他のコンピューターシステム構成を用いて実施してもよいことを認識するであろう。
【００１２】
以下の詳細な説明において、本説明の一部を成す添付図面に対する参照を行い、実施例として特定の実施形態または例を示す。次に図面について参照すると、同種の数字がいくつかの図を通じて同種の要素を表し、クラウドベースのサービスおよびアプリケーションモニタリングについての概念および技術を説明する。
【００１３】
次に図１を参照すると、ブロック図に、本明細書に提示する１つまたは複数の実施形態による、クラウドモニタリングフェデレーション（cloud monitoring federation：ＣＭＦ）を示す。ＣＭＦ１００は、クラウドベースのサービスおよびアプリケーションモニタリングをサポートする様々なネットワークエンティティ（networked entity）の間で形成されるフェデレーションである。ＣＭＦ１００は、クラウドモニタリングサービス（ＣＭＳ）１４０を含みうる。ＣＭＳ１４０は、セントラルサブスクリプション（central subscription）およびパブリケーション（publication）としてサービスすることができる。ＣＭＳ１４０は、クラウドモニタリングポイントオブプレゼンス（ＰＯＰ）１２０によってモニターされる情報を収集できる。ＰＯＰ１２０は、クラウド１１０内の１つまたは複数の管理エンティティ（managed entity：ＭＥ）１３０から発行される情報をモニターし、収集（aggregate）することができる。クラウドモニタリングクライアント（ＣＭＣ）１５０は、ＣＭＳ１４０へサブスクライブ（subscribe）して、ＭＥ１３０に関連する、発行された管理情報を使用することができる。
【００１４】
ＣＭＳ１４０は、ＭＥ１３０に関連する管理情報の、集中管理され、ダイナミックリポジトリ（dynamic repository）として動作するクラウドベースの分散サービスである。ＭＥ１３０は、クラウド１１０内に分散したサービスおよびアプリケーションとなりうる。管理情報は、ヘルスメトリック、パフォーマンスメトリック、およびＭＥ１３０に関連付けられる様々な他の統計を含みうる。
【００１５】
ＣＭＳ１４０は、ＣＭＣ１５０、ＰＯＰ１２０、または両方のような顧客を登録することが可能である。登録は、ＣＭＦ１００を形成するようにＣＭＳ１４０、ＣＭＣ１５０、およびＰＯＰ１２０を結び付けることができる。パブリケーションおよびサブスクリプションのプロトコルは、モニターされる情報をＣＭＳ１４０に発行するＰＯＰ１２０をサポートすることが可能である。同様に、プロトコルは、ＣＭＳ１４０にサブスクライブして、ＣＭＣ１５０によって、モニターされた情報を受信することをサポートできる。ネゴシエーションプロトコル（negotiation protocols）は、ＰＯＰ１２０がＣＭＳ１４０の中へ何の情報を発行するのか、およびＣＭＣ１５０がＣＭＳ１４０からどの情報にアクセスするのかを決定するように使用されうる。これらのプロトコルは、ＣＭＳ１４０、ＣＭＣ１５０、およびＰＯＰ１２０等のネットワーク上に表れる他のアクター（actor）を検出するのをサポートできる。登録プロセスは、ＰＯＰ１２０による、認証されていないもしくは無効の、情報の発行、または、ＣＭＣ１５０による、情報への望まないアクセスからプロテクトするよう、ＣＭＦ１００内にセキュリティを提供することができる。
【００１６】
ＣＭＳ１４０は、ロールおよびスコープに基づく更新の権限をＰＯＰ１２０に提供しうる。このような権限は、ＭＥ１３０がレポートできることに関するＰＯＰ１２０について、ロールおよびスコープを明確にできる。ロールおよびスコープは、レポートの頻度、詳細の何レベル、および、発行先、等の詳細を含むこともできる。ＣＭＳ１４０は、情報に関連するＭＥ１３０がアクセスされ、またはサブスクライブされることを明確にするように、ＣＭＣ１５０にロールおよびスコープに基づくアクセスする権限を提供することもできる。
【００１７】
ＰＯＰ１２０、ＭＥ１３０、ＣＭＳ１４０、およびＣＭＣ１５０等のＣＭＦ１００内の要素は、一意な識別トークンの、互いに使用する任意の種類から一意に識別されうる。各要素の一意な識別は、ロール、スコープ、または要素に関連付けられる他のパラメーターの明確化に役立つことができる。幾つかの実施形態により、リプレゼンテイショナルステイトトランスファー（representational state transfer：ＲＥＳＴ）モデルが、使用されうる。例えば、ＣＭＦ１００内のアクターは、ユニフォームリソースアイデンティファー（uniform resource identifiers：ＵＲＩｓ）により識別されうる。
【００１８】
ＰＯＰ１２０およびＣＭＳ１４０は、ＰＯＰ１２０がＣＭＳ１４０へ情報をレポートするのに役立つＭＥ１３０についてのモデルをそれぞれ保持できる。これらのモデルは、ＭＥ１３０の間のリレーションシップを含み、インスタンスの種類によって分類されうる。例えば、特定のデスクトップコンピューターは、「コンピューター」という種類のインスタンスになりうる。ＣＭＦ１００の複数のアクターによる認識がされるフォーマットの一般的なモデルの使用は、簡略化されたトランスファー、およびモニターされた情報の収集をサポートできる。ＣＭＳ１４０は、関連するＰＯＰ１２０により発行されるように、メトリック、統計、ヘルス（health）、およびＭＥ１３０に関連する他の情報を受信し、収集し、更新できる。ＣＭＳ１４０は、ＭＥ１３０上の複数の視界の切り替えにより計上できる、リダンダンシ（redundancy）の情報を管理できる。例えば、ＣＭＳ１４０は、重複した（redundant）視界の切り替えを減少するようＰＯＰ１２０に提供されたスコープをモニターし、管理することができる。
【００１９】
ＣＭＳ１４０は、ＣＭＳ１４０にあるモニターされた情報にアクセスするように求めるＣＭＣ１５０からのクエリまたはサブスクリプションの要求に応答することができる。ＣＭＳ１４０は、ＣＭＣ１５０からのクエリを受信するためのクエリの言語をサポートできる。例えば、オブジェクト制約言語（object constraint language：ＯＣＬ）等の、拡張マークアップ言語（extensible markup language：ＸＭＬ）に基づくクエリの言語が使用されうる。ＣＭＳ１４０は、ＰＯＰ１２０から発行された情報量の調整を管理できる。例えば、ＣＭＳ１４０は、ＰＯＰ１２０にスローダウン、停止、パブリケーションを要求できる。また、ＣＭＳ１４０は、サブスクライブしているＣＭＣ１５０のインタレストレベル（interest level）に基づき、個々のＰＯＰ１２０の機能性のＯＮ／ＯＦＦを制御できる。
【００２０】
ＣＭＣ１５０は、ＣＭＳ１４０とモニタリングポリシーをネゴシエート（negotiate）できる。モニタリングポリシーは、１つまたは複数のモニタリング頻度、モニターするＰＯＰ１２０の数量、モニターするＰＯＰ１２０の場所、およびフィルタリング仕様を含むことが可能である。
【００２１】
ＭＥ１３０は、任意のサービスまたは管理下にあるサービスのコンポーネントでありうる。幾つかの実施形態により、ＭＥ１３０は、ＣＭＦ１００でのアクティブな参加者になりえない。代わりに、ＭＥ１３０は、検索され、他のインスタンスまたはＭＥ１３０に関連されうる管理されたワールド（world）内でのインスタンスになりうる。メトリック、統計、ヘルスステータス、およびＭＥ１３０についての他の情報は、ＣＭＳ１４０に送信され、またはＣＭＳ１４０からクエリが行われうる。幾つかの他の実施形態により、ＭＥ１３０は、ＰＯＰ１２０として参加でき、内部の、または依存したコンポーネントに関連する情報を発行できる。モニターされた情報の収集およびキャッシュは、ＰＯＰ１２０、ＣＭＳ１４０、ＣＭＣ１５０、またはこれらの任意の組合せにおいて、行われうることを認識されたい。
【００２２】
次に図２を参照すると、ブロック図に、本明細書に提示する１つまたは複数の実施形態による、クラウドモニタリングフェデレーション（ＣＭＦ）１００に関する追加的な詳細を示す。ＣＭＦ１００は、セントラルサブスクリプションおよびパブリケーションのサービスとしてサービスするクラウドモニタリングサービス（ＣＭＳ）１４０を含みうる。ＣＭＳ１４０は、ＰＯＰ１２０Ａによってモニターされるクラウド１１０内のＭＥ１３０ついての情報を収集できる。ＣＭＳ１４０は、ＰＯＰ１２０Ｂによってモニターされる仮想クラウド２２０内の仮想マシン（ＶＭ）２３０上の情報も収集できる。
【００２３】
ＣＭＣ１５０Ａは、サブスクリプション、および、管理サーバー（managed server）２１０からＣＭＳ１４０の中へクエリを行うアクティビティーをサポートするように管理サーバー２１０に関連付けることが可能である。管理サーバー２１０は、内部サービス２５０内、クラウド１１０内、および仮想クラウド２２０内のインスタンスの同時モニタリングをサポートするように内部サービスを管理することもできる。幾つかの実施形態により、ＣＭＣ１５０Ｂは、ＭＥ１３０に関連付けられる。ＭＥ１３０等は、ＣＭＣ１５０Ｂを使用して、ＭＥ１３０自身についての管理情報を取得するためＣＭＳ１４０にサブスクライブしうる。ＭＥ１３０自体についてのＭＥ１３０における情報等は、セルフテスト（self test）としてのヘルスまたはステータスを決定するサポートをすることができる。情報は、フェールオーバーまたは様々なスケジューリングの決定のサポートもできる。
【００２４】
ＰＯＰ１２０、１２０Ａおよび１２０Ｂは、まとめて、または一般的にＰＯＰ１２０として参照されうる。ＰＯＰ１２０は、連続する、または定期的な基礎におけるＭＥ１３０をモニターするウェブサービスのエンドポイントであり、モニターされた情報をＣＭＳ１４０に送信する。ＰＯＰ１２０は、管理情報を収集でき、ＣＭＳ１４０へ管理情報を発行できる任意のエンティティとして実装されうる。幾つかの例により、ＰＯＰ１２０は、１つまたは複数のクライアントと関連して実行するエージェント、クラウドサービスと関連して実行するウォッチャーサービス（watcher service）、管理されたクラウドのアプリケーションのコンテキストにおいて実行するコンポーネント、仮想クラウド２２０内のＶＭ２３０において実行するエージェント、任意のこのようなエンティティ、またはこれらの任意の組合せとすることができる。
【００２５】
ＰＯＰ１２０は、登録のプロセスの部分としてＣＭＳ１４０に対して身元を提示する（claim an identity）ことができる。ＰＯＰ１２０は、一回認証されたこれらの提示に基づき、認証を受けることができる。ＰＯＰ１２０は、登録の部分として、その場所、ケーパビリティー、およびモニタリングスコープも宣言しうる。ＰＯＰ１２０は、ＰＯＰ１２０がモニターすべきなのは、どの特定のＭＥ１３０か、どのレベルか、およびどの頻度においてか、に関するロールおよびスコープをＣＭＳ１４０により提供されうる。例えば、ロールおよびスコープは、ＰＯＰ１２０について、モニタリングの頻度、収集、フィルタリング、および発行頻度を指定することができる。ＰＯＰ１２０は、同時に、および異なるロールおよびスコープの下で２つ以上のＣＭＳ１４０へ発行することができる。
【００２６】
ＣＭＣ１５０、ＣＭＣ１５０Ａ、ＣＭＣ１５０Ｂのような前述した様々なクライアントは、まとめて、一般に、ＣＭＣ１５０と言う場合がある。ＣＭＣ１５０は、登録のプロセスの部分としてＣＭＳ１４０に身元を提示することができる。ＣＭＣ１５０は、一回認証されたこれらの要求に基づき、認証を受信することが可能である。ＣＭＣ１５０は、登録の部分として、望んだモニタリングスコープを要求することもできる。ＣＭＣ１５０は、周期的に、ＣＭＳ１４０からのモニタリング情報への、そのサブスクリプションをネゴシエートすることが可能である。ＣＭＣ１５０は、モニタリング頻度、ＰＯＰ１２０またはＭＥ１３０の身元、ＰＯＰ１２０の場所、およびサブスクライブすることへのモニタリング情報の他のパラメーターを変更するようにネゴシエートすることが可能である。
【００２７】
管理サーバー２１０は、ＣＭＳ１４０に登録し、管理情報の配信をサブスクライブし、サブスクリプションのサービス品質（quality of service：ＱＯＳ）をネゴシエートし、および標準の、周期的な、またはオンデマンドの、モニターされた情報の配信も指定する、ＣＭＣ１５０Ａになりうる。管理サーバー２１０は、ＣＭＦ１００からモニターされた情報と、フルの、インサイドアウトの、アウトサイドインの、エンタープライズにとって関心のあるサービスおよびアプリケーションのビューを提供する内部サービス２５０からのモニターされた情報とを組み合わせることができる。
【００２８】
アウトサイドインのモニタリング機能の例は、エンタープライズ内でホストされたウェブサイトまたはウェブサービスに適用することができる。エンタープライズの外側に位置するＰＯＰ１２０は、ウェブサイトまたはウェブサービスをモニターするタスクを割り当てられ、サービスの中に接続する外部リンクのヘルスまたはステータスを決定しうる。外部のＰＯＰ１２０において一度収集された情報は、管理サーバー２１０に発行され、エンタープライズの内側に戻りうる。インサイドアウトのモニタリング機能の例は、エンタープライズ内に位置するＰＯＰ１２０から、エンタープライズの外側でホストされたサービスのヘルスまたはステータスを決定するように適用することができる。例えば、もし、クレジットカードの特定の種類についてクジットカードのトランザクションを検証するクラウドベースのサービスがアクセス不可能であれば、発行されたヘルスのステータスは、エンタープライズ内に位置するウェブサーバーに、オンラインの商取引の購入オプションとしてクレジットカードのこの特定の種類を減らすことを許可できる。検証サービスが復元されたとき、それぞれの支払いのオプションは、オンラインの商取引のサイトへ戻すことができる。
【００２９】
管理サーバー２１０が、ＣＭＣ１５０および／またはＰＯＰ１２０になりうることを認識されたい。ＣＭＣ１５０、ＣＭＳ１４０、およびＰＯＰ１２０に関連付けられたオペレーションは、様々な、および複数のエンティティ上に分散され、クラウドモニタリングのアクティビティーを発行、使用、または集中管理するのに有効となりうるように、任意の組合せおよび多重度において一緒に組み合わされることができる。ＰＯＰ１２０、またはＣＭＣ１５０に関連付けられた機能性は、ライブラリーまたはソフト開発キット（software development kit：ＳＤＫ）として提供されうる。これらのライブラリーまたはＳＤＫは、これらの様々な実施形態により、ＣＭＦ１００の要素を一緒に統合し、または他のモジュールの中にＣＭＦ１００の要素を統合することが可能である。
【００３０】
次に図３を参照すると、追加的な詳細が、クラウドベースのサービスおよびアプリケーションモニタリングについての本明細書に提示する実施形態に関して提供される。詳細には図３は、本明細書に提示する実施形態によりＣＭＳ１４０についての方法３００を示すフロー図である。本明細書で説明される論理動作を、（１）コンピューティングシステムが実行する、動作シーケンスまたはプログラムモジュールとして、および／または（２）コンピューティングシステム内の相互接続されたマシン論理回路または回路モジュールとして、実施することを認識されたい。これらの実施は、コンピューティングシステムのパフォーマンスおよび他の要件による、収集できる問題によって決まる。従って、本明細書で説明される論理動作は、常態動作、構造的デバイス、動作またはモジュールと言われる。このような動作、構造的デバイス、行為、およびモジュールを、ソフトウェア、ファームウェア、専用デジタル論理、およびそれらの任意の組み合わせにおいて実行することができる。図で示され、本明細書で説明されるより多くの動作または少ない動作を行うことができることを認識されたい。このような動作を、順に、並行して、または本明細書で説明されるものと異なる順序で行うことができる。
【００３１】
方法３００は、ＣＭＳ１４０がＰＯＰ１２０とインターフェースするオペレーション３１０において始まる。ＣＭＳ１４０は、要求に基づくセキュリティポリシーを使用してＰＯＰ１２０を登録することができる。方法３００は、オペレーション３１０からオペレーション３２０に進む。
【００３２】
オペレーション３２０において、ＣＭＳ１４０は、ＣＭＣ１５０とインターフェースできる。ＣＭＳ１４０は、要求に基づくセキュリティポリシーを使用してＣＭＣ１５０を登録することができる。方法３００は、オペレーション３２０からオペレーション３３０に進む。
【００３３】
オペレーション３２０において、ＣＭＳ１４０は、ＭＥ１３０についての情報を提供するＰＯＰ１２０に関連付けられた権限を管理する。オペレーション３１０におけるＰＯＰ１２０のために確立された要求に基づくセキュリティポリシーによって、ＣＭＳ１４０は、ＰＯＰ１２０がモニタリング情報を発行するＭＥ１３０を指定することができる。ＣＭＳ１４０は、発行に関連する様々なパラメーターも指定することができる。例えば、モニタリング頻度、発行頻度、収集、処理、フィルタリング、詳細のレベル、等である。方法３００は、オペレーション３３０からオペレーション３４０に進む。
【００３４】
オペレーション３４０において、ＣＭＳ１４０は、ＰＯＰ１２０からＭＥ１３０についての情報を受信する。ＰＯＰ１２０がＭＥ１３０に関する管理情報を収集すると、この情報は、ＰＯＰ１２０によりＣＭＳ１４０に発行されうる。ＭＥ１３０に関する管理情報は、ヘルスステータス、パフォーマンスメトリック、オペレーティング統計、および様々な他のパラメーターを含みうる。ＣＭＳ１４０は、ＰＯＰ１２０から発行される情報の調整を管理することができる。ＰＯＰ１２０のスコープをモニターし、および調整することにより、ＰＯＰ１２０から発行される情報のリダンダンシーも管理することが可能である。方法３００は、オペレーション３４０からオペレーション３５０に進む。
【００３５】
オペレーション３５０において、ＣＭＳ１４０は、ＭＥ１３０についての情報を収集する。モニターされた管理情報の収集は、ＣＭＳ１４０、ＰＯＰ１２０、ＣＭＣ１５０、またはそれらの任意の組合せにおいて行われうる。ＭＥ１３０に関連するモニターされた管理情報は、キャッシュ、バッファー、データベース、ファイルシステム、その他のデータ記憶装置、メカニズム、またはシステム、またはそれらの任意の組合せにおいて格納されうる。方法３００は、オペレーション３５０からオペレーション３６０に進む。
【００３６】
オペレーション３６０において、ＣＭＳ１４０は、ＭＥ１３０についての情報を要求するＣＭＣ１５０の権限を管理する。オペレーション３２０におけるＣＭＣ１５０のために確立された要求に基づくセキュリティポリシーによって、ＣＭＣ１５０は、指定されたＭＥ１３０、指定されたレート、詳細の指定されたレベルに関連する情報にアクセスしうる。方法３００は、オペレーション３６０からオペレーション３７０に進む。
【００３７】
オペレーション３７０において、ＣＭＳ１４０は、ＣＭＣ１５０からクエリを受信する。ＣＭＳ１４０は、クエリを実行し、またはＣＭＳ１４０のモニターされた管理情報にサブスクライブすることができる。情報は、ＰＯＰ１２０からＣＭＳ１４０に発行される情報としてＭＥ１３０と関連することができる。方法３００は、オペレーション３７０からオペレーション３８０に進む。
【００３８】
オペレーション３８０において、ＣＭＳ１４０は、ＭＥ１３０に関連したオペレーション３７０の受信されたクエリに応答して、ＣＭＣ１５０にＭＥ１３０についての情報を提供する。方法３００は、オペレーション３８０からオペレーション３９０に進む。
【００３９】
オペレーション３９０において、ＣＭＳ１４０は、パブリケーションおよびサブスクリプションのサービスをＰＯＰ１２０およびＣＭＣ１５０に提供する。方法３００は、オペレーション３９０の後に終了することができ、また方法３００は、連続的に、または定期的に繰り返されうる。
【００４０】
次に図４を参照すると、追加的な詳細が、クラウドベースのサービスおよびアプリケーションモニタリングについての本明細書に提示する実施形態に関して提供される。詳細には図４は、本明細書に提示する実施形態によりクラウドモニタリングポイントオブプレゼンス（ＰＯＰ）１２０についての方法４００を示すフロー図である。方法４００は、ＰＯＰ１２０がＭＥ１３０とインターフェースするオペレーション４１０において始まる。例えば、ネットワーク接続は、ＰＯＰ１２０とＭＥ１３０との間に確立されうる。この接続を確立することは、ＰＯＰ１２０へのアクセス内のモニタリング利用可能なＭＥ１３０を識別する検索プロセスを含みうる。
【００４１】
ＰＯＰ１２０は、ＰＯＰ１２０がＭＥ１２０についての情報を間接的に取得することが可能なように、ＭＥ１３０への直接ネットワーク接続を有することができないことを、認識されたい。ＭＥ１３０もまた、ＣＭＦ１００においてアクティブに参加することができない。ＣＭＦ１００は、ただＭＥ１３０に監視するにすぎない。方法４００は、オペレーション４１０からオペレーション４２０に進む。
【００４２】
オペレーション４２０において、ＰＯＰ１２０は、ＣＭＳ１４０に登録する。ＰＯＰ１２０は、要求に基づくセキュリティポリシーを使用してＣＭＳ１４０に登録することができる。このようなポリシーによって、ＰＯＰ１２０は、ＰＯＰ１２０の身元、ケーパビリティー、または所属に関する要求をすることができる。ＣＭＳ１４０は、ＰＯＰ１２０の要求の認証の試行をすることができる。ＰＯＰ１２０は、登録の部分のプロセスとしてＣＭＳ１４０との、サブスクリプションおよびパブケーションのリレーションシップを確立することができる。方法４００は、オペレーション４２０からオペレーション４３０に進む。
【００４３】
オペレーション４３０において、ＰＯＰ１２０は、ＣＭＳ１４０からモニターするロール、スコープ、またはポリシーを受信する。例えば、スコープは、モニターすべきＭＥ１３０がどれかをＰＯＰ１２０に示すことが可能である。同様にポリシーは、モニタリングの頻度、処理、発行の頻度、収集、フィルタリング、およびその他等の様々なパラメーターをＰＯＰ１２０に指定することができる。方法４００は、オペレーション４３０からオペレーション４４０に進む。
【００４４】
オペレーション４４０において、ＰＯＰ１２０は、ローカルキャッシュ内にＭＥ１３０に関連する情報を収集する。方法４００は、オペレーション４４０からオペレーション４５０に進む。
【００４５】
オペレーション４５０において、ＰＯＰ１２０は、ＭＥ１３０に関連する任意のモニターされた管理情報をＣＭＳ１４０に送信し、すなわち発行する。方法４００は、オペレーション４５０の後に終了することができ、また方法４００は、連続的に、または定期的に繰り返されうる。
【００４６】
次に図５を参照すると、追加的な詳細が、クラウドベースのサービスおよびアプリケーションモニタリングについての本明細書に提示する実施形態に関して提供される。詳細には図５は、本明細書に提示する実施形態によりクラウドモニタリングクライアントについての方法５００を示すフロー図である。方法５００は、ＣＭＣ１５０がＣＭＳ１４０に登録するオペレーション５１０において始まる。ＣＭＣ１５０は、要求に基づくセキュリティポリシーを使用してＣＭＳ１４０に登録することができる。このようなポリシーによって、ＣＭＣ１５０は、ＣＭＣ１５０の身元、ケーパビリティー、または所属に関する要求をすることができる。ＣＭＣ１５０は、登録の部分のプロセスとしてＣＭＳ１４０との、サブスクリプションおよびパブケーションのリレーションシップを確立することができる。方法５００は、オペレーション５１０からオペレーション５２０に進む。
【００４７】
オペレーション５２０において、ＣＭＣ１５０は、ＣＭＳ１４０のＭＥ１３０に関する情報にアクセスする権限をネゴシエートする。ＣＭＣ１５０は、モニタリング頻度、モニターされたＰＯＰ１２０の数量、モニターされたＰＯＰ１２０の場所等のサブスクリプションポリシーもネゴシエートできる。方法５００は、オペレーション５２０からオペレーション５３０に進む。
【００４８】
オペレーション５３０において、ＣＭＣ１５０は、ＣＭＳ１４０にクエリを送信する。ＣＭＣ１５０は、ＣＭＣ１５０がモニターすることを望むＭＥ１３０はどれかを指定するクエリのスコープを提供することができる。方法５００は、オペレーション５３０からオペレーション５４０に進む。
【００４９】
オペレーション５４０において、ＣＭＣ１５０は、オペレーション５３０において送信されたクエリへの応答として、ＣＭＳ１４０からＭＥ１３０についての情報を受信する。ＣＭＣ１５０は、受信したものをローカルで収集できる。ＣＭＣ１５０は、管理サーバー２１０または受信した情報の他の関連付けられたコンシューマー（consumer）と受信した情報を共有できる。方法５００は、オペレーション５４０からオペレーション５５０に進む。
【００５０】
オペレーション５５０において、ＣＭＣ１５０は、ＣＭＳ１４０から情報配信を要求するサブスクリプションのサービスを提供する。方法５００は、オペレーション５５０の後に終了することができ、また方法５００は、連続的に、または定期的に繰り返されうる。
【００５１】
次に図６を参照すると、例示的なコンピューターアーキテクチャー６００は、クラウドベースのサービスおよびアプリケーションモニタリングについての本明細書に説明するソフトウェアコンポーネントを実行しうる。図６に示されるコンピューター構成は、従来のデスクトップ、ラップトップ、又はサーバーコンピューターを例示したものであり、本明細書に開示されたソフトウェア構成要素のいずれかの形態を実行することに用いられうる。しかしながら、開示されたソフトウェア構成要素は、モバイル装置、テレビ、セットトップボックス、キオスク、乗り物の情報システム、モバイル電話、備え付けのシステムなどのその他の典型的なコンピューティング環境において実行されることができる。コンピューターアーキテクチャー６００は、クラウドモニタリングＰＯＰ１２０、ＣＭＳ１４０、ＣＭＣ１５０、または管理サーバー２１０として役立つコンピューターに適用することができる。コンピューターアーキテクチャー６００は、クラウドモニタリングＰＯＰのモジュール６１０、クラウドモニタリングサービス（ＣＭＳ）のモジュール６２０、クラウドモニタリングクライアント（ＣＭＣ）のモジュール６３０、またはそれらの任意の組み合わせ等の、クラウドベースのサービスおよびアプリケーションモニタリングに関連付けられたプログラムモジュールを実行しうる。
【００５２】
図６に図示されたコンピューターアーキテクチャーは、中央処理ユニット１０（ＣＰＵ）と、ランダムアクセスメモリ１４（ＲＡＭ）及びリードオンリーメモリ１６（ＲＯＭ）を含むシステムメモリ１３と、システムメモリ１３をＣＰＵ１０に連結することができるシステムバス１１とを含むことができる。システムメモリ１３は、クラウドベースのサービスおよびアプリケーションモニタリングのために使用されるメモリを提供しうる。コンピューター６００内の要素間における情報の伝達を助ける基本ルーチンを含む基本入／出力システムが、例えば開始処理の間、ＲＯＭ１６に格納されることができる。コンピューター６００は、クラウドベースのサービスおよびアプリケーションモニタリングに関連する例えばオペレーティングシステム１８、ソフトウェア、データ、及び様々なプログラムモジュールを格納するための大容量記憶装置１５をさらに含むことができる。プログラムモジュールは、クラウドモニタリングＰＯＰのモジュール６１０、クラウドモニタリングサービス（ＣＭＳ）のモジュール６２０、またはクラウドモニタリングクライアント（ＣＭＣ）のモジュール６３０を含むことができる。
【００５３】
大容量記憶装置１５は、バス１１に接続された大容量記憶装置制御部（図示せず）を介してＣＰＵ１０に接続されることができる。大容量記憶装置１５及びこれに関連するコンピューター読み出し可能な媒体は、コンピューター６００のために不揮発性の記憶装置を提供することができる。本明細書に含まれるコンピューター読み出し可能な媒体の記載は、ハードディスク又はＣＤ−ＲＯＭドライブのような大容量記憶装置を示しているが、当業者であれば、コンピューター読み出し可能な媒体をコンピューター６００によってアクセスされることができる何らかの利用可能なコンピューター記憶媒体とすることができることを理解できる。
【００５４】
例として、コンピューター可読媒体には、コンピューター可読命令、データ構造、プログラムモジュール、または他のデータといった情報を記憶する方法または技術で実装した、揮発性および不揮発性、取外し可能および取外し不可能な媒体を含むことができるが、これらに限らない。例えば、コンピューター可読媒体には、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリもしくは他の半導体メモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ（digital versatile disk）、ＨＤ−ＤＶＤ、ＢＬＵ−ＲＡＹ、もしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または、所望の情報を格納するために使用可能、かつコンピューター６００によってアクセス可能な他の任意の媒体を含むが、これらに限らない。
【００５５】
種々の実施形態に従って、コンピューター６００は、ネットワーク２０等のネットワークを介する遠隔のコンピューターへの論理接続を使用して、ネットワーク環境で動作することができる。ネットワーク２０は、クラウド１１０および仮想クラウド２２０との重複を、全体で、または部分ですることが可能である。コンピューター６００は、バス１１に接続したネットワークインターフェースユニット１９を介して、ネットワーク２０に接続することができる。当然のことながら、ネットワークインターフェースユニット１９を利用して、他の種類のネットワークおよび遠隔コンピューターシステムに接続してもよい。コンピューター６００にはまた、キーボード、マウス、または電子スタイラス（図示せず）を含む複数の他の装置からの入力を受信し処理するための、入／出力コントローラー１２を含むことができる。同様に、入／出力コントローラー１２は、プリンター、または他の種類の出力装置（図示せず）への出力を提供することができる。表示装置３０は、テキスト形式、グラフィックス、ビデオ、グラフィカルユーザーインターフェース、その他のユーザーインターフェース要素、または、これらの任意の組合せにおいて、コンピューター６００から出力を提供するために使用されうる。
【００５６】
簡潔に上述したように、ネットワークデスクトップ、ラップトップ、サーバーコンピューター、または他のコンピューティング環境の動作を制御するのに適したオペレーティングシステム１８を含む、複数のプログラムモジュールおよびデータファイルを、コンピューター６００の大容量記憶装置１５およびＲＡＭ１４に格納することができる。大容量記憶装置１５、ＲＯＭ１６およびＲＡＭ１４はまた、１つまたは複数のプログラムモジュールを格納することができる。特に、大容量記憶装置１５、ＲＯＭ１６およびＲＡＭ１４は、ＣＰＵ１０による実行についてのクラウドベースのサービスおよびアプリケーションモニタリングと関連付けられるプログラムモジュールを格納することができる。大容量記憶装置１５、ＲＯＭ１６およびＲＡＭ１４はまた、他の種類のプログラムモジュールを格納することもできる。
【００５７】
一般には、クラウドモニタリングＰＯＰのモジュール６１０、クラウドモニタリングサービス（ＣＭＳ）のモジュール６２０、またはクラウドモニタリングクライアント（ＣＭＣ）のモジュール６３０等のソフトウェアアプリケーションまたモジュールは、ＣＰＵ１０の中にロードされ、実行されるとき、ＣＰＵ１０およびコンピューター６００全体を、汎用なコンピューティングシステムからクラウドベースのサービスおよびアプリケーションモニタリングとして動作するようにカスタマイズされた特殊なコンピューティングシステムへ変換することができる。ＣＰＵ１０は、個別に、または、まとめて状態の任意数を仮定できる、任意数のトランジスターまたは他のディスクリートサーキットエレメント（discrete circuit element）から構成されることができる。より詳細には、ＣＰＵ１０は、ソフトウェアまたはモジュール内に含まれる実行可能な命令に応じて、１つまたは複数のファイナイトステートマシン（finite-state machine）として動作しうる。これらの実行可能な命令は、どのようにＣＰＵ１０の状態間の切り替えをするかを指定することによってＣＰＵ１０を遷移でき、その結果、ＣＰＵ１０を構成するトランジスター、または他のディスクリートハードウェアエレメント（discrete hardware element）を遷移できる。
【００５８】
大容量記憶装置１５上のソフトウェアまたはモジュールの暗号化は、大容量記憶装置１５の物理的な構造または関連するコンピューター可読記憶媒体も変更することができる。物理的な構造の特定の変換は、本明細書の異なる実施形態における様々な要因に依存しうる。このような要因の例は、コンピューター可読記憶媒体がプライマリーストレージとして、またはセカンダリーストレージ等として特徴があるか否かにかかわらず、コンピューター可読記憶媒体を実装するように使用される技術を含みうるが、これらに限らない。例えば、もしコンピューター可読記憶媒体が、半導体ベースのメモリとして実装されれば、ソフトウェアがそこで暗号化されるとき、ソフトウェアまたはモジュールは、半導体メモリの物理的状態を変更しうる。例えば、ソフトウェアは、半導体メモリを構成している、トランジスター、キャパシター、または他のディスクリートサーキットエレメントの状態を変更しうる。
【００５９】
他の例として、コンピューター可読記憶媒体は、磁気的または光学的な技術に使用して実装されうる。このような実施形態では、ソフトウェアまたはモジュールは、ソフトウェアがそこで暗号化されるとき、磁気的または光学的媒体の物理的な状態を変更しうる。これらの変更は、与えられた磁気的メディア内の特定の場所の磁気的な特性の変化を含みうる。これらの変更は、与えられた光学的メディア内の特定の場所の物理的な特徴または特性の、これらの場所の光学的特性を変化するような、変化も含みうる。物理的な媒体の他の変更は、本明細書の範囲および精神から逸脱することなく、この説明を容易にするだけの提供された前述の例により可能である。
【００６０】
当然のことながら、前述に基づき、クラウドベースのサービスおよびアプリケーションモニタリングを提供する技術を、本明細書に提供するものである。本明細書に提示した主題を、コンピューターの構造的な特徴、方法論的行動、およびコンピューター可読媒体に固有の言語で説明してきたが、当然のことながら、添付の特許請求の範囲に定義する本発明は、必ずしも、本明細書に説明した特定の特徴、行動、または媒体に限るものではない。むしろ、特定の特徴、行動、および媒体は、特許請求の範囲を実装する形態の例として開示するものである。
【００６１】
上述の主題は、例示としてのみ与えるものであって、限定と解釈すべきではない。例示および説明した実施形態および適用の例に従うことなく、また以下の特許請求の範囲に説明する本発明の真の精神および範囲から逸脱することなく、本明細書に説明した主題に種々の修正および変更を加えることができる。
【図１】
2013516700.tif 000003
【図２】
2013516700.tif 000004
【図３】
2013516700.tif 000005
【図４】
2013516700.tif 000006
【図５】
2013516700.tif 000007
【図６】
2013516700.tif 000008
【国際調査報告】
2013516700.tif 000009
2013516700.tif 000010