(57)【要約】  複数のコンバージドＩＴインフラストラクチャ（ＣＩＴＩ）との通信技術が、複数のＣＩＴＩのグループ内の１つのＣＩＴＩにアクセスすることにより、そのグループの一部であるいずれかのＣＩＴＩにアクセスすることを含む。ある例では、各ＣＩＴＩが、それぞれのＣＩＴＩに関する情報を記憶している代表的なコンバージドインフラストラクチャコーディネータ（ＣＩＣ）を有する。グループ内のいずれかのＣＩＴＩが、グループ内の他のいずれかのＣＩＴＩに関する情報を求める要求をクライアントから受け取ると、この要求を受け取ったＣＩＴＩのＣＩＣが他のＣＩＴＩのＣＩＣと交信して、この要求された他のＣＩＴＩに関する情報をそのＣＩＣから取得する。いくつかの例では、ＣＩＣが、グループ内の複数のＣＩＴＩから集まった情報の集約、フィルタ処理及び／又は分析も行い、従ってクライアントは、単純なコマンドに応答して多くのＣＩＴＩに関する処理済みデータを受け取ることができる。この技術は、複数のＣＩＴＩのグループ内の１つのＣＩＴＩにアクセスすることにより、そのグループの一部であるいずれかのＣＩＴＩにアクセスすることを含む。このように、クライアントは、グループ内のいずれかのＣＩＴＩに関する情報を取得するために単一のＣＩＴＩとのみ通信すればよい。従って、複数のＣＩＴＩとの通信を維持するという面倒なタスクが軽減又は完全に排除される。ＣＩＣは、複数のＣＩＴＩから収集された情報の集約、フィルタ処理及び／又は解釈を行うこともでき、これによってクライアントは、単純なコマンドに応答して多くのＣＩＴＩに関する処理済みデータを受け取ることが可能になる。【選択図】図１
2016518641.tif 000002
【特許請求の範囲】
【請求項１】
各々が１又はそれ以上のネットワークスイッチ、１又はそれ以上のコンピュータサーバ及び１又はそれ以上のストレージアレイを含むコンバージドＩＴインフラストラクチャ（ＣＩＴＩ）間における通信方法であって、
第１のＣＩＴＩが、第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関連する、前記第２のＣＩＴＩに関するＣＩＴＩ固有の情報を求める第１の要求をクライアントから受け取るステップと、
前記第１のＣＩＴＩが、前記第１の要求を受け取ったことに応答して、前記第２のＣＩＴＩに前記ＣＩＴＩ固有の情報を求める第２の要求を、ネットワークを介して前記第２のＣＩＴＩに送るステップと、
前記第２の要求に応答して、前記第１のＣＩＴＩが、前記ネットワークを介して前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を受け取るステップと、
前記第２のＣＩＴＩから受け取った前記ＣＩＴＩ固有の情報を前記クライアントに戻すステップと、
を含むことを特徴とする方法。
【請求項２】
前記第１のＣＩＴＩが、第３のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関連する、前記第３のＣＩＴＩに関するＣＩＴＩ固有の情報を求める第３の要求を前記クライアントから受け取るステップと、
前記第１のＣＩＴＩが、前記第３の要求を受け取ったことに応答して、前記第３のＣＩＴＩに前記ＣＩＴＩ固有の情報を求める第４の要求を、前記ネットワークを介して前記第３のＣＩＴＩに送るステップと、
前記第４の要求に応答して、前記第１のＣＩＴＩが、前記ネットワークを介して前記第３のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を受け取るステップと、
前記第３のＣＩＴＩから受け取った前記ＣＩＴＩ固有の情報を前記クライアントに戻すステップと、
をさらに含む請求項１に記載の方法。
【請求項３】
前記第１のＣＩＴＩ及び前記第２のＣＩＴＩは、同じ地理的位置に存在し、前記第３のＣＩＴＩは、異なる地理的位置に存在する、
請求項２に記載の方法。
【請求項４】
前記第１のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関する情報を取得するための発見動作を前記第１のＣＩＴＩに対して実行するステップと、
前記発見動作に応答して、前記発見動作から取得された情報を前記第１のＣＩＴＩのコンバージドインフラストラクチャコーディネータ（ＣＩＣ）に記憶するステップと、
をさらに含み、前記第１のＣＩＴＩの前記ＣＩＣは、前記第２のＣＩＴＩのＣＩＣ及び前記第３のＣＩＴＩのＣＩＣと共に分散データベースを形成する、
請求項２又は３に記載の方法。
【請求項５】
前記発見動作は、（ｉ）前記第１のＣＩＴＩのネットワーク、コンピュータ及びストレージコンポーネントを識別するための、前記第１のＣＩＴＩに対して実行される初期発見動作、及び（ｉｉ）前記第１のＣＩＴＩのネットワーク、コンピュータ及びストレージコンポーネントのいずれかに関連する変化を識別するための、前記初期発見動作の後に実行される後続発見動作、の一方である、
請求項４に記載の方法。
【請求項６】
前記後続発見動作は、（ｉ）前記第１のＣＩＴＩの構成変化に応答して前記第１のＣＩＴＩの最新の構成を識別するための、前記第１のＣＩＴＩの１又はそれ以上のコンポーネントについての選択的問い合わせ、及び（ｉｉ）前記第１のＣＩＴＩに関連する最新の性能データのための発見動作、の一方を含む、
請求項５に記載の方法。
【請求項７】
前記第１のＣＩＴＩに関するＣＩＴＩ固有の情報を求める要求を前記第２のＣＩＴＩから受け取るステップと、
前記第１のＣＩＴＩに関する前記要求されたＣＩＴＩ固有の情報を含む応答を前記第２のＣＩＴＩに送るステップと、
をさらに含む、
請求項４から６のいずれかに記載の方法。
【請求項８】
前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を受け取った後に、前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を前記第１のＣＩＴＩの前記ＣＩＣに記憶するステップをさらに含む、
請求項４から７のいずれかに記載の方法。
【請求項９】
前記第１のＣＩＴＩが、前記第２のＣＩＴＩに関するＣＩＴＩ固有の情報を求める別の要求を前記クライアントから受け取るステップと、
前記第１のＣＩＴＩが、前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を前記第１のＣＩＴＩの前記ＣＩＣから取得するステップと、
をさらに含む請求項８に記載の方法。
【請求項１０】
前記第１のＣＩＴＩは、ＣＩＴＩマネージャを含み、前記方法は、前記発見動作から取得された情報を前記第１のＣＩＴＩの前記ＣＩＣに記憶する前に、
前記ＣＩＴＩマネージャが、前記第１のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関する情報を求めるＲＥＳＴ（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）要求を前記第１のＣＩＴＩの前記ＣＩＣから受け取るステップと、
前記ＣＩＴＩマネージャが、前記ＲＥＳＴ要求で求められた前記情報を提供するＲＥＳＴ応答を前記第１のＣＩＴＩの前記ＣＩＣに提供するステップと、
をさらに含む請求項４から９のいずれかに記載の方法。
【請求項１１】
前記第１の要求は、複数のＣＩＴＩに関連する情報を求める前記クライアントからのＲＥＳＴ要求であり、前記方法は、前記ＣＩＴＩマネージャが、前記複数のＣＩＴＩの各々からＣＩＴＩ固有の情報を取得するために前記第１のＣＩＴＩの前記ＣＩＣに問い合わせるステップをさらに含む、
請求項１０に記載の方法。
【請求項１２】
前記複数のＣＩＴＩの各々から取得された前記ＣＩＴＩ固有の情報を集約して、前記複数のＣＩＴＩに関連する集約データを生成するステップをさらに含む、
請求項１１に記載の方法。
【請求項１３】
前記複数のＣＩＴＩの各々から取得された前記ＣＩＴＩ固有の情報をフィルタ処理して、前記複数のＣＩＴＩのサブセットに関連するフィルタ処理データを生成するステップをさらに含む、
請求項１１又は１２に記載の方法。
【請求項１４】
前記複数のＣＩＴＩの各々から取得された前記ＣＩＴＩ固有の情報を分析して、低負荷を受けている１又はそれ以上のＣＩＴＩの組を識別するステップをさらに含む、
請求項１１又から１３のいずれかに記載の方法。
【請求項１５】
前記複数のＣＩＴＩに関連するＲＥＳＴ応答を前記クライアントに提供するステップをさらに含む、
請求項１１から１４のいずれかに記載の方法。
【請求項１６】
前記第１のＣＩＴＩの前記ＣＩＣが、前記ネットワーク上で第４のＣＩＴＩがオンライン状態である旨の通知を前記第４のＣＩＴＩのＣＩＣから受け取るステップと、
前記第１のＣＩＴＩの前記ＣＩＣが、前記第４のＣＩＴＩの前記ＣＩＣとの双方向プロトコルに参加して、前記第４のＣＩＴＩに関するＣＩＴＩ固有の情報へのアクセス権を前記第４のＣＩＴＩの前記ＣＩＣを介して取得するステップと、
をさらに含む請求項４から１５のいずれかに記載の方法。
【請求項１７】
前記ＣＩＴＩ固有の情報は、前記第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つの構成に関する、
請求項１から１６のいずれかに記載の方法。
【請求項１８】
前記ＣＩＴＩ固有の情報は、前記第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関連する性能データに関する、
請求項１から１７のいずれかに記載の方法。
【請求項１９】
請求項１から１８のいずれかに記載の方法を実行するための手段を備える、
ことを特徴とする装置。
【請求項２０】
１又はそれ以上のネットワークスイッチの組と、
１又はそれ以上のコンピュータサーバの組と、
１又はそれ以上のストレージアレイの組と、
１又はそれ以上のプロセッサの組と、
前記１又はそれ以上のプロセッサの組に結合された、命令を記憶するメモリと、
を備えたコンバージドＩＴインフラストラクチャ（ＣＩＴＩ）であって、前記命令は、前記１又はそれ以上のプロセッサの組によって実行された時に、該１又はそれ以上のプロセッサの組に、
第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関連する、前記第２のＣＩＴＩに関するＣＩＴＩ固有の情報を求める第１の要求をクライアントから受け取ることと、
前記第１の要求の受け取りに応答して、前記第２のＣＩＴＩに前記ＣＩＴＩ固有の情報を求める第２の要求を、ネットワークを介して前記第２のＣＩＴＩに送ることと、
前記第２の要求に応答して、前記ネットワークを介して前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を受け取ることと、
前記第２のＣＩＴＩから受け取った前記ＣＩＴＩ固有の情報を前記クライアントに戻すことと、
を行わせることを特徴とするＣＩＴＩ。
【請求項２１】
前記命令は、前記１又はそれ以上のプロセッサの組に、前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を前記ＣＩＴＩに記憶することをさらに行わせる、
請求項２０に記載のＣＩＴＩ。
【請求項２２】
前記命令は、前記１又はそれ以上のプロセッサの組に、
第３のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関連する、前記第３のＣＩＴＩに関するＣＩＴＩ固有の情報を求める第３の要求を前記クライアントから受け取ることと、
前記第３の要求を受け取ったことに応答して、前記第３のＣＩＴＩに前記ＣＩＴＩ固有の情報を求める第４の要求を、前記ネットワークを介して前記第３のＣＩＴＩに送ることと、
前記第４の要求に応答して、前記ネットワークを介して前記第３のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を受け取ることと、
前記第３のＣＩＴＩから受け取った前記ＣＩＴＩ固有の情報を前記クライアントに戻すことと、
をさらに行わせる請求項２０又は２１に記載のＣＩＴＩ。
【請求項２３】
前記ＣＩＴＩ及び前記第２のＣＩＴＩは、同じ地理的位置に存在し、前記第３のＣＩＴＩは、異なる地理的位置に存在する、
請求項２２に記載のＣＩＴＩ。
【請求項２４】
前記命令は、前記１又はそれ以上のプロセッサの組に、
前記ＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関する情報を取得するための発見動作を前記ＣＩＴＩに対して実行することと、
前記発見動作に応答して、前記発見動作から取得された情報を前記ＣＩＴＩのコンバージドインフラストラクチャコーディネータ（ＣＩＣ）に記憶することと、
をさらに行わせ、前記ＣＩＴＩの前記ＣＩＣは、前記第２のＣＩＴＩのＣＩＣ及び前記第３のＣＩＴＩのＣＩＣと共に分散データベースを形成する、
請求項２０から２３のいずれかに記載のＣＩＴＩ。
【請求項２５】
前記発見動作は、（ｉ）前記第１のネットワーク、コンピュータ及びストレージコンポーネントを識別するための、前記ＣＩＴＩに対して実行される初期発見動作、及び（ｉｉ）前記ＣＩＴＩのネットワーク、コンピュータ及びストレージコンポーネントのいずれかに関連する変化を識別するための、前記初期発見動作の後に実行される後続発見動作、の一方である、
請求項２４に記載のＣＩＴＩ。
【請求項２６】
前記後続発見動作は、（ｉ）前記ＣＩＴＩの構成変化に応答して前記ＣＩＴＩの最新の構成を識別するための、前記ＣＩＴＩの１又はそれ以上のコンポーネントについての選択的問い合わせ、及び（ｉｉ）前記ＣＩＴＩに関連する最新の性能データのための発見動作、の一方を含む、
請求項２５に記載のＣＩＴＩ。
【請求項２７】
前記命令は、前記１又はそれ以上のプロセッサの組に、
前記ＣＩＴＩに関するＣＩＴＩ固有の情報を求める要求を前記第２のＣＩＴＩから受け取ることと、
前記ＣＩＴＩに関する前記要求されたＣＩＴＩ固有の情報を含む応答を前記第２のＣＩＴＩに送ることと、
をさらに行わせる請求項２４から２６のいずれかに記載のＣＩＴＩ。
【請求項２８】
前記命令は、前記１又はそれ以上のプロセッサの組に、前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を受け取った後に、前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を前記ＣＩＴＩの前記ＣＩＣに記憶することをさらに行わせる、
請求項２４から２７のいずれかに記載のＣＩＴＩ。
【請求項２９】
前記命令は、前記１又はそれ以上のプロセッサの組に、
前記第２のＣＩＴＩに関するＣＩＴＩ固有の情報を求める別の要求を前記クライアントから受け取ることと、
前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を前記ＣＩＴＩの前記ＣＩＣから取得することと、
をさらに行わせる請求項２８に記載のＣＩＴＩ。
【請求項３０】
前記ＣＩＴＩは、ＣＩＴＩマネージャを含み、前記命令は、前記１又はそれ以上のプロセッサの組に、前記発見動作から取得した情報を前記ＣＩＴＩのＣＩＣに記憶する前に、前記ＣＩＴＩマネージャが、
前記ＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関する情報を求めるＲＥＳＴ（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）要求を前記ＣＩＴＩの前記ＣＩＣから受け取るようにすることと、
前記ＲＥＳＴ要求で求められた前記情報を提供するＲＥＳＴ応答を前記ＣＩＴＩの前記ＣＩＣに提供するようにすることと、
をさらに行わせる請求項２４から２９のいずれかに記載のＣＩＴＩ。
【請求項３１】
前記第１の要求は、複数のＣＩＴＩに関連する情報を求める前記クライアントからの要求であり、前記命令は、前記１又はそれ以上のプロセッサの組に、前記複数のＣＩＴＩの各々からＣＩＴＩ固有の情報を取得するために前記ＣＩＴＩマネージャが前記ＣＩＴＩの前記ＣＩＣに問い合わせるようにすることをさらに行わせる、
請求項２４から３０のいずれかに記載のＣＩＴＩ。
【請求項３２】
前記命令は、前記１又はそれ以上のプロセッサの組に、前記複数のＣＩＴＩの各々から取得された前記ＣＩＴＩ固有の情報を集約して、前記複数のＣＩＴＩに関連する集約データを生成することをさらに行わせる、
請求項３１に記載のＣＩＴＩ。
【請求項３３】
前記命令は、前記１又はそれ以上のプロセッサの組に、前記複数のＣＩＴＩの各々から取得された前記ＣＩＴＩ固有の情報をフィルタ処理して、前記複数のＣＩＴＩのサブセットに関連するフィルタ処理データを生成することをさらに行わせる、
請求項３１又は３２に記載のＣＩＴＩ。
【請求項３４】
前記命令は、前記１又はそれ以上のプロセッサの組に、前記複数のＣＩＴＩの各々から取得された前記ＣＩＴＩ固有の情報を分析して、低負荷を受けている１又はそれ以上のＣＩＴＩの組を識別することをさらに行わせる、
請求項３１から３３のいずれかに記載のＣＩＴＩ。
【請求項３５】
前記命令は、前記１又はそれ以上のプロセッサの組に、前記複数のＣＩＴＩに関連するＲＥＳＴ応答を前記クライアントに提供することをさらに行わせる、
請求項３１から３４のいずれかに記載のＣＩＴＩ。
【請求項３６】
前記命令は、前記１又はそれ以上のプロセッサの組に、前記ＣＩＴＩの前記ＣＩＣが、
前記ネットワーク上で第４のＣＩＴＩがオンライン状態である旨の通知を前記第４のＣＩＴＩのＣＩＣから受け取るようにすることと、
前記第４のＣＩＴＩの前記ＣＩＣとの双方向プロトコルに参加して、前記第４のＣＩＴＩに関するＣＩＴＩ固有の情報へのアクセス権を前記第４のＣＩＴＩの前記ＣＩＣを介して取得するようにすることと、
をさらに行わせる、
請求項２４から３５のいずれかに記載のＣＩＴＩ。
【請求項３７】
前記ＣＩＴＩ固有の情報は、前記第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つの構成に関する、
請求項２０から３６のいずれかに記載のＣＩＴＩ。
【請求項３８】
前記ＣＩＴＩ固有の情報は、前記第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関連する性能データに関する、
請求項２０から３７のいずれかに記載のＣＩＴＩ。
【請求項３９】
命令を記憶する少なくとも１つのコンピュータ可読媒体を含むコンピュータプログラム製品であって、前記命令は、１又はそれ以上のプロセッサの組によって実行された時に、前記１又はそれ以上のプロセッサの組に、各々が１又はそれ以上のネットワークスイッチ、１又はそれ以上のコンピュータサーバ及び１又はそれ以上のストレージアレイを含む複数のコンバージドＩＴインフラストラクチャ（ＣＩＴＩ）間における通信方法を実行させ、該方法は、
第１のＣＩＴＩが、第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関連する、前記第２のＣＩＴＩに関するＣＩＴＩ固有の情報を求める第１の要求をクライアントから受け取るステップと、
前記第１のＣＩＴＩが、前記第１の要求を受け取ったことに応答して、前記第２のＣＩＴＩに前記ＣＩＴＩ固有の情報を求める第２の要求を、ネットワークを介して前記第２のＣＩＴＩに送るステップと、
前記第２の要求に応答して、前記第１のＣＩＴＩが、前記ネットワークを介して前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を受け取るステップと、
前記第２のＣＩＴＩから受け取った前記ＣＩＴＩ固有の情報を前記クライアントに戻すステップと、
を含む、
ことを特徴とするコンピュータプログラム製品。
【請求項４０】
前記方法は、
前記第１のＣＩＴＩが、第３のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関連する、前記第３のＣＩＴＩに関するＣＩＴＩ固有の情報を求める第３の要求を前記クライアントから受け取るステップと、
前記第１のＣＩＴＩが、前記第３の要求を受け取ったことに応答して、前記第３のＣＩＴＩに前記ＣＩＴＩ固有の情報を求める第４の要求を、前記ネットワークを介して前記第３のＣＩＴＩに送るステップと、
前記第４の要求に応答して、前記第１のＣＩＴＩが、前記ネットワークを介して前記第３のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を受け取るステップと、
前記第３のＣＩＴＩから受け取った前記ＣＩＴＩ固有の情報を前記クライアントに戻すステップと、
をさらに含む、
請求項３９に記載のコンピュータプログラム製品。
【請求項４１】
前記第１のＣＩＴＩ及び前記第２のＣＩＴＩは、同じ地理的位置に存在し、前記第３のＣＩＴＩは、異なる地理的位置に存在する、
請求項４０に記載のコンピュータプログラム製品。
【請求項４２】
前記方法は、
前記第１のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関する情報を取得するための発見動作を前記第１のＣＩＴＩに対して実行するステップと、
前記発見動作に応答して、前記発見動作から取得された情報を前記第１のＣＩＴＩのコンバージドインフラストラクチャコーディネータ（ＣＩＣ）に記憶するステップと、
をさらに含み、前記第１のＣＩＴＩの前記ＣＩＣは、前記第２のＣＩＴＩのＣＩＣ及び前記第３のＣＩＴＩのＣＩＣと共に分散データベースを形成する、
請求項４０又は４１に記載のコンピュータプログラム製品。
【請求項４３】
前記発見動作は、（ｉ）前記第１のＣＩＴＩのネットワーク、コンピュータ及びストレージコンポーネントを識別するための、前記第１のＣＩＴＩに対して実行される初期発見動作、及び（ｉｉ）前記第１のＣＩＴＩのネットワーク、コンピュータ及びストレージコンポーネントのいずれかに関連する変化を識別するための、前記初期発見動作の後に実行される後続発見動作、の一方である、
請求項４２に記載のコンピュータプログラム製品。
【請求項４４】
前記後続発見動作は、（ｉ）前記第１のＣＩＴＩの構成変化に応答して前記第１のＣＩＴＩの最新の構成を識別するための、前記第１のＣＩＴＩの１又はそれ以上のコンポーネントについての選択的問い合わせ、及び（ｉｉ）前記第１のＣＩＴＩに関連する最新の性能データのための発見動作、の一方を含む、
請求項４３に記載のコンピュータプログラム製品。
【請求項４５】
前記方法は、
前記第１のＣＩＴＩに関するＣＩＴＩ固有の情報を求める要求を前記第２のＣＩＴＩから受け取るステップと、
前記第１のＣＩＴＩに関する前記要求されたＣＩＴＩ固有の情報を含む応答を前記第２のＣＩＴＩに送るステップと、
をさらに含む、
請求項４２から４４のいずれかに記載のコンピュータプログラム製品。
【請求項４６】
前記方法は、前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を受け取った後に、前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を前記第１のＣＩＴＩの前記ＣＩＣに記憶するステップをさらに含む、
請求項４２から４５のいずれかに記載のコンピュータプログラム製品。
【請求項４７】
前記方法は、
前記第１のＣＩＴＩが、前記第２のＣＩＴＩに関するＣＩＴＩ固有の情報を求める別の要求を前記クライアントから受け取るステップと、
前記第１のＣＩＴＩが、前記第２のＣＩＴＩに関する前記ＣＩＴＩ固有の情報を前記第１のＣＩＴＩの前記ＣＩＣから取得するステップと、
をさらに含む、
請求項４６に記載のコンピュータプログラム製品。
【請求項４８】
前記第１のＣＩＴＩは、ＣＩＴＩマネージャを含み、前記方法は、前記発見動作から取得された情報を前記第１のＣＩＴＩの前記ＣＩＣに記憶する前に、
前記ＣＩＴＩマネージャが、前記第１のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関する情報を求めるＲＥＳＴ（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）要求を前記第１のＣＩＴＩの前記ＣＩＣから受け取るステップと、
前記ＣＩＴＩマネージャが、前記ＲＥＳＴ要求で求められた前記情報を提供するＲＥＳＴ応答を前記第１のＣＩＴＩの前記ＣＩＣに提供するステップと、
をさらに含む、
請求項４２から４７のいずれかに記載のコンピュータプログラム製品。
【請求項４９】
前記第１の要求は、複数のＣＩＴＩに関連する情報を求める前記クライアントからの要求であり、前記方法は、前記第１のＣＩＴＩのＣＩＴＩマネージャが、前記複数のＣＩＴＩの各々からＣＩＴＩ固有の情報を取得するために前記第１のＣＩＴＩの前記ＣＩＣに問い合わせるステップをさらに含む、
請求項４２から４８のいずれかに記載のコンピュータプログラム製品。
【請求項５０】
前記方法は、前記複数のＣＩＴＩの各々から取得された前記ＣＩＴＩ固有の情報を集約して、前記複数のＣＩＴＩに関連する集約データを生成するステップをさらに含む、
請求項４９に記載のコンピュータプログラム製品。
【請求項５１】
前記方法は、前記複数のＣＩＴＩの各々から取得された前記ＣＩＴＩ固有の情報をフィルタ処理して、前記複数のＣＩＴＩのサブセットに関連するフィルタ処理データを生成するステップをさらに含む、
請求項４９又は５０に記載のコンピュータプログラム製品。
【請求項５２】
前記方法は、前記複数のＣＩＴＩの各々から取得された前記ＣＩＴＩ固有の情報を分析して、低負荷を受けている１又はそれ以上のＣＩＴＩの組を識別するステップをさらに含む、
請求項４９から５１のいずれかに記載のコンピュータプログラム製品。
【請求項５３】
前記方法は、前記複数のＣＩＴＩに関連するＲＥＳＴ応答を前記クライアントに提供するステップをさらに含む、
請求項４９から５２のいずれかに記載のコンピュータプログラム製品。
【請求項５４】
前記方法は、
前記第１のＣＩＴＩの前記ＣＩＣが、前記ネットワーク上で第４のＣＩＴＩがオンライン状態である旨の通知を前記第４のＣＩＴＩのＣＩＣから受け取るステップと、
前記第１のＣＩＴＩの前記ＣＩＣが、前記第４のＣＩＴＩの前記ＣＩＣとの双方向プロトコルに参加して、前記第４のＣＩＴＩに関するＣＩＴＩ固有の情報へのアクセス権を前記第４のＣＩＴＩの前記ＣＩＣを介して取得するステップと、
をさらに含む、
請求項４２から５３のいずれかに記載のコンピュータプログラム製品。
【請求項５５】
前記ＣＩＴＩ固有の情報は、前記第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つの構成に関する、
請求項３９から５４のいずれかに記載のコンピュータプログラム製品。
【請求項５６】
前記ＣＩＴＩ固有の情報は、前記第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関連する性能データに関する、
請求項３９から５５のいずれかに記載のコンピュータプログラム製品。
【発明の詳細な説明】
【背景技術】
【０００１】
データセンタは、ウェブサイトのホスティング、情報の保管、及び遠隔ユーザへのクラウドベースのコンピューティングソリューションの提供などの様々な機能を実行するコンピュータシステムを収容するための設備である。このような機能をサポートするために、通常、データセンタは、例えば、コンピューティングサーバ、ネットワークスイッチ、及びデータストレージアレイなどの無数のコンポーネントを含む。
【０００２】
通常、データセンタの様々なコンポーネントは、ネットワークに接続される。例えば、コンポーネント同士をローカルエリアネットワーク（ＬＡＮ）によって接続し、これをさらにインターネット又はその他の何らかの広域ネットワーク（ＷＡＮ）に接続することができる。会社などの組織は、異なる地理的位置に複数のデータセンタを所有し、又はこれらをリースしていることが多い。管理者は、インターネットを介して様々なデータセンタのコンポーネントにアクセスするためのソフトウェアを運用することができる。
【０００３】
データセンタは、事前構成されたネットワーク、コンピュータ、ストレージ及びその他のコンポーネントのグループを含む統合システムの形で提供されることもある。当業では、このような統合システムは「コンバージドＩＴインフラストラクチャ」として知られており、本明細書ではこれを「ＣＩＴＩ」という頭字語によって示す。ＣＩＴＩの例としては、テキサス州リチャードソンのＶＣＥ社から市販されているコンバージドＩＴインフラストラクチャシステムのＶｂｌｏｃｋ（商標）ファミリーが挙げられる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＣＩＴＩ向けに開発されたコンピュータソフトウェアは、ＣＩＴＩ及びそのコンポーネントをソフトウェアオブジェクトのグループとして表すためのオブジェクトモデルを含むことができる。１つの例では、ＣＩＴＩが、ＣＩＴＩの様々なネットワーク、コンピュータ、ストレージ及びその他のコンポーネントとＬＡＮなどを介して電子的に交信し、コンポーネントの特徴について問い合わせ、この特徴をＣＩＴＩのオブジェクトモデルインスタンスに記憶する発見動作を実行する。
【０００５】
システム管理者は、例えばＣＩＴＩの構成データ及び性能データを含むＣＩＴＩに関する情報をＣＩＴＩのオブジェクトモデルインスタンスにアクセスすることによって取得するためのソフトウェアツールを運用することができる。性能データは、ＣＰＵ利用率、ストレージの空き容量、ネットワーク活動、及び／又はＣＩＴＩに関するその他の因子に関連することができる。管理者は、時には複数のＣＩＴＩに関する情報を取得したいと望むこともある。例えば、管理者は、多くのＣＩＴＩのうちのどのＣＩＴＩのＣＰＵ利用率が最も低いかを解明するためのソフトウェアツールを運用することができる。この結果、管理者は、追加の作業負荷を受け取るために、ＣＰＵ利用率の最も低いＣＩＴＩを選択することができる。
【０００６】
他には、ＣＩＴＩのオブジェクトモデルインスタンスにアクセスすることによって複数のＣＩＴＩの性能をモニタできるソフトウェアツールもある。例えば、１つのソフトウェアツールは、複数のＣＩＴＩと同時に通信して、性能に変化がないか、又は注意を必要とし得るその他の変化がないか、ＣＩＴＩのオブジェクトモデルインスタンスを継続的にチェックすることができる。
【０００７】
残念ながら、これらのソフトウェアツール、及び／又はこれらが動作するコンピュータは、多くのＣＩＴＩとの通信時に容易に過負荷状態になってしまう。大規模組織は、数百台、或いは数千台の個々のＣＩＴＩを所有又はリースしていることがあり、これらを全てモニタして制御する必要がある。数千台もの異なるＣＩＴＩとの個々の通信セッションを維持すれば、利用可能なコンピュータリソースは急速に消費されてしまう。また、異なるＣＩＴＩから受け取られた情報の比較に関する動作では、管理者側の労力が相当なものになってしまう。従って、複数のＣＩＴＩと通信してこれらのＣＩＴＩから取得された情報を管理する、負担の少ない方法が必要とされている。
【課題を解決するための手段】
【０００８】
複数のコンバージドＩＴインフラストラクチャ（ＣＩＴＩ）との改善された通信技術は、従来のデータセンタ技術とは対照的に、複数のＣＩＴＩのグループ内の１つのＣＩＴＩにアクセスすることにより、そのグループの一部であるいずれかのＣＩＴＩにアクセスすることを含む。ある例では、各ＣＩＴＩが、それぞれのＣＩＴＩに関する情報を記憶している代表的なコンバージドインフラストラクチャコーディネータ（ＣＩＣ）を有する。グループ内のいずれかのＣＩＴＩが、グループ内の他のいずれかのＣＩＴＩに関する情報を求める要求をクライアントから受け取ると、この要求を受け取ったＣＩＴＩのＣＩＣが他のＣＩＴＩのＣＩＣと交信して、この要求された他のＣＩＴＩに関する情報をそのＣＩＣから取得する。このように、クライアントは、グループ内のいずれかのＣＩＴＩに関する情報を取得するために１つのＣＩＴＩのみと通信すればよい。従って、複数のＣＩＴＩとの通信を維持するという面倒なタスクが軽減又は完全に排除される。いくつかの例では、ＣＩＣが、グループ内の複数のＣＩＴＩから集まった情報の集約、フィルタ処理及び／又は分析も行い、従ってクライアントは、単純なコマンドに応答して多くのＣＩＴＩに関連する処理済みデータを受け取ることができる。
【０００９】
いくつかの実施形態は、コンバージドＩＴインフラストラクチャ（ＣＩＴＩ）間の通信方法に関する。ＣＩＴＩは、各々が１又はそれ以上のネットワークスイッチ、コンピュータサーバ及びストレージアレイを含む。この方法は、第１のＣＩＴＩがクライアントから第１の要求を受け取るステップを含む。この第１の要求は、第２のＣＩＴＩに関するＣＩＴＩ固有の情報を求めるものである。ＣＩＴＩ固有の情報は、第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関する。この方法は、第１のＣＩＴＩが、第１の要求を受け取ったことに応答して、ネットワークを介して第２のＣＩＴＩに第２の要求を送るステップも含む。第２の要求は、第２のＣＩＴＩにＣＩＴＩ固有の情報を求めるものである。この方法は、第２の要求に応答して、第１のＣＩＴＩが、ネットワークを介して第２のＣＩＴＩに関するＣＩＴＩ固有の情報を受け取るステップと、第２のＣＩＴＩから受け取ったＣＩＴＩ固有の情報をクライアントに戻すステップとをさらに含む。
【００１０】
他の実施形態は、コンピュータ装置及びコンピュータプログラム製品に関する。実施形態によっては、一箇所で行われる動作に関するものもあれば、コンピュータ環境にわたって（例えば、ネットワークにわたって）分散された動作に関するものもある。
【００１１】
異なる図を通じて同じ要素を同じ参照符号で参照する添付図面に示す以下の本発明の特定の実施形態についての説明から、上述の及びその他の特徴及び利点が明らかになるであろう。図面は必ずしも縮尺通りでなく、むしろ本発明の様々な実施形態の原理を示すことに重点を置いている。
【図面の簡単な説明】
【００１２】
【図１】本明細書の改善を実施できる、各々がコンバージドＩＴインフラストラクチャ（ＣＩＴＩ）を含む複数のデータセンタの環境例のブロック図である。
【図２】例示的なＣＩＴＩ制御局のブロック図である。
【図３】本明細書の改善を用いて生成できる出力例を示す、管理者ツールの一連の部分的なスクリーンショットを示す図である。
【図４】本明細書の改善による、データセンタ内の又は複数のデータセンタにわたる異なるＣＩＴＩ間の通信方法例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態について説明する。このような実施形態は、本発明の様々な特徴及び原理を示すために一例として提供するものであり、本明細書の発明は、開示する特定の実施形態例よりも広範囲に及ぶと理解されたい。
【００１４】
複数のコンバージドＩＴインフラストラクチャ（ＣＩＴＩ）との改善された通信技術は、複数のＣＩＴＩのグループ内の単一のＣＩＴＩにアクセスすることにより、そのグループの一部であるいずれかのＣＩＴＩにアクセスすることを含む。
【００１５】
図１に、本明細書の改善された技術の実施形態を実施できる環境例１００を示す。ここでは、クライアント１１０が、ネットワーク１１６を介して第１のデータセンタ１２０及び第２のデータセンタ１５０に接続することができる。ある例では、データセンタ１２０及び１５０が、互いに地理的に離れている。例えば、第１のデータセンタ１２０が米国に存在し、第２のデータセンタ１５０がインドに存在することもできる。第１のデータセンタ１２０は、第１のＣＩＴＩ１３０（１）及び第２のＣＩＴＩ１３０（２）を含む。第１及び第２のＣＩＴＩ１３０（１〜２）は、データセンタ１２０内でローカルエリアネットワーク（ＬＡＮ）１２２又はその他の何らかのネットワークによって共に接続されている。同様に、第２のデータセンタ１５０は、第３のＣＩＴＩ１３０（３）、第４のＣＩＴＩ１３０（４）及び第５のＣＩＴＩ１３０（５）を含む。第３、第４及び第５のＣＩＴＩ１３０（３〜５）は、ＬＡＮ１５２又はその他の何らかのネットワークによって共に接続されている。２つのデータセンタ１２０及び１５０を示しているが、環境１００はあらゆる数のデータセンタを含むことができ、これらのデータセンタの各々はあらゆる数のＣＩＴＩを含むことができると理解されたい。
【００１６】
通常、ＣＩＴＩ１３０（１〜５）の各々は、事前構成された一群のネットワーク、コンピュータ及びストレージコンポーネント（図示せず）を含む。各ＣＩＴＩ１３０（１〜５）のコンポーネントの多くは、独自のネットワークインターフェイスを有し、従ってそれぞれのＬＡＮに接続して、例えば他のコンポーネント又は１又はそれ以上の制御局と通信することができる。例えば、ＣＩＴＩ１３０（１〜２）のコンポーネントはＬＡＮ１２２に接続し、ＣＩＴＩ１３０（３〜５）のコンポーネントはＬＡＮ１５２に接続する。いくつかの例では、各ＣＩＴＩ内のネットワークアクセス可能コンポーネント（例えば、ネットワーク、コンピュータ及びストレージ）が独自の内部ＬＡＮを形成し、この内部ＬＡＮの各々がルータを介してそれぞれのＬＡＮ（１２２又は１５２）に接続する。
【００１７】
ある例では、ネットワーク１１６が、インターネット、或いは有線及び／又は無線コンポーネントのいずれかの組み合わせを含むことができる他の何らかの広域ネットワーク（ＷＡＮ）である。ある例では、ネットワーク１１６が、ルータ、スイッチ及び／又はその他のネットワークコンポーネントを用いてＬＡＮ１２２及び１５２に接続する。ネットワーク１１６、ＬＡＮ１２２、ＬＡＮ１５２、及びＣＩＴＩ内のあらゆる内部ＬＡＮについては異なるネットワークとして説明しているが、代わりに複数のコンポーネントを有する単一のネットワークと見なすこともできると理解されたい。
【００１８】
ＣＩＴＩ１３０（ｉ）の各々は、ソフトウェア構成として実現できるＣＭマネージャ１３２（ｉ）及びコンバージドインフラストラクチャコーディネータ（ＣＩＣ）１３４（ｉ）を含むことができる。ある例では、ＣＩＴＩマネージャが存在するＣＩＴＩのコンポーネントに対して各ＣＩＴＩマネージャが発見動作を実行し、実際の構成及びコンポーネントの設定を反映するオブジェクトモデルインスタンスを構築する。次に、ＣＩＴＩマネージャは、オブジェクトモデルインスタンスをそれぞれのＣＩＣにローカルに記憶する。クライアント１１０は、（例えば、ネットワークを介して）オブジェクトモデルインスタンスにアクセスし、ＣＩＴＩの構成及び性能についてＣＩＴＩに問い合わせ、いくつかの例ではＣＩＴＩのコンポーネントを制御することができる。
【００１９】
ＣＩＣ１３４（１〜５）は、ＣＩＴＩ１３０（１〜５）の全てのオブジェクトモデルインスタンスから取得したＣＩＴＩ固有の情報を記憶する分散データベースを共に形成する。ＣＩＣ１３４（１〜５）は、各ＣＩＣがいずれかのＣＩＴＩのＣＩＴＩ固有の情報を取得できるよう互いに通信するように構成される。いくつかの例では、ＣＩＣが、環境１００内のいずれかのＣＩＴＩを制御するようにさらに構成される。
【００２０】
ＣＩＴＩは、グループに割り当てることができる。この場合、ＣＩＣ間の通信は、グループメンバのみに制限することができる。例えば、ある会社が、世界中の様々なデータセンタにおいてＣＩＴＩを運用し、この会社が運用している全てのＣＩＴＩを含むグループを定めることができる。或いは、ＣＩＴＩが実行する特定のクラウドベースコンピュータアプリケーションに基づいてグループを形成することもできる。同じアプリケーションを実行するＣＩＴＩは、同じグループのメンバとして構成することができ、異なるアプリケーションを実行するＣＩＴＩは、他のグループのメンバとして構成することができる。グループの階層を実装し、例えばある会社が運用する全てのＣＩＴＩを上位グループの一部とする一方で、この上位グループのＣＩＴＩを、用途、地形、ＣＩＴＩの構成、及び／又はその他のいずれかの好適な因子に基づいて異なる下位グループに割り当てることもできる。異なるグループ内の情報へのアクセスは、クライアントの特権に基づいて制限することができる。従って、上位の管理者は、上位グループ及びその全てのメンバにアクセスすることができ、下位の職員は、特定のサブグループへのアクセスに制限することができる。ある例では、ＣＩＴＩ１３０（１〜５）のいずれかのグループメンバが、それぞれのＣＩＴＩのＣＩＣ内で構成される。ここでは、例示を目的として、全てのＣＩＴＩ１３０（１〜５）から成る単一のグループのみを検討する。
【００２１】
動作時には、クライアント１１０が、ネットワークを介して要求１１２を発行する。要求１１２は、ＣＩＴＩ１３０（１）などの特定のＣＩＴＩによって受け取られる。ある例では、要求１１２が、環境１００内のいずれかのＣＩＴＩに関する取得すべきＣＩＴＩ固有の情報を指定する。ＣＩＴＩ固有の情報は、特定のＣＩＴＩのいずれかの１又は複数のコンポーネントに関する、或いはＣＩＴＩ全体に関する構成及び／又は性能情報を含む。要求１１２がＣＩＴＩ１３０（１）に、すなわち要求１１２を受け取ったＣＩＴＩに関連する場合には、このＣＩＴＩ１３０（１）のＣＩＴＩマネージャ１３２（１）が要求１１２を処理する。ＣＩＴＩマネージャ１３２（１）は、要求されたＣＩＴＩ固有の情報を取得するようにローカルオブジェクトモデルインスタンスに問い合わせ、クライアント１１０に応答１１４を返信して要求１１２を満たす。
【００２２】
しかしながら、要求１１２が、要求１１２を受け取ったＣＩＴＩとは異なるＣＩＴＩに関連する場合には、ＣＩＴＩマネージャではなくＣＩＣ１３４（１）が要求１１２を処理する。ＣＩＣ１３４（１）は、異なるＣＩＣ１３４間で形成された分散データベースに問い合わせる。ある例では、ＣＩＣ１３４（１）が、要求１１２が関連しているＣＩＴＩのＣＩＣに要求１１２を転送する。次に、この転送された要求を受け取ったＣＩＣは、このＣＩＣがローカルに記憶している分散データベースの一部に問い合わせる。その後、このＣＩＣは、ＣＩＣ１３４（１）に、すなわち要求１１２を最初に受け取ったＣＩＴＩのＣＩＣに問い合わせ結果を戻す。ＣＩＣ１３４（１）は、この問い合わせ結果を処理し、処理済みの結果を応答１１４の形でクライアント１１０に戻す。
【００２３】
いくつかの例では、ＣＩＣが、複数のＣＩＴＩに関連することができる上位サービスを実行する。例えば、ＣＩＣは、単一の要求１１２に応答して、複数のＣＩＴＩからＣＩＴＩ固有の情報を収集し、情報を分析し、この情報をフィルタ処理し、及び／又はこの情報を集約して、ＣＩＴＩ全体、データセンタ全体及び／又はデータセンタのグループに関連する上位ダイジェスト結果を提供することができる。
【００２４】
１つの特定例では、クライアントの要求１１２を満たすために、複数のＣＩＴＩからＣＩＴＩ固有の情報を取得する必要がある。例えば、要求１１２は、ＣＰＵ利用率が最も低いＣＩＴＩを識別するように求めることができる。この要求１１２をＣＩＴＩ１３０（１）などの１つのＣＩＴＩが受け取る。ＣＩＣ１３４（１）は、分散データベースの自身の部分に問い合わせてＣＩＴＩ１３０（１）のＣＰＵ利用率を取得し、他のＣＩＴＩの各々と交信して、これらのＣＩＴＩのＣＩＣに同様の問い合わせを行うように指示する。各ＣＩＣは、問い合わせ結果をＣＩＣ１３４（１）に戻す。次に、ＣＩＣ１３４（１）は、戻された結果を分析してＣＰＵ利用率が最も低いＣＩＴＩを識別する。その後、ＣＩＣ１３４（１）は、ＣＰＵ利用率が最も低いＣＩＴＩを識別した応答１１４をクライアント１１０に戻す。
【００２５】
環境１００内のあらゆるＣＩＴＩは、環境１００内のいずれかのＣＩＴＩ又は全てのＣＩＴＩに関するＣＩＴＩ固有の情報のためのアクセスポイントとしての役割を果たすことができると理解されたい。従って、クライアント１１０は、数多くのＣＩＴＩと個別に通信してこれらに関する集約情報を取得し、又はこれらの個々の動作及び状態をモニタする必要があるという重荷を背負わなくて済むようになる。むしろ、ＣＩＣで形成される分散データベース内で通信が効率的に処理される。通信の負担がクライアント１１０からデータセンタに移されてその処理が容易になるだけでなく、ＣＩＣ間における通信の性質が本質的に効率的になる。例えば、複数のＣＩＴＩに関する情報を求める要求１１２を受け取ったＣＩＴＩ上のＣＩＣが他のＣＩＴＩとの通信を個別に処理すると説明したが、これはほんの一例にすぎない。別の構成では、異なるＣＩＴＩ上のＣＩＣ同士がゴシップネットワーク内で通信し、要求１１２を受け取ったＣＩＴＩのＣＩＣに様々な経路を通じて情報を注ぎ込む。従って、多くのＣＩＴＩと通信するデータ処理要求の処理能力が、クライアント１１０よりもデータセンタの方が高いだけでなく、ＣＩＣも、要求された情報を効率的に収集して戻すように互いに協調して動作する。
【００２６】
図２に、ＣＩＴＩ１３０（１〜５）のいずれかに含めることができる、又はこのようなＣＩＴＩに関連して別様に設けることができる例示的な制御局２１０を示す。図示のように、制御局２１０は、１又はそれ以上の処理チップ及び／又はアセンブリなどのプロセッサの組と、１又はそれ以上のネットワークインターフェイスカード（ＮＩＣ）などのネットワークインターフェイス２２２と、メモリ２３０とを含む。メモリ２３０は、例えば、ＲＡＭなどの揮発性メモリ、並びに１又はそれ以上のＲＯＭ、ディスクドライブ及び／又は電子フラッシュドライブなどの不揮発性メモリの両方を含む。プロセッサの組２２０及びメモリ２３０は、本発明で説明する様々な方法及び機能を実行するように構成され配置された制御回路を共に形成する。
【００２７】
メモリ２３０は、ＣＩＴＩマネージャ１３２及びＣＩＣ１３４を含む数多くのソフトウェア構成を記憶する。ＣＩＴＩマネージャ１３２及びＣＩＣ１３４は、それぞれ図１のＣＩＴＩマネージャ１３２（１〜５）及びＣＩＣ１３４（１〜５）を表す。ソフトウェア構成１３２及び１３４は、実行可能命令の形で実現される。プロセッサの組２２０は、実行可能命令を実行した時にソフトウェア構成の動作を実行するようにされる。特定のソフトウェア構成を具体的に図示し説明しているが、通常、メモリ２３０は、オペレーティングシステム、様々なアプリケーション、プロセス及びデーモンなどの、単純化のために示していないその他の非常に多くのソフトウェア構成を含むと理解されたい。
【００２８】
ＣＩＴＩマネージャ１３２及びＣＩＣ１３４は、単一のコンピュータ上に存在するように示しているが、これは単なる設計事項にすぎない。これとは別に、１つのコンピュータ上でＣＩＴＩマネージャ１３２をホストし、別のコンピュータ上でＣＩＣ１３４をホストすることもできる。
【００２９】
ＣＩＴＩマネージャ１３２は、ローカルなＣＩＴＩに関する情報を管理して維持し、要求に応じてこの情報をクライアントに提供することができる。図２に示すように、ＣＩＴＩマネージャ１３２は、ウェブサービス２４２、発見オーケストレータ２４４、システムオブジェクトインスタンス２４６、及びＣＩＴＩサービス２４８を含む。ある例では、ウェブサービス２４２が、ネットワークインターフェイス２２２を通じてネットワークを介して要求１１２などの要求を受け取り、この要求を処理して応答１１４などの応答を提供するためのＲＥＳＴ（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）インターフェイスを提供する。周知のように、ＲＥＳＴ要求は、ＨＴＴＰプロトコルを介して転送されるＵＲＩ（ユニフォーム・リソース・アイデンティファイア）の形で発行される。ＲＥＳＴ応答は、ＸＭＬの形で提供される。
【００３０】
発見オーケストレータ２４４は、制御局２１０が存在するＣＩＴＩに対して発見動作を実行する。発見オーケストレータ２４４は、最初にＣＭが実行された時に、ＣＩＴＩのネットワーク、コンピュータ、ストレージ及びその他のコンポーネントの様々な識別情報及び特徴を識別して取得し、発見された情報をシステムオブジェクトインスタンス２４６に記憶するための初期発見動作を実行する。発見オーケストレータ２４４は、初期発見動作後に、ＣＩＴＩのいずれかネットワーク、コンピュータ、ストレージ又はその他のコンポーネントの構成変更（例えば、追加、削除、更新など）に応答してＣＩＴＩの特定のコンポーネントに選択的に問い合わせるための後続発見動作を実行することができる。発見オーケストレータ２４４は、いくつかのコンポーネントについて、ＣＰＵ利用率、空きディスク容量、ネットワークトラフィック、及びその他の性能データに関する新たな情報などの新情報を求めてこれらのコンポーネントに定期的に問い合わせる。発見オーケストレータ２４４は、あらゆる最新情報をシステムオブジェクトインスタンス２４６に記憶する。
【００３１】
システムオブジェクトインスタンス２４６は、様々な形を取ることができる。１つの例では、システムオブジェクトインスタンス２４６が、Ｊａｖａ（登録商標）オブジェクトの組の形を取る。別の例では、システムオブジェクトインスタンス２４６が、システムオブジェクトインスタンス２４６を不揮発性メモリに恒久的に記憶するＰｏｓｔｒｅＳＱＬデータベースなどのデータベースの形を取る。
【００３２】
ＣＩＴＩサービス２４８は、システムオブジェクトインスタンス２４６に記憶されている発見された情報を用いてクライアントにサービスを提供する。ＣＩＴＩサービス２４８は、例えばシステム正常性指標の生成、及び高度なクエリへの応答を含むことができる。
【００３３】
ＣＩＣ１３４は、ローカルなＣＩＴＩ情報を処理するＣＩＴＩマネージャ１３２とは対照的に、他のＣＩＴＩとの協調機能を実行する。ある例では、ＣＩＣ１３４が、ウェブサービス２５２、マルチＣＩＴＩサービス２５４、及び分散データベースコンポーネント２５６を含む。ウェブサービス２５２は、（ローカルなＣＩＴＩ以外の）他のＣＩＴＩに関連する情報にアクセスするための、及び複数のＣＩＴＩに関連する情報にアクセスするためのＲＥＳＴインターフェイスを提供する。ある例では、ＣＩＣ１３４のウェブサービス２５２のＲＥＳＴインターフェイスが、ＣＩＴＩマネージャ１３２のウェブサービス２４２をサブセットとして含む。従って、ＣＩＣのＲＥＳＴインターフェイスは、他の又は複数のＣＩＴＩに関する要求に応答できる一方で、ＣＩＴＩマネージャが個々のＣＩＴＩに関する要求を受け取って応答する際に使用するＲＥＳＴ構成と同じＲＥＳＴ構成を使用することができる。
【００３４】
分散データベースコンポーネント２５６は、分散データベースコンポーネント２５６が存在するＣＩＴＩに関する情報を記憶し、ＣＩＣがそのローカルなＣＩＴＩに関する情報を分散データベースに提供するためのサーバとして動作できるようにする。従って、他のＣＩＴＩ内のＣＩＣは、分散データベースコンポーネント２５６からローカルなＣＩＴＩに関する情報を取得することができる。
【００３５】
任意に、分散データベースコンポーネント２５６は、外部ＣＩＴＩデータ２５８を記憶する。外部ＣＩＴＩデータ２５８は、１又はそれ以上の他のＣＩＴＩから取得されたＣＩＴＩ固有の情報を含む。他のＣＩＴＩは、環境１００内の他のいずれかのＣＩＴＩとすることができる。ＣＩＴＩに関するデータは、たとえＣＩＴＩ自体がオフラインの時にも分散データベースを通じて取得できるので、１つのＣＩＴＩのＣＩＴＩ固有の情報を別のＣＩＴＩに記憶することによってＣＩＴＩデータの高可用性が促される。
【００３６】
マルチＣＩＴＩサービス２５４は、他のＣＩＴＩ及び複数のＣＩＴＩからのデータに対してデータ処理を実行する。マルチＣＩＴＩサービス２５４は、サブセットとしてＣＩＴＩサービス２４８を含むことができ、このＣＩＴＩサービス２４８は、ローカルなＣＩＴＩ向けのサービスを行うのと同じ方法で他のＣＩＴＬ向けのサービスを行う。マルチＣＩＴＩサービス２５４は、複数のＣＩＴＩからのデータに関与する複雑な要求１１２に対する応答１１４を提供するように、複数のＣＩＴＩから受け取ったデータの集約、フィルタ処理及び分析を行うためのサービスも含む。非常に多くのサービスを提供することができる。わずかな例として、以下を挙げることができる。
・ＣＰＵ利用率の最も低いＣＩＴＩの識別、
・空き記憶容量の最も多いＣＩＴＩの識別、
・ＶＭＡＸストレージアレイを含む全てのＣＩＴＩのリストアップ、
・インドに存在して特定のアプリケーションを実行する全てのＣＩＴＩのリストアップ、及び
・特定のデータセンタの総計算容量の計算。
【００３７】
動作時には、発見オーケストレータ２４４が発見手順を実行し、発見されたＣＩＴＩ固有の情報をシステムオブジェクトインスタンス２４６に投入する。次に、発見オーケストレータ２４４は、発見（初期発見動作又は更新発見動作のいずれか）が終了した旨を示すメッセージ２６０を分散データベースコンポーネント２５６に送る。これに応答して、分散データベースコンポーネント２５６は、新たに発見された情報を求める１又はそれ以上のメッセージ２７０をＣＩＴＩマネージャ２４２のウェブサービス２４２に送る。これらの（単複の）メッセージ２７０は、各々がＵＲＩを指定するあらゆる数のＲＥＳＴ要求を含むことができ、ウェブサービス２４２は、システムオブジェクトインスタンス２４６に問い合わせを行って要求されたデータを取得するように構成される。データは、１又はそれ以上のＲＥＳＴ応答２８０を介してＸＭＬの形で分散データベースコンポーネント２５６に戻される。分散データベースコンポーネント２５６は、ＲＥＳＴ応答を受け取り、これらに含まれるＣＩＴＩ固有のデータを記憶する。高可用性オプションが実施されている場合、分散データベースコンポーネント２５６は、ローカルなＣＩＴＩの受け取ったＣＩＴＩ固有の情報の一部又は全部を１又はそれ以上の他のＣＩＴＩ（すなわち、他のＣＩＴＩの外部ＣＩＴＩデータ２５８）に記憶するように指示することもできる。
【００３８】
分散データベースコンポーネント２５６は、ローカルなＣＩＴＩ固有の情報を投入されている場合、分散データベース内の他のＣＩＴＩのサーバとして機能することもできる。このようにして、すなわちそれぞれのローカルなＣＩＴＩ固有の情報が全てのＣＩＴＩの分散データベースコンポーネント２５６に投入されると、分散データベースコンポーネント２５６によって形成される分散データベースは、いずれかのＣＩＴＩにおいて受け取られた、他のいずれかのＣＩＴＩに関する情報を求める要求１１２に対応するように動作することができる。高可用性オプションが実施されている場合、あらゆるＣＭに関するＣＩＴＩ固有の情報は、たとえそのＣＩＴＩが一時的にオフラインであっても利用可能な状態を保つことができる。
【００３９】
１つの例では、ウェブサービス２４２及び２５２が独立して動作する。例えば、いずれかの要求１１２に応答して、（ローカルなＣＩＴＩの場合には）ウェブサービス２４２が要求１１２を受け取って応答１１４を生成し、或いは（遠隔の及び／又は複数のＣＩＴＩの場合には）ウェブサービス２５２が要求１１２を受け取って応答１１４を生成する。別の例（図示せず）では、ウェブサービス２４２及び２５２が、ローカルなＣＩＴＩ、別のＣＩＴＩ又は複数のＣＩＴＩに関する要求１１２を受け取り、システムオブジェクトインスタンス２４６及び／又は分散データベースコンポーネント２５６と通信して、クライアント１１０に応答１１４を戻す単一のウェブサービスの組として共に提供される。この例の変形として、分散データベースコンポーネント２４６は、システムオブジェクトインスタンス２４６のコピーしかローカルなＣＩＴＩに記憶することができず、システムオブジェクトインスタンス２４６の特定の構成（例えば、Ｊａｖａ（登録商標）オブジェクト又はＰｏｓｔｇｒｅＳＱＬデータベース）を提供する必要はない。
【００４０】
分散データベースは当業で周知であり、例えば、Ｈａｄｏｏｐ、Ｃａｓｓａｎｄｒａ、Ｗｉｎｄｏｗｓ（登録商標）  Ｃｌｕｓｔｅｒ及びＰｏｓｔｇｒｅＳＱＬが挙げられる。このようないずれかの分散データベース技術を用いて、分散データベースコンポーネント２５６、及びこれらの間で通信するためのプロトコルを提供することができる。
【００４１】
ある例では、特定のＣＩＴＩが、使用する特定の分散データベースソリューションのプロトコルによって定められた形で、分散データベースに対して自動的に参加及び／又は離脱することができる。１つの例では、分散データベースコンポーネント２５６が存在する制御局２１０が、オープンポートを用いて分散データベースへの自動登録を実行するように構成される。ＣＩＴＩがオンライン状態の時には、その分散データベースコンポーネント２５６がオープンポートに信号を送信する。この信号は、他のＣＩＴＩ上の他の分散データベースコンポーネント２５６によって受け取られ、これらの分散データベースコンポーネント２５６が新たなメンバを認識して分散データベースコンポーネントの分散データベース構造に組み込む。この又はその他の何らかの自動登録プロトコルを用いて、ＣＩＴＩを他のＣＩＴＩに自動的に参加してＣＩＴＩがオンライン状態になったら分散データベースを形成するように（例えば、工場において）事前構成することができる。初期構成は、例えば同じ会社に属するＣＩＴＩ同士が互いを発見することができ、異なる会社に属するＣＩＴＩ同士が互いを発見したり、又は互いに通信したりできないように、グループのメンバ及びセキュリティ設定を規定することができる。
【００４２】
図３に、クライアント１１０上で動作して環境１００内の特定のＣＩＴＩと相互作用する管理者ツールの一連のスクリーンショット例を示す。ここでは、クライアント１１０が、ＣＩＴＩ１（例えば、１３０（１））の制御局２１０との間に通信セッションを確立している。スクリーンショット３１０は、初期表示を示している。各下線付きの要素は、ユーザがクリックして掘り下げることができる、及び／又はそれぞれの要素に関する追加情報を取得できるリンクである。ユーザは、「ＣＩＴＩ１」のリンク又は「全てのＣＩＴＩ」のリンクをクリックすることができる。
【００４３】
ユーザが、「ＣＩＴＩ１」のリンクをクリックし、すなわち既に管理者ツールが通信しているＣＩＴＩに関する情報を取得する場合、スクリーン３１０をスクリーン３２０に置き換える動作３１２が行われる。ある例では、ユーザが「ＣＩＴＩ１」のリンクをクリックしたことに応答して、管理者ツールが、要求１１２、すなわちＣＩＴＩ１のＣＩＴＩマネージャ１３２のウェブサービス２４２によって認識される特定のＵＲＩを指定するＲＥＳＴ要求を生成する。ウェブサービス２４２は、このＵＲＩを処理し、これを用いてシステムオブジェクトインスタンス２４６内の特定のレコードの組を読み出す。次に、ウェブサービス２４２は、応答１１４、すなわちＭＡＬＬを提供するＲＥＳＴ応答を戻す。管理者ツールはＸＭＬを解釈し、このＸＭＬが含んでいるコンテンツ、すなわちＣＩＴＩ１が「コンピュータブレード１」、「ネットワークブレード１」及び「ストレージアレイ１」を含んでいる旨を表示する。単純にするために３つのコンポーネントしか示していないが、これらのコンポーネントは一般的に示すものである。
【００４４】
次に、ユーザは、「全てのＣＩＴＩ」を示すリンクをクリックすることができ、この場合、アクション３２２が実行されてスクリーン３２０がスクリーン３３０に置き換えられる。ある例では、管理者ツールが、ＣＩＴＩ１のＣＩＣ１３４のウェブサービス２５２によって認識される特定のＵＲＩを指定する別のＲＥＳＴ要求１１２を生成する。ウェブサービス２５２は、このＵＲＩを処理し、これを用いて分散データベースコンポーネント２５６から特定のレコードの組を読み出す。要求された情報が、ＣＩＴＩ１の分散データベースコンポーネント２５６にローカルに記憶されていない場合、ＣＩＴＩ１の分散データベースコンポーネント２５６は、１又はそれ以上の他のＣＩＴＩと交信して、要求された情報をこれらのデータベースコンポーネントから取得する。ＣＩＴＩ１の分散データベースコンポーネント２５６は、他のＣＩＴＩから情報を受け取り、この情報をウェブサービス２５２に提供し、このウェブサービス２５２がＸＭＬ応答２１４として情報をパッケージ化する。この応答２１４がクライアント１１０に送られる。管理者ツールは応答２１４のＸＭＬを解釈し、この応答２１４が含んでいるコンテンツ、この場合、複数のデータセンタ（ＤＣ１及びＤＣ２）及びこれらのコンポーネントに関する情報を表示する。ユーザは、他の情報を取得するために引き続きリンクをクリックすることができ、これによって上述した動作と同様の動作が行われるようになる。
【００４５】
図４に、コンバージドＩＴインフラストラクチャ（ＣＩＴＩ）間で通信するための処理４００を示す。処理４００は、データセンタ環境１００に関連して実行することができる。通常、処理４００は、制御局２１０のメモリ２３０内に存在してプロセッサの組２２０によって実行される、図１及び図２に関連して説明したソフトウェア構成によって行われる。処理４００の様々な動作は、あらゆる好適な形で順序付けることができる。従って、たとえ図示の実施形態では順番に動作を示していても、図示の順序とは異なる順序で動作を行う実施形態を構成することができ、いくつかの動作を同時に行うことを含むこともできる。
【００４６】
ステップ４１０において、第１のＣＩＴＩが、クライアントから第１の要求を受け取る。第１の要求は、第２のＣＩＴＩに関するＣＩＴＩ固有の情報を求めるものである。ＣＩＴＩ固有の情報は、第２のＣＩＴＩのネットワークスイッチ、コンピュータサーバ及びストレージアレイのうちの少なくとも１つに関する。例えば、ＣＩＴＩ１３０（１）などの第１のＣＩＴＩのウェブサービス２５２が、クライアント１１０からＲＥＳＴ要求１１２を受け取る。ＲＥＳＴ要求１１２は、ＣＩＴＩ１３０（２）などの第２のＣＩＴＩに関するＣＩＴＩ固有の情報を求めるものである。
【００４７】
ステップ４１２において、第１のＣＩＴＩが第２の要求を送る。第２の要求は、第１の要求を受け取ったことに応答してネットワークを介して第２のＣＩＴＩに送られる。第２の要求は、第２のＣＩＴＩにＣＩＴＩ固有の情報を求めるものである。例えば、第１のＣＩＴＩ１３０（１）の分散データベースコンポーネント２５６が、第２のＣＩＴＩ１３０（２）に関する情報を求める要求を、ネットワーク（ここでは、ＬＡＮ１２２）を介して第２のＣＩＴＩ１３０（２）の分散データベースコンポーネント２５６に送る。
【００４８】
ステップ４１４において、第２の要求に応答して、第１のＣＩＴＩが、ネットワークを介して第２のＣＩＴＩに関するＣＩＴＩ固有の情報を受け取る。例えば、第１のＣＩＴＩ１３０（１）の分散データベースコンポーネント２５６が、第２のＣＩＴＩ１３０（２）の分散データベースコンポーネント２５６から取得された情報を、ネットワークを介して受け取る。
【００４９】
ステップ４１６において、第２のＣＩＴＩから受け取ったＣＩＴＩ固有の情報をクライアントに戻す。例えば、第１のＣＩＴＩ１３０（１）のウェブサービス２５２が、要求された情報を含むＲＥＳＴ応答１１４（ＸＭＬ）をクライアント１１０に送る。
【００５０】
複数のコンバージドＩＴインフラストラクチャ（ＣＩＴＩ）と通信するための改善された技術について説明した。この改善された技術は、グループ内の単一のＣＩＴＩにアクセスすることにより、複数のＣＩＴＩのグループの一部であるいずれかのＣＩＴＩにアクセスすることを含む。このように、クライアントは、グループ内のいずれかのＣＩＴＩに関する情報を取得するために単一のＣＩＴＩとのみ通信すればよい。従って、複数のＣＩＴＩとの通信を維持するという面倒なタスクが軽減又は完全に排除される。ＣＩＣは、複数のＣＩＴＩから収集された情報の集約、フィルタ処理及び／又は解釈を行うこともでき、これによってクライアントは、単純なコマンドに応答して多くのＣＩＴＩに関する処理済みデータを受け取ることが可能になる。
【００５１】
本文書全体を通じて使用する「備える（ｃｏｍｐｒｉｓｉｎｇ）」、「含む（ｉｎｃｌｕｄｉｎｇ）」及び「有する（ｈａｖｉｎｇ）」という単語は、ある物のいくつかの項目、ステップ、要素又は態様を非制限的な形で記述するものである。また、本明細書で使用する「組」という単語は、逆の明確な記述を行っていない限り、ある物の１つ又はそれ以上を意味する。本明細書ではいくつかの実施形態を開示したが、これらの実施形態はほんの一例として示すものであり、本発明はこれらの特定の実施形態に限定されるものではないと理解されたい。
【００５２】
いくつかの実施形態について説明したが、数多くの別の実施形態又は変形例を実施することもできる。例えば、各ＣＩＴＩ１３０（ｉ）については、それぞれのＣＩＣ１３４（ｉ）を含むように図示し説明した。しかしながら、これはほんの一例にすぎない。これとは別に、ＣＩＣは、データセンタごとに１つ、或いは特定のネットワーク又はサブネット上のＣＩＴＩの組ごとに１つなどの、あらゆる好適な構成で提供することができる。この構成では、各ＣＩＣが、それぞれの組内の全てのＣＩＴＩに関するＣＩＴＩ固有の情報を含み、他のＣＩＴＩの組を表す他のＣＩＣと協調する。
【００５３】
さらに、本明細書の特定の実施形態に関連する特徴についても図示し説明したが、このような特徴は、開示する実施形態及びその変形例のいずれに含めることもできる。従って、いずれかの実施形態に関連して開示した特徴は、本明細書で明示しているか否かに関わらず、他のいずれかの実施形態の変形例として含めることもできると理解されたい。
【００５４】
さらに、改善又はその一部は、磁気ディスク、磁気テープ、コンパクトディスク、ＤＶＤ、光ディスク、フラッシュメモリ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、及び（一例として図４の媒体４５０として示す）同様のものなどの非一時的コンピュータ可読記憶媒体として具体化することができる。複数のコンピュータ可読媒体を使用することもできる。これらの（１又は複数の）媒体には、１又はそれ以上のコンピュータ又はその他のプロセッサ上で実行された時に本明細書で説明した様々な処理を実施する方法を実行する命令を符号化することができる。このような（１又は複数の）媒体は、製造の物品又は機械と見なすことができ、１つの機械から別の機械に搬送することもできる。
【００５５】
従って、当業者であれば、本発明の範囲から逸脱することなく、本明細書で開示した実施形態に形態及び詳細の様々な変更を行うことができると理解するであろう。
【符号の説明】
【００５６】
１００  環境
１１０  クライアント
１１２  要求
１１４  応答
１１６  ネットワーク
１２０  データセンタ１
１２２  ローカルエリアネットワーク（ＬＡＮ）
１３０  ＣＩＴＩ
１３２  ＣＩＴＩマネージャ
１３４  ＣＩＣ
１５０  データセンタ２
１５２  ローカルエリアネットワーク（ＬＡＮ）
【図１】
2016518641.tif 000003
【図２】
2016518641.tif 000004
【図３】
2016518641.tif 000005
【図４】
2016518641.tif 000006
【国際調査報告】
2016518641.tif 000007
2016518641.tif 000008