(57)【要約】【課題】提供するログの範囲を拡充可能にすること。【解決手段】記憶部１ａは、仮想マシンの識別情報と仮想マシンを動作させる物理マシン上のハイパーバイザのアドレスと物理マシンに関連するハードウェアのアドレスとの対応を示す管理情報Ｔ１を記憶する。処理部１ｂは、仮想マシン２ｂの識別情報が指定されると、管理情報Ｔ１に基づいて、ハイパーバイザ２ａおよびハードウェアに関する第１のログＬ１を取得する。処理部１ｂは、第１のログＬ１に含まれる特定の情報をハイパーバイザ２ａに対応する所定のノード識別子に置換した第２のログＬ２を生成して記憶部１ａに格納する。処理部１ｂは、ノード識別子に基づいて記憶部１ａに記憶された第２のログＬ２を出力する。【選択図】図１
2019067288.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンの識別情報と前記仮想マシンを動作させる物理マシン上のハイパーバイザのアドレスと前記物理マシンに関連するハードウェアのアドレスとの対応を示す管理情報を記憶する記憶部と、
前記識別情報が指定されると、前記管理情報に基づいて、前記ハイパーバイザおよび前記ハードウェアに関する第１のログを取得し、前記第１のログに含まれる特定の情報を前記ハイパーバイザに対応する所定のノード識別子に置換した第２のログを生成して前記記憶部に格納し、前記ノード識別子に基づいて前記記憶部に記憶された前記第２のログを出力する処理部と、
を有するログ管理装置。
【請求項２】
前記特定の情報は、前記ハイパーバイザに関する第１の設定情報と、前記ハードウェアに関する第２の設定情報とを含み、
前記処理部は、前記第１のログのうち、前記第１の設定情報を前記ハイパーバイザの第１のノード識別子に置換し、前記第２の設定情報を前記ハードウェアの第２のノード識別子に置換する、
請求項１記載のログ管理装置。
【請求項３】
前記第１の設定情報は、前記ハイパーバイザのアドレスおよび前記ハイパーバイザへのアクセスに用いられるアカウントの情報の両方または何れか一方であり、
前記第２の設定情報は、前記ハードウェアのアドレスおよび前記ハードウェアへのアクセスに用いられるアカウントの情報の両方または何れか一方である、
請求項２記載のログ管理装置。
【請求項４】
前記処理部は、前記第１のノード識別子を前記ハイパーバイザから取得し、前記ハイパーバイザのアドレスに関連付けて前記記憶部に格納し、前記第２のノード識別子を前記ハードウェアから取得し、前記ハードウェアのアドレスに関連付けて前記記憶部に格納する、請求項２または３記載のログ管理装置。
【請求項５】
前記処理部は、前記ハイパーバイザに関する第１のデータ形式のログと前記ハードウェアに関する第２のデータ形式のログとを第３のデータ形式のログに変換することで、前記第１のログを取得する、請求項１乃至４の何れか１項に記載のログ管理装置。
【請求項６】
前記処理部は、端末装置により前記識別情報が指定されると、前記ノード識別子を前記端末装置に送信し、前記ノード識別子の送信後に前記第２のログの前記記憶部への格納完了の通知を前記端末装置に送信し、前記通知に応じて前記端末装置から前記ノード識別子を受信すると、前記ノード識別子に応じた前記第２のログを前記端末装置に出力する、請求項１記載のログ管理装置。
【請求項７】
ハイパーバイザを実行し、仮想マシンを動作させる情報処理装置と、
前記仮想マシンの識別情報と前記ハイパーバイザのアドレスと前記情報処理装置に関連するハードウェアのアドレスとの対応を示す管理情報を記憶する記憶部を有し、前記識別情報が指定されると、前記管理情報に基づいて、前記ハイパーバイザおよび前記ハードウェアに関する第１のログを取得し、前記第１のログに含まれる特定の情報を前記ハイパーバイザに対応する所定のノード識別子に置換した第２のログを生成して前記記憶部に格納し、前記ノード識別子に基づいて前記記憶部に記憶された前記第２のログを出力するログ管理装置と、
を有する情報処理システム。
【請求項８】
仮想マシンの識別情報が指定されると、前記識別情報と前記仮想マシンを動作させる物理マシン上のハイパーバイザのアドレスと前記物理マシンに関連するハードウェアのアドレスとの対応を示す管理情報に基づいて、前記ハイパーバイザおよび前記ハードウェアに関する第１のログを取得し、
前記第１のログに含まれる特定の情報を前記ハイパーバイザに対応する所定のノード識別子に置換した第２のログを生成して記憶部に格納し、
前記ノード識別子に基づいて前記記憶部に記憶された前記第２のログを出力する、
処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はログ管理装置、情報処理システムおよびプログラムに関する。
【背景技術】
【０００２】
情報処理の分野では、物理的なコンピュータ（物理マシンや物理ホストと呼ぶことがある）上で、複数の仮想的なコンピュータ（仮想マシンや論理ホストと呼ぶことがある）を動作させる仮想化技術が利用されている。各仮想マシン上では、ＯＳ（Operating System）などのソフトウェアを実行できる。仮想化技術を利用する物理マシンは、複数の仮想マシンを管理するためのソフトウェアを実行する。例えば、ハイパーバイザと呼ばれるソフトウェアが、ＣＰＵ（Central Processing Unit）の処理能力やＲＡＭ（Random Access Memory）の記憶領域を、演算のリソースとして複数の仮想マシンに割り振ることがある。
【０００３】
ところで、情報処理システムの運用では、情報処理システムを構成するソフトウェアやハードウェアのログが取得されることが多い。ログは、システムの管理者などによる運用状況の確認や障害解析などに用いられる。
【０００４】
例えば、クラウドベースのサービスを提供するシステムにおいて、マルチテナント共用プールにおけるリソースのログ情報の集約および正規化を行い、当該ログ情報を構文解析することでトランザクションに関連するテナントを識別する装置の提案がある。この装置は、一組のトランザクションのそれぞれに関して、当該テナントおよび特定のトランザクションに関連するログ・データに、テナント別の識別子を示す注釈を付ける。これにより、ログ・データが、特定のテナント／顧客に適切に関連していることを保証する。
【０００５】
なお、障害公開ノードによる障害公開メッセージを受信すると、障害公開メッセージによる障害情報が、障害購読ノードにより購読が要求される障害情報である場合に、障害通知メッセージを生成して障害購読ノードに通知する装置の提案もある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２０１４−５０２７６７号公報
【特許文献２】特表２０１７−５０３４２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
複数のテナント（マルチテナント）に対して仮想マシンの利用環境を提供するシステムでは、システムを運用するサービス提供者から各テナントに対して提供可能なログが制限され得る。例えば、各テナントに対して仮想マシン上のＯＳのログの閲覧は許容されるが、仮想マシンを動作させるハイパーバイザやハードウェア（物理マシン、ネットワーク機器およびストレージなど）といった仮想基盤のログの閲覧は許容されないことが多い。仮想基盤のログには、悪用されたり誤用されたりするとシステムの運用に深刻な影響を及ぼす情報も含まれるためである。
【０００８】
一方、テナント側の立場からすると、閲覧可能なログが制限されているために、テナント側でのログ解析により分析可能な範囲が限られてしまうことになる。例えば、テナント側の管理者が障害の原因究明を行う際、ハイパーバイザやハードウェアの状況を確認する場合に、サービス提供者に問合せを行うことも考えられるが、確認のために時間がかかり、迅速な障害対応を行えないことがある。
【０００９】
１つの側面では、本発明は、提供するログの範囲を拡充可能にすることを目的とする。
【課題を解決するための手段】
【００１０】
１つの態様では、ログ管理装置が提供される。ログ管理装置は、記憶部と処理部とを有する。記憶部は、仮想マシンの識別情報と仮想マシンを動作させる物理マシン上のハイパーバイザのアドレスと物理マシンに関連するハードウェアのアドレスとの対応を示す管理情報を記憶する。処理部は、識別情報が指定されると、管理情報に基づいて、ハイパーバイザおよびハードウェアに関する第１のログを取得し、第１のログに含まれる特定の情報をハイパーバイザに対応する所定のノード識別子に置換した第２のログを生成して記憶部に格納し、ノード識別子に基づいて記憶部に記憶された第２のログを出力する。
【発明の効果】
【００１１】
１つの側面では、提供するログの範囲を拡充できる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態のログ管理装置を示す図である。
【図２】第２の実施の形態の情報処理システムの例を示す図である。
【図３】管理サーバのハードウェア例を示す図である。
【図４】管理サーバの機能例を示す図である。
【図５】ＩＰアドレス管理テーブルの例を示す図である。
【図６】ノードＩＤ管理テーブルの例を示す図である。
【図７】統合ログ管理テーブルの例を示す図である。
【図８】ログファイルの例を示す図である。
【図９】ノードＩＤの特定例を示す図である。
【図１０】ノードＩＤによる情報の取得例を示す図である。
【図１１】ログファイルの変換例を示す図である。
【図１２】ノードＩＤおよびログの収集処理の例を示すシーケンス図である。
【図１３】ログ提供処理の例を示すシーケンス図である。
【図１４】クライアント処理の例を示すフローチャートである。
【図１５】ＣＭＳ処理の例を示すフローチャートである。
【図１６】統合ログ生成処理の例を示すフローチャートである。
【図１７】統合ログＤＢ処理の例を示すフローチャートである。
【図１８】ログ提供処理の比較例を示すシーケンス図である。
【発明を実施するための形態】
【００１３】
以下、本実施の形態について図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態のログ管理装置を示す図である。第１の実施の形態の情報処理システムは、ログ管理装置１、情報処理装置２，３、スイッチ４，５およびストレージ６，７を含む。ログ管理装置１、スイッチ４，５およびストレージ６，７は、ネットワーク１０に接続されている。情報処理装置２は、スイッチ４に接続されている。情報処理装置２は、スイッチ４を介してネットワーク１０に接続されている。情報処理装置３は、スイッチ５に接続されている。情報処理装置３は、スイッチ５を介してネットワーク１０に接続されている。情報処理装置２は、ストレージ６に接続されている。情報処理装置３は、ストレージ７に接続されている。情報処理装置２，３は、ストレージ６，７と直接接続されてもよいし、ＳＡＮ（Storage Area Network）などのネットワークを介してストレージ６，７と接続されてもよい。
【００１４】
情報処理装置２，３は、それぞれが仮想マシンを実行し、端末装置８，９により仮想マシンを利用可能にする。情報処理装置２，３それぞれは、物理マシンと呼ばれてもよい。端末装置８，９は、ネットワーク２０に接続されている。ネットワーク２０は、ネットワーク１０に接続されている。端末装置８，９は、ネットワーク１０，２０を介して、情報処理装置２，３により実行される仮想マシンを利用できる。ここで、端末装置８，９は、別個のユーザ（テナント）により利用される。すなわち、第１の実施の形態の情報処理システムは、マルチテナントに対して仮想マシンの利用環境を提供するシステムである。
【００１５】
例えば、情報処理装置２は、ハイパーバイザ２ａおよび仮想マシン２ｂ，２ｃを有する。情報処理装置３は、ハイパーバイザ３ａおよび仮想マシン３ｂ，３ｃを有する。ハイパーバイザ２ａは、情報処理装置２のプロセッサ、メモリおよびストレージ６などのハードウェアリソースを仮想マシン２ｂ，２ｃに割り振る。ハイパーバイザ３ａは、情報処理装置３のプロセッサ、メモリおよびストレージ７などのハードウェアリソースを仮想マシン３ｂ，３ｃに割り振る。
【００１６】
例えば、仮想マシン２ｂ，３ｂは、端末装置９のユーザに割り当てられている。仮想マシン２ｃ，３ｃは、端末装置８のユーザに割り当てられている。
ログ管理装置１は、仮想マシン２ｂ，２ｃ，３ｂ，３ｃに関連するハイパーバイザ２ａ，３ａのログや、スイッチ４，５およびストレージ６，７を含むハードウェアのログを端末装置８，９に提供可能にする。ログ管理装置１は、記憶部１ａおよび処理部１ｂを有する。
【００１７】
記憶部１ａは、ＲＡＭなどの揮発性記憶装置でもよいし、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性記憶装置でもよい。処理部１ｂは、ＣＰＵ、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）などを含む。処理部１ｂはプログラムを実行するプロセッサでもよい。プロセッサには、複数のプロセッサの集合（マルチプロセッサ）も含まれ得る。
【００１８】
記憶部１ａは、管理情報Ｔ１を記憶する。管理情報Ｔ１は、仮想マシンの識別情報と仮想マシンを動作させる物理マシン上のハイパーバイザのアドレスと物理マシンに関連するハードウェアのアドレスとの対応を示す情報である。なお、仮想マシンをＶＭ（Virtual Machine）、ハイパーバイザをＨＶ（HyperVisor）、ハードウェアをＨＷ（HardWare）とそれぞれ略記することがある。
【００１９】
仮想マシンの識別情報は、例えば、仮想マシンの識別名であり、該当の仮想マシンを使用するユーザにより選択可能である。物理マシンは、例えば、仮想マシン２ｂ，２ｃを動作させる情報処理装置２や、仮想マシン３ｂ，３ｃを動作させる情報処理装置３に相当する。情報処理装置２に関連するハードウェアとして、情報処理装置２に内蔵されるハードウェア、スイッチ４およびストレージ６が考えられる。また、情報処理装置３に関連するハードウェアとして、情報処理装置３に内蔵されるハードウェア、スイッチ５およびストレージ７が考えられる。ある物理マシンに関連するハードウェアが複数ある場合、１つの仮想マシンに対して複数のハードウェアのアドレスが管理情報Ｔ１に登録されてもよい。アドレスは、例えば、ＩＰ（Internet Protocol）アドレスである。アドレスは、ＭＡＣ（Media Access Control）アドレスなどの他の種類のアドレスでもよい。
【００２０】
ここで、例えば、仮想マシン２ｂの識別情報は“ＶＭ１”である。仮想マシン２ｃの識別情報は“ＶＭ２”である。仮想マシン３ｂの識別情報は“ＶＭ３”である。仮想マシン３ｃの識別情報は“ＶＭ４”である。ハイパーバイザ２ａのアドレスは“ａｄｄｒ１”である。情報処理装置２に関連するハードウェア（例えば、ストレージ６）のアドレスは“ａｄｄｒ２”である。ただし、複数のハードウェア（例えば、情報処理装置２に内蔵のハードウェア、スイッチ４およびストレージ６）それぞれのアドレスが、仮想マシン２ｂの識別情報“ＶＭ１”に対応付けて管理情報Ｔ１に登録されてもよい。
【００２１】
処理部１ｂは、仮想マシンの識別情報が指定されると、記憶部１ａに記憶された管理情報Ｔ１に基づいて、ハイパーバイザおよびハードウェアに関する第１のログを取得する。
例えば、処理部１ｂは、端末装置９から仮想マシン２ｂの識別情報“ＶＭ１”の指定を受け付ける。すると、処理部１ｂは、管理情報Ｔ１に基づいて、仮想マシン２ｂを動作させるハイパーバイザ２ａのアドレスおよび情報処理装置２に関連するハードウェアのアドレスを特定する。そして、処理部１ｂは、特定したアドレスに基づき、ハイパーバイザ２ａおよび当該ハードウェアに関するログＬ１を取得する。ログＬ１は、第１のログの一例である。
【００２２】
例えば、ログＬ１は、ハイパーバイザ２ａや該当のハードウェアにおける処理の履歴や状態を表す情報を含み得る。また、例えば、ログＬ１は、ハイパーバイザ２ａのアドレスや該当のハードウェアのアドレスやハイパーバイザ２ａを提供するＯＳにアクセスするためのアカウントや当該ハードウェアのアカウントなどの仮想基盤に関する種々の設定情報を含み得る。
【００２３】
処理部１ｂは、第１のログに含まれる特定の情報をハイパーバイザの所定のノード識別子に置換した第２のログを生成して記憶部１ａに格納する。特定の情報とは、外部に漏れて悪用または誤用されると、第１の実施の形態の情報処理システムの動作に影響を及ぼし得る情報であり、例えば、アドレスやアカウントなどの仮想基盤に関する設定情報である。
【００２４】
ここで、ノード識別子とは、ハイパーバイザに対して固有に付与された識別情報である。ノード識別子は、ハイパーバイザ自身が予め保持するものでもよいし、ログ管理装置１などの他の装置によって付与されるものでもよい。ノード識別子は、主に、ハイパーバイザを区別する用途に用いられるものである。ノード識別子は、アドレスのように通信などの制御に用いられるものではない。また、ノード識別子は、アカウントのようにハイパーバイザやハードウェアにアクセスするための認証に用いられるものではない。このため、ノード識別子は、端末装置８，９を利用するユーザに知られたとしても、悪用されたり誤用されたりしてシステムの動作に影響を及ぼすものではない。
【００２５】
例えば、ログＬ１は、ハイパーバイザ２ａのアドレス“ａｄｄｒ１”やハイパーバイザ２ａを提供するＯＳのアカウント“ｕｓｅｒ１”を含む。そこで、処理部１ｂは、当該アドレスが記述された部分およびアカウントが記述された部分を、それぞれ、ハイパーバイザ２ａのノード識別子“ＩＤ１”に置換する。ログＬ２は、当該置換により生成された第２のログの一例である。処理部１ｂは、生成したログＬ２を記憶部１ａに格納する。
【００２６】
処理部１ｂは、ノード識別子に基づいて、記憶部１ａに記憶された第２のログを出力する。
例えば、処理部１ｂは、ハイパーバイザ２ａのノード識別子“ＩＤ１”を検索クエリの生成用に、端末装置９に提供する。そして、処理部１ｂは、ノード識別子“ＩＤ１”を含む検索クエリを端末装置９から受信すると、当該ノード識別子“ＩＤ１”を含むログＬ２を端末装置９に出力する。
【００２７】
あるいは、処理部１ｂは、ログＬ２を記憶部１ａに格納する際に、ログＬ２をノード識別子“ＩＤ１”に関連付けておいてもよい。その場合、処理部１ｂは、当該関連付けにより、端末装置９に出力するログＬ２を検索することもできる。
【００２８】
ログ管理装置１によれば、特定情報を流出させずに、提供するログの範囲を拡充できる。すなわち、提供するログの範囲を拡げて提供内容を充実させることができる。あるいは、提供するログの制限を緩和できるともいえる。具体的には次の通りである。
【００２９】
通常、クラウドベースのサービスでは、各テナントに対して仮想マシン上のＯＳのログの閲覧は許容されるが、当該仮想マシンを動作させるハイパーバイザやハードウェアといった仮想基盤のログの閲覧は許容されないことが多い。仮想基盤のログには、悪用されたり誤用されたりするとシステムの運用に深刻な影響を及ぼすものが含まれるためである。一方、テナント側からすれば、仮想基盤に関するログを確認できた方が、障害時の対応を迅速に行える可能性もある。
【００３０】
そこで、ログ管理装置１は、第１のログ（例えば、ログＬ１）に含まれるセキュリティ上問題となり得る特定の情報を、ハイパーバイザのノード識別子に置換した第２のログ（例えば、ログＬ２）を生成して、端末装置９に提供する。前述のように、ノード識別子は、システム内の制御に用いられる情報ではないため、ノード識別子を用いてシステムに危害が加えられることはない。このため、管理サーバ１００は、仮想基盤のアドレスやアカウントなどの特定の情報をノード識別子に変換して端末装置９に出力することで、当該特定の情報が外部のユーザに流出することを防げる。こうして、システム側の安全性を確保しながら、端末装置９へ仮想基盤に関するログの一部を提供することが可能になる。
【００３１】
また、端末装置９のユーザは、自身が利用する仮想マシンの識別情報を指定しさえすれば、当該仮想マシンに関係のあるハイパーバイザやハードウェアのログの一部を取得可能である。このため、仮想マシンの動作に不具合が起きた場合などの原因究明を行うに当たり、システム側から迅速にログの提供を受けることができる。その結果、テナント側の管理者により原因究明や障害対応などの作業を迅速に行える利点もある。
【００３２】
なお、上記の例では、主に、特定の情報をハイパーバイザのノード識別子に置換する例を示したが、置換の方法は、このような例に限られない。例えば、処理部１ｂは、第１のログのうち、ハードウェアに関連するログに含まれるアドレスやアカウントについては、該当のハードウェアに対応するノード識別子に置換して、第２のログを生成してもよい。
【００３３】
例えば、特定の情報は、ハイパーバイザに関する第１の設定情報と、ハードウェアに関する第２の設定情報とを含み得る。処理部１ｂは、第１のログのうち、第１の設定情報をハイパーバイザの第１のノード識別子に置換し、第２の設定情報をハードウェアの第２のノード識別子に置換して、第２のログを生成してもよい。ここで、前述のように、第１の設定情報の例は、ハイパーバイザのアドレスおよびハイパーバイザへのアクセスに用いられるアカウントの情報の両方または何れか一方である。また、第２の設定情報の例は、ハードウェアのアドレスおよびハードウェアへのアクセスに用いられるアカウントの情報の両方または何れか一方である。このようにすると、ノード識別子によって、ハイパーバイザやハードウェアを区別可能となり、ユーザによる第２のログの解析を補助できる。
【００３４】
また、記憶部１ａは、ハイパーバイザのアドレス（およびＯＳのアカウント）とハイパーバイザの第１のノード識別子との対応やハードウェアのアドレス（およびハードウェアのアカウント）とハードウェアの第２のノード識別子との対応を予め記憶してもよい。あるいは、処理部１ｂは、第１のノード識別子をハイパーバイザから取得し、ハイパーバイザのアドレスに関連付けて第１のノード識別子を記憶部１ａに格納してもよい。同様に、処理部１ｂは、第２のノード識別子をハードウェアから取得し、ハードウェアのアドレスに関連付けて第２のノード識別子を記憶部１ａに格納してもよい。そして、処理部１ｂは、記憶部１ａを参照して、第１のログに含まれるアドレスやアカウントの情報をハイパーバイザのノード識別子やハードウェアのノード識別子に変換することで、第２のログを生成してもよい。
【００３５】
以下では、より具体的な情報処理システムを例示して、ログ管理装置１の機能を更に詳細に説明する。
［第２の実施の形態］
図２は、第２の実施の形態の情報処理システムの例を示す図である。第２の実施の形態の情報処理システムは、コンピュータリソースを用いて複数の仮想マシンを動作させ、各仮想マシンを複数のユーザ（すなわち、マルチテナント）により利用可能にする。コンピュータのこのような利用手法は、クラウドコンピューティングと呼ばれることもある。
【００３６】
第２の実施の形態の情報処理システムは、管理サーバ１００、ＶＭ実行サーバ２００，３００、スイッチ４００，５００およびストレージ６００，７００を含む。管理サーバ１００、スイッチ４００，５００およびストレージ６００，７００は、ネットワーク４０に接続されている。ＶＭ実行サーバ２００は、スイッチ４００に接続されている。ＶＭ実行サーバ３００は、スイッチ５００に接続されている。ＶＭ実行サーバ２００，３００は、スイッチ４００，５００を介してネットワーク４０に接続されているともいえる。ネットワーク４０は、例えば、データセンタ内に敷設されたＬＡＮ（Local Area Network）である。ＶＭ実行サーバ２００，３００およびストレージ６００，７００は、ＳＡＮ６０に接続されている。ＶＭ実行サーバ２００，３００は、ＳＡＮ６０を介して、ストレージ６００，７００にアクセス可能である。
【００３７】
また、ネットワーク４０は、外部のネットワーク５０に接続されている。ネットワーク５０には、クライアント８００，９００が接続されている。更に、ネットワーク４０には、管理端末３０が接続されている。
【００３８】
管理サーバ１００は、ＶＭ実行サーバ２００，３００、スイッチ４００，５００およびストレージ６００，７００の運用を管理するサーバコンピュータである。管理サーバ１００は、ＶＭ実行サーバ２００，３００、スイッチ４００，５００およびストレージ６００，７００からログを収集し、収集したログをクライアント８００，９００へ提供する役割も担う。このとき、管理サーバ１００は、システム内部の特定の情報が外部に漏れるのを防ぐため、提供するログに含まれる特定の情報を秘匿化する。管理サーバ１００は、第１の実施の形態のログ管理装置１の一例である。
【００３９】
ＶＭ実行サーバ２００，３００は、仮想マシンを実行するサーバコンピュータである。ＶＭ実行サーバ２００，３００は、それぞれがハイパーバイザを実行し、ハイパーバイザの機能により、ＶＭ実行サーバ２００，３００が備えるＣＰＵやＲＡＭの演算リソースを仮想マシンに割り当てる。ＶＭ実行サーバ２００，３００の各ハイパーバイザは、ネットワーク４０を介して、管理サーバ１００にログを送信する。ＶＭ実行サーバ２００，３００は、第１の実施の形態の情報処理装置２，３の一例である。ＶＭ実行サーバ２００，３００それぞれは、物理マシンと呼ばれてもよい。
【００４０】
スイッチ４００，５００は、ネットワーク４０とＶＭ実行サーバ２００，３００との間の通信を中継する中継装置である。スイッチ４００，５００は、内蔵されるハードウェア（プロセッサ、ＲＡＭおよび通信ポートなど）の状態やログなどの情報を、ネットワーク４０を介して管理サーバ１００に送信する。
【００４１】
ストレージ６００，７００は、ＶＭ実行サーバ２００，３００上の仮想マシンにより処理される業務データを格納する外部ストレージである。ストレージ６００，７００は、内蔵されるハードウェア（プロセッサ、ＲＡＭおよびＨＤＤやＳＳＤ（Solid State Drive）などの記憶デバイス）の状態やログなどの情報を、ネットワーク４０を介して管理サーバ１００に送信する。
【００４２】
クライアント８００，９００は、ネットワーク４０，５０を介して、ＶＭ実行サーバ２００，３００にアクセスし、仮想マシンを利用するクライアントコンピュータである。クライアント８００は、ユーザ７１により利用される。クライアント９００は、ユーザ７２により利用される。ユーザ７１，７２は、異なるテナントに属する。
【００４３】
管理端末３０は、システムの管理者８１により利用されるクライアントコンピュータである。
図３は、管理サーバのハードウェア例を示す図である。管理サーバ１００は、プロセッサ１０１、ＲＡＭ１０２、ＨＤＤ１０３、画像信号処理部１０４、入力信号処理部１０５、媒体リーダ１０６およびＮＩＣ（Network Interface Card）１０７を有する。各ハードウェアは管理サーバ１００のバスに接続されている。ＶＭ実行サーバ２００，３００、クライアント８００，９００および管理端末３０も管理サーバ１００と同様のハードウェアを用いて実現できる。
【００４４】
プロセッサ１０１は、管理サーバ１００の情報処理を制御するハードウェアである。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ、ＤＳＰ、ＡＳＩＣまたはＦＰＧＡなどである。プロセッサ１０１は、ＣＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡなどのうちの２以上の要素の組み合わせであってもよい。
【００４５】
ＲＡＭ１０２は、管理サーバ１００の主記憶装置である。ＲＡＭ１０２は、プロセッサ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０２は、プロセッサ１０１による処理に用いる各種データを記憶する。
【００４６】
ＨＤＤ１０３は、管理サーバ１００の補助記憶装置である。ＨＤＤ１０３は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３は、ＯＳのプログラム、アプリケーションプログラム、および各種データを記憶する。管理サーバ１００は、フラッシュメモリやＳＳＤなどの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
【００４７】
画像信号処理部１０４は、プロセッサ１０１からの命令に従って、管理サーバ１００に接続されたディスプレイ１１に画像を出力する。ディスプレイ１１として、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイなどを用いることができる。
【００４８】
入力信号処理部１０５は、管理サーバ１００に接続された入力デバイス１２から入力信号を取得し、プロセッサ１０１に出力する。入力デバイス１２として、例えば、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
【００４９】
媒体リーダ１０６は、記録媒体１３に記録されたプログラムやデータを読み取る装置である。記録媒体１３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。また、記録媒体１３として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。媒体リーダ１０６は、例えば、プロセッサ１０１からの命令に従って、記録媒体１３から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００５０】
ＮＩＣ１０７は、ネットワーク４０を介して他の装置と通信を行う。ＮＩＣ１０７は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。
図４は、管理サーバの機能例を示す図である。管理サーバ１００は、記憶部１１０、クラウド管理システム（ＣＭＳ：Cloud Management System）１２０、ＣＭＳプラグイン１３０およびインフラ管理部１４０および統合ログＤＢ（DataBase）１５０を有する。
【００５１】
記憶部１１０や統合ログＤＢ１５０は、ＲＡＭ１０２やＨＤＤ１０３の記憶領域を用いて実現される。ＣＭＳ１２０、ＣＭＳプラグイン１３０およびインフラ管理部１４０は、プロセッサ１０１により実現される。例えば、プロセッサ１０１は、ＲＡＭ１０２に記憶された所定のプログラムを実行することで、ＣＭＳ１２０、ＣＭＳプラグイン１３０およびインフラ管理部１４０の機能を発揮する。あるいは、ＣＭＳ１２０、ＣＭＳプラグイン１３０およびインフラ管理部１４０は、ＦＰＧＡやＡＳＩＣなどのハードワイヤードロジックにより実現されてもよい。また、統合ログＤＢ１５０のＤＢ管理システム（ＤＢＭＳ：DataBase Management System）も同様に、プロセッサ１０１により実現される。統合ログＤＢ１５０に関する処理は、統合ログＤＢ１５０のＤＢＭＳによって実行されると考えてもよい。
【００５２】
記憶部１１０は、ログ取得対象のコンポーネント（あるいは、ノードと称してもよい）のアドレス（具体的にはＩＰアドレス）の情報およびアドレスに対応するノード識別子の情報を記憶する。ログ取得対象のコンポーネントは、ハイパーバイザを含む。また、ログ取得対象のコンポーネントは、ＶＭ実行サーバ２００，３００、スイッチ４００，５００およびストレージ６００，７００などのハードウェアを含む。
【００５３】
ここで、以下では、ノード識別子をノードＩＤと称する。ノードＩＤは、コンポーネントの識別情報であり、各コンポーネントにより予め保持される情報である。ノードＩＤは、システムの管理者８１によってシステム管理のために各コンポーネントに予め付与される情報でもよい。
【００５４】
ＣＭＳ１２０は、ＶＭ実行サーバ２００，３００の各ハイパーバイザおよび仮想マシンを統合管理するソフトウェアである。ＣＭＳ１２０は、ハイパーバイザのノードＩＤをＶＭ実行サーバ２００，３００から取得し、インフラ管理部１４０に提供する。
【００５５】
ここで、例えば、ＶＭ実行サーバ２００は、ハイパーバイザ２１０を実行する。ハイパーバイザ２１０は、ＶＭ実行サーバ２００のＣＰＵやＲＡＭなどの演算リソースを用いて仮想マシン２２０，２３０，２４０を動作させる。ＣＭＳ１２０は、ハイパーバイザ２１０のノードＩＤを、ＶＭ実行サーバ２００から取得する。
【００５６】
ＣＭＳプラグイン１３０は、ＣＭＳ１２０のプラグインである。ＣＭＳプラグイン１３０は、クライアント８００が備えるテナント管理部８１０からの要求に応じて、インフラ管理部１４０と連携し、各コンポーネントのログを処理する。ここで、テナント管理部８１０は、テナント側の管理者に対して仮想マシンや仮想マシンに関連するハイパーバイザおよびハードウェアなどのログを提示するためのクライアントソフトウェアである。ＣＭＳプラグイン１３０は、統合ログ生成部１３１を有する。
【００５７】
統合ログ生成部１３１は、各コンポーネント（ハイパーバイザやハードウェア）のログをインフラ管理部１４０から収集し、収集したログを基に統合ログを生成する。統合ログ生成部１３１は、ハイパーバイザ２１０に関するログを、ハイパーバイザ２１０から収集することもある。統合ログは、各コンポーネントのログを単一の形式のファイルに変換したログである。統合ログの形式は、例えば、ＸＭＬ（eXtensible Markup Language）である。統合ログ生成部１３１は、生成した統合ログを統合ログＤＢ１５０に格納する。
【００５８】
インフラ管理部１４０は、システムの各コンポーネントのＩＰアドレスに基づいて、当該ＩＰアドレスに対応するノードＩＤを収集し、記憶部１１０に格納する。例えば、インフラ管理部１４０は、ＶＭ実行サーバ２００，３００上の各ハイパーバイザのノードＩＤを、ＣＭＳ１３０を介して収集する。また、インフラ管理部１４０は、ＶＭ実行サーバ２００，３００が備えるハードウェアのノードＩＤをＶＭ実行サーバ２００，３００から収集する。更に、インフラ管理部１４０は、スイッチ４００，５００およびストレージ６００，７００からもそれぞれのノードＩＤを収集する。インフラ管理部１４０は、収集したノードＩＤをＣＭＳプラグイン１３０に提供する。
【００５９】
また、インフラ管理部１４０は、ＶＭ実行サーバ２００，３００、スイッチ４００，５００およびストレージ６００，７００からログを収集し、ＣＭＳプラグイン１３０に提供する。インフラ管理部１４０からＣＭＳプラグイン１３０へのログの提供は、例えば、ＲＥＳＴｆｕｌ  ＡＰＩ（Application Programming Interface）によりＪＳＯＮ（JavaScript Object Notation）形式で行われる（Ｊａｖａｓｃｒｉｐｔは登録商標）。
【００６０】
例えば、インフラ管理部１４０は、ＶＭ実行サーバ２００，３００それぞれが備えるｉＲＭＣ（integrated Remote Management Controller）と呼ばれる管理機能を用いて、ＶＭ実行サーバ２００，３００のハードウェアのログを収集する。ここで、ＶＭ実行サーバ２００は、ｉＲＭＣの機能を提供するサーバ管理部２５０を有する。サーバ管理部２５０は、ＶＭ実行サーバ２００のハードウェア群２６０（プロセッサ、ＲＡＭ、ＨＤＤおよびＮＩＣなど）のログを取得する。インフラ管理部１４０は、サーバ管理部２５０からハードウェア群２６０のログを収集する。
【００６１】
また、例えば、インフラ管理部１４０は、スイッチ４００，５００およびストレージ６００，７００それぞれが備えるＩＰＭＩ（Intelligent Platform Management Interface）と呼ばれる管理インタフェースを用いて、スイッチ４００，５００およびストレージ６００，７００のハードウェアのログを収集する。
【００６２】
統合ログＤＢ１５０は、ＣＭＳプラグイン１３０により生成された統合ログを記憶する。前述のように、統合ログは、各コンポーネントのログを単一の形式（例えば、ＸＭＬ）に変換したものである。統合ログでは、特定の情報が別の情報によってマスキングされる。ここで、マスキング対象となる特定の情報は、例えば、ＩＰアドレスやアカウントの情報である。統合ログＤＢ１５０は、テナント管理部８１０からの統合ログの参照要求に対し、テナント管理部８１０に統合ログを提供する。
【００６３】
図５は、ＩＰアドレス管理テーブルの例を示す図である。ＩＰアドレス管理テーブル１１１は、記憶部１１０に予め格納される。ＩＰアドレス管理テーブル１１１は、ＶＭ名、ＨＶ−ＩＰアドレス、スイッチＩＰアドレスおよびストレージＩＰアドレスの項目を含む。
【００６４】
ＶＭ名の項目には、仮想マシンの名称（ＶＭ名）が登録される。ＨＶ−ＩＰアドレスの項目には、当該仮想マシンを動作させるハイパーバイザのＩＰアドレスが登録される。スイッチＩＰアドレスの項目には、ハイパーバイザを実行するＶＭ実行サーバが接続されるスイッチのＩＰアドレスが登録される。ストレージＩＰアドレスの項目には、ＶＭ実行サーバからアクセスされるストレージのＩＰアドレスが登録される。
【００６５】
例えば、ＩＰアドレス管理テーブル１１１には、ＶＭ名が“ＶＭ１”、ＨＶ−ＩＰアドレスが“１９２．１６８．０．１”、スイッチＩＰアドレスが“１９２．１６８．０．１１”、ストレージＩＰアドレスが“１９２．１６８．０．２１”というレコードが登録されている。ここで、ＩＰアドレス“１９２．１６８．０．１”は、ハイパーバイザ２１０のＩＰアドレスである。このレコードは、ＶＭ名“ＶＭ１”の仮想マシンを動作させるハイパーバイザ２１０のＩＰアドレスが“１９２．１６８．０．１”であることを示す。また、ハイパーバイザ２１０を実行するＶＭ実行サーバ２００が接続されるスイッチ４００のＩＰアドレスが“１９２．１６８．０．１１”であることを示す。更に、ＶＭ実行サーバ２００からアクセスされるストレージ６００のＩＰアドレスが“１９２．１６８．０．２１”であることを示す。
【００６６】
ＩＰアドレス管理テーブル１１１には、他の仮想マシンについても、ＶＭ名、ＨＶ−ＩＰアドレス、スイッチＩＰアドレスおよびストレージＩＰアドレスの組が登録される。
図６は、ノードＩＤ管理テーブルの例を示す図である。ノードＩＤ管理テーブル１１２は、インフラ管理部１４０により生成され、記憶部１１０に格納される。ノードＩＤ管理テーブル１１２は、ＩＰアドレスおよびノードＩＤの項目を含む。
【００６７】
ＩＰアドレスの項目には、コンポーネントのＩＰアドレスが登録される。ノードＩＤの項目には、当該コンポーネントのノードＩＤが登録される。
例えば、ノードＩＤ管理テーブル１１２には、ＩＰアドレスが“１９２．１６８．０．１”、ノードＩＤが“１２３４”というレコードが登録されている。このレコードは、ＩＰアドレス“１９２．１６８．０．１”のコンポーネント（ハイパーバイザ２１０）のノードＩＤが“１２３４”であることを示す。
【００６８】
ノードＩＤ管理テーブル１１２には、他のＩＰアドレスに対しても、ＩＰアドレスおよびノードＩＤの組が登録される。
図７は、統合ログ管理テーブルの例を示す図である。統合ログ管理テーブル１５１は、統合ログ生成部１３１により生成され、統合ログＤＢ１５０に格納される。統合ログ管理テーブル１５１は、ＶＭ名、ノードＩＤ、日時、ＨＶステータス、ＨＶログ、ＨＷステータスおよびＨＷログの項目を含む。
【００６９】
ＶＭ名の項目には、仮想マシンの名称が登録される。ノードＩＤの項目にはノードＩＤが登録される。日時の項目には、統合ログが取得された日時が登録される。ＨＶステータスの項目には、ハイパーバイザの状態（ステータス）が登録される。ＨＶログの項目には、ハイパーバイザのログを示すログファイルが登録される。ＨＷステータスの項目には、該当の仮想マシンに関連するハードウェアの状態（ステータス）が登録される。ＨＷログの項目には、ハードウェアのログを示すログファイルが登録される。
【００７０】
ここで、ＨＶステータスやＨＷステータスの項目に登録されるステータスには、例えば、“ｗａｒｎｉｎｇ”（警告）、“ｅｒｒｏｒ”（エラー）、“ｎｏｒｍａｌ”（正常）、“ｃｒｉｔｉｃａｌ”（“ｅｒｒｏｒ”よりも重大なエラー）、“ｅｍｅｒｇｅｎｃｙ”（“ｃｒｉｔｉｃａｌ”よりも重大なエラー）などが考えられる。ＨＷステータスおよびＨＷログの項目については、関連するハードウェアが複数の場合はハードウェア毎（例えば、ＶＭ実行サーバ、スイッチおよびストレージ毎）にＨＷステータスおよびＨＷログの項目を設けてもよい。ここで、ＨＶログのログファイルおよびＨＷログのログファイルのデータ形式として、ＸＭＬが用いられる。
【００７１】
例えば、統合ログ管理テーブル１５１には、ＶＭ名が“ＶＭ１”、ノードＩＤが“１２３４”、日時が“２０１７／０９／１５  １０：００：００”、ＨＶステータスが“ｗａｒｎｉｎｇ”、ＨＶログが“ＡＡ１．ｘｍｌ”、ＨＷステータスが“ｅｒｒｏｒ”、ＨＷログが“ＡＡ２．ｘｍｌ”というレコードが登録されている。
【００７２】
このレコードは、ＶＭ名“ＶＭ１”の仮想マシンに関連するハイパーバイザのノードＩＤが“１２３４”であり、当該レコードで示される統合ログの取得日時が２０１７年９月１５日１０時００分００秒であることを示す。また、当該仮想マシンを動作させるハイパーバイザの状態が“ｗａｒｎｉｎｇ”であり、当該ハイパーバイザに関するログファイルのファイル名が“ＡＡ１．ｘｍｌ”であることを示す。更に、当該仮想マシンに関連するハードウェアの状態が“ｅｒｒｏｒ”であり、当該ハードウェアに関するログファイルのファイル名が“ＡＡ２．ｘｍｌ”であることを示す。
【００７３】
統合ログ管理テーブル１５１には、他の仮想マシンに対しても、ＶＭ名、ノードＩＤ、日時、ＨＶステータス、ＨＶログ、ＨＷステータスおよびＨＷログの組が登録される。
図８は、ログファイルの例を示す図である。ログファイル１２２，１２３は、統合ログ生成部１３１により生成され、統合ログＤＢ１５０に格納される。ログファイル１２２のファイル名は、“ＡＡ１．ｘｍｌ”である。ログファイル１２３のファイル名は“ＡＡ２．ｘｍｌ”である。例えば、ログファイル１２２は、ハイパーバイザ２１０のログである。ログファイル１２３は、ハードウェア（ＶＭ実行サーバ２００、スイッチ４００またはストレージ６００）のログである。
【００７４】
例えば、ログファイル１２２には、ＸＭＬ形式によりハイパーバイザ２１０に関するログが記述されている。ログファイル１２２では、例えば、ＩＰアドレスやアカウントの情報がハイパーバイザ２１０のノードＩＤに置換される。ログファイル１２２の例では、ログのメッセージを示す“ｍｅｓｓａｇｅ”タグにおける“１２３４”の箇所が、ノードＩＤに置換された箇所である。
【００７５】
ログファイル１２３もログファイル１２２と同様に、ＸＭＬ形式によりハードウェアに関するログが記述される。ログファイル１２３でも、ＩＰアドレスやアカウントの情報が該当のハードウェアのノードＩＤに置換される。
【００７６】
統合ログＤＢ１５０には、他の仮想マシンに関連付けられるログファイルについても同様に登録される。
図９は、ノードＩＤの特定例を示す図である。インフラ管理部１４０は、ＣＭＳ１２０から取得されるホスト構成情報１１３およびＯＳ構成情報１１４に基づいて、ノードＩＤを特定する。ホスト構成情報１１３は、ＶＭ実行サーバおよび仮想マシンとの対応関係を示す情報である。ＯＳ構成情報１１４は、ＶＭ実行サーバ毎のＯＳ（ハイパーバイザの機能を提供するＯＳ）に関する情報である。
【００７７】
具体的には、まず、インフラ管理部１４０は、ＣＭＳ１２０を介して、テナント管理部８１０により指定された仮想マシン名を取得する。一例として、仮想マシン名“ＶＭ１”が指定されたとする。この場合、インフラ管理部１４０は、ホスト構成情報１１３において、仮想マシン名“ＶＭ１”を検索し、当該“ＶＭ１”を含むＶＭ実行サーバにおけるハイパーバイザのＩＰアドレス（“ＨｏｓｔＩｐＡｄｄｒｅｓｓ”で示される）を取得する。ホスト構成情報１１３の例では、該当の“ＨｏｓｔＩｐＡｄｄｒｅｓｓ”は“１９２．１６８．０．１”である。そして、インフラ管理部１４０は、取得したＩＰアドレスをキーに、ＯＳ構成情報１１４を検索し、当該ＯＳに対応するノードＩＤを得る。ＯＳ構成情報１１４の例では、“ＯｓＩｐＡｄｄｒｅｓｓ：“１９２．１６８．０．１””が設定されているＯＳに対応するノードＩＤ（“ＮｏｄｅＩｄ”）は、“１２３４”である。ハイパーバイザは、当該ＯＳによって提供される機能であるため、当該ノードＩＤはハイパーバイザのノードＩＤといえる。こうして、インフラ管理部１４０は、指定された仮想マシン名“ＶＭ１”に対して、ハイパーバイザ２１０のノードＩＤ“１２３４”を取得することができる。
【００７８】
なお、図９では、インフラ管理部１４０は、ホスト構成情報１１３によってＶＭ名からＩＰアドレスを特定する例を示した。一方、インフラ管理部１４０は、ＩＰアドレス管理テーブル１１１により仮想マシン名からＩＰアドレスを特定してもよい。あるいは、当初、ＩＰアドレス管理テーブル１１１のＶＭ名の項目が空欄のことも考えられる。この場合、インフラ管理部１４０は、ホスト構成情報１１３によって特定された仮想マシン名とハイパーバイザのＩＰアドレスとの対応関係をＩＰアドレス管理テーブル１１１に追加し、以後のＩＰアドレスの特定に用いてもよい。
【００７９】
図１０は、ノードＩＤによる情報の取得例を示す図である。インフラ管理部１４０は、取得したノードＩＤから該当のＶＭ実行サーバのハードウェアに関する状態やログの取得も行える。例えば、インフラ管理部１４０は、各ＶＭ実行サーバからハードウェア構成情報を取得する。各ハードウェア構成情報は、取得元のＶＭ実行サーバに内蔵されたハードウェアに関する情報を含む。また、各ハードウェア構成情報は、ノードＩＤを含む。
【００８０】
インフラ管理部１４０は、これらのハードウェア構成情報のうち、ＯＳ構成情報１１４から取得したノードＩＤ“１２３４”を含むハードウェア構成情報１１５を特定する。そして、インフラ管理部１４０は、特定したハードウェア構成情報１１５から、該当のＶＭ実行サーバ（ＶＭ実行サーバ２００）のハードウェア（ハードウェア群２６０）の状態やハードウェアに関するログを取得する。例えば、インフラ管理部１４０は、ハードウェア構成情報１１５から、該当のＶＭ実行サーバにおけるＰＣＩｅ（Peripheral Component Interconnect express）デバイスに関する情報や、ファームウェアの情報を取得することもできる。
【００８１】
インフラ管理部１４０は、同様に、スイッチ４００のノードＩＤやストレージ６００のノードＩＤを含むハードウェア構成情報を特定することで、スイッチ４００やストレージ６００のハードウェアの状態や当該ハードウェアに関するログを取得する。
【００８２】
図１１は、ログファイルの変換例を示す図である。例えば、ログファイル１１７は、統合ログ生成部１３１がインフラ管理部１４０から取得したハイパーバイザ２１０に関するＪＳＯＮ形式のログをＸＭＬ形式に変換したものである。ログファイル１１７は、ｍｅｓｓａｇｅタグにおいて“Ｆａｉｌ  ｔｏ  ｃｏｎｎｅｃｔ  “１９２．１６８．０．２１””という記述を含む。“１９２．１６８．０．２１”の箇所は、ＩＰアドレスの記述形式に該当する。このため、統合ログ生成部１３１は、ノードＩＤ管理テーブル１１２に基づいて、該当の箇所を“１９２．１６８．０．２１”に対応するノードＩＤ“３４５６”に置換する。
【００８３】
また、例えば、ログファイル１１７は、ｍｅｓｓａｇｅタグにおいて、“ａｃｃｏｕｎｔ  “ｕｓｅｒ０００１”  ｌｏｇｏｎ”という記述を含む。“ａｃｃｏｕｎｔ  “ｕｓｅｒ０００１””の箇所は、アカウントの記述形式に該当し、特に“ａｃｃｏｕｎｔ”に続く“ｕｓｅｒ０００１”の箇所はアカウント名に相当する。このため、統合ログ生成部１３１は、該当のアカウント名の箇所を、ハイパーバイザ２１０のノードＩＤ“１２３４”に置換する。こうして、統合ログ生成部１３１は、ログファイル１２２を作成し、統合ログＤＢ１５０に格納する。
【００８４】
なお、統合ログ生成部１３１は、該当のログの取得元のコンポーネントのＩＰアドレスを基に、ノードＩＤ管理テーブル１１２を参照することで、アカウント名に対応するノードＩＤを、特定することができる。あるいは、アカウント名とノードＩＤとの対応情報を記憶部１１０に予め格納しておいてもよい。この場合、統合ログ生成部１３１は、記憶部１１０に記憶された当該対応情報に基づいて、アカウント名からノードＩＤへの変換を行える。
【００８５】
次に、管理サーバ１００によるノードＩＤおよびログ収集の流れを説明する。ここで、以下の説明では、ハイパーバイザに関するログをＨＶログと称し、ハードウェアに関するログをＨＷログと称することがある。
【００８６】
図１２は、ノードＩＤおよびログの収集処理の例を示すシーケンス図である。以下、図１２に示す処理をステップ番号に沿って説明する。
（ＳＴ１）ＣＭＳ１２０は、ＩＰアドレス管理テーブル１１１に基づいて、ハイパーバイザ２１０にノードＩＤを要求する。
【００８７】
（ＳＴ２）ハイパーバイザ２１０は、ノードＩＤの要求に応じて、ハイパーバイザ２１０のノードＩＤをＣＭＳ１２０に応答する。ＣＭＳ１２０は、ハイパーバイザ２１０のノードＩＤの応答を受け付ける。
【００８８】
（ＳＴ３）インフラ管理部１４０は、ハイパーバイザ２１０のノードＩＤをＣＭＳ１２０に要求する。
（ＳＴ４）ＣＭＳ１２０は、ノードＩＤの要求に応じて、ステップＳＴ２で取得したハイパーバイザ２１０のノードＩＤをインフラ管理部１４０に応答する。インフラ管理部１４０は、ハイパーバイザ２１０のノードＩＤの応答を受け付け、記憶部１１０に格納されたノードＩＤ管理テーブル１１２に登録する。
【００８９】
（ＳＴ５）インフラ管理部１４０は、ＩＰアドレス管理テーブル１１１に基づいて、ハードウェア群２６０に関するＨＷログを、サーバ管理部２５０に要求する。
（ＳＴ６）サーバ管理部２５０は、ＨＷログの要求に応じて、ハードウェア群２６０に関するＨＷログおよびハードウェア群２６０のステータスをインフラ管理部１４０に応答する。インフラ管理部１４０は、ハードウェア群２６０に関するＨＷログおよびステータスを受け付け、記憶部１１０に格納する。インフラ管理部１４０が取得するＨＷログは、前述のホスト構成情報１１３、ＯＳ構成情報１１４およびハードウェア構成情報１１５を含む。
【００９０】
ここで、インフラ管理部１４０は、スイッチ４００，５００およびストレージ６００，７００などの他のハードウェアからもノードＩＤおよびＨＷログを収集する。例えば、インフラ管理部１４０は、ＩＰアドレス管理テーブル１１１に基づいて、各ハードウェアのＨＷログおよびステータスを取得し、該当のハードウェアのＩＰアドレスに関連付けて、取得したＨＷログおよびステータスを記憶部１１０に格納する。
【００９１】
なお、インフラ管理部１４０は、スイッチ４００，５００およびストレージ６００，７００からは、ＣＭＳ１２０を介さずに、ノードＩＤを収集する（ＩＰＭＩを介して直接収集する）。インフラ管理部１４０は、ＩＰアドレス管理テーブル１１１に基づいて、各ハードウェアのノードＩＤを取得し、ＩＰアドレスとノードＩＤとの対応関係をノードＩＤ管理テーブル１１２に登録する。
【００９２】
また、インフラ管理部１４０によるノードＩＤやＨＷログの収集は、下記に示すログ提供処理とは非同期に行われる。例えば、インフラ管理部１４０は、ノードＩＤの収集を、管理サーバ１００の起動の直後などの所定のタイミングで行ってもよい。例えば、インフラ管理部１４０は、ＨＷログの収集を、随時（例えば、所定の周期）で行ってもよい。
【００９３】
次に、管理サーバ１００によるログ提供処理の流れを説明する。管理サーバ１００は、クライアント８００と連携して、ユーザへのログ提供処理を実行する。
図１３は、ログ提供処理の例を示すシーケンス図である。以下、図１３に示す処理をステップ番号に沿って説明する。
【００９４】
（ＳＴ１１）テナント管理部８１０は、ユーザ７１により選択された仮想マシン２２０のＯＳログを仮想マシン２２０に要求する。例えば、ユーザ７１は、仮想マシン２２０で障害が発生すると、テナント管理部８１０により提供される仮想マシン名の選択画面から、仮想マシン２２０の仮想マシン名を選択することができる。テナント管理部８１０は、こうして選択された仮想マシン名を含むＯＳログの要求を仮想マシン２２０に送信する。
【００９５】
（ＳＴ１２）仮想マシン２２０は、ＯＳログの要求に応じて、テナント管理部８１０にＯＳログを応答する。テナント管理部８１０は、仮想マシン２２０のＯＳログをクライアント８００のディスプレイに表示させる。
【００９６】
（ＳＴ１３）テナント管理部８１０は、仮想マシン２２０を動作させるハイパーバイザ２１０のノードＩＤおよびハイパーバイザ２１０に関連するハードウェアのノードＩＤをＣＭＳプラグイン１３０に要求する。ノードＩＤの要求は、ユーザにより選択された仮想マシン２２０の仮想マシン名を含む。
【００９７】
（ＳＴ１４）ＣＭＳプラグイン１３０は、ハイパーバイザ２１０およびハードウェアのノードＩＤを、インフラ管理部１４０に要求する。当該ノードＩＤの要求も、ユーザにより選択された仮想マシン２２０の仮想マシン名を含む。
【００９８】
（ＳＴ１５）インフラ管理部１４０は、ホスト構成情報１１３に基づいて、ノードＩＤの要求に含まれる仮想マシン名に対応するＩＰアドレスを特定する。そして、インフラ管理部１４０は、ＯＳ構成情報１１４に基づいて、特定したＩＰアドレスに対応するノードＩＤを特定する。インフラ管理部１４０は、特定したＩＰアドレスとノードＩＤとの対応関係をノードＩＤ管理テーブル１１２に登録する。また、インフラ管理部１４０は、ＩＰアドレス管理テーブル１１１およびノードＩＤ管理テーブル１１２に基づいて、特定したＩＰアドレスと関連するハードウェアのノードＩＤも特定する。そして、インフラ管理部１４０は、特定したハイパーバイザ２１０のノードＩＤ、ハイパーバイザ２１０のＩＰアドレス、および、ハードウェアのノードＩＤをＣＭＳプラグイン１３０に応答する。
【００９９】
（ＳＴ１６）ＣＭＳプラグイン１３０は、取得したハイパーバイザ２１０のノードＩＤおよびハードウェアのノードＩＤをテナント管理部８１０に応答する。テナント管理部８１０は、各ノードＩＤを取得する。
【０１００】
（ＳＴ１７）ＣＭＳプラグイン１３０は、ハイパーバイザ２１０に関連する統合ログを生成する処理を統合ログ生成部１３１に依頼する。当該依頼は、ハイパーバイザ２１０のノードＩＤやユーザにより選択された仮想マシン名を含む。
【０１０１】
（ＳＴ１８）統合ログ生成部１３１は、統合ログの処理依頼に応じて、ハイパーバイザ２１０にＨＶログを要求する。例えば、統合ログ生成部１３１は、ノードＩＤ管理テーブル１１２に基づいて、指定されたノードＩＤに対応するハイパーバイザ２１０のＩＰアドレスを特定し、特定したＩＰアドレスを基にＨＶログの要求先を把握する。
【０１０２】
（ＳＴ１９）ハイパーバイザ２１０は、要求に応じてハイパーバイザ２１０に関するＨＶログおよびハイパーバイザ２１０のステータスを統合ログ生成部１３１に応答する。例えば、ハイパーバイザ２１０に関するＨＶログは、ＣＳＶ（Comma-Separated Values）などの所定の形式で、ハイパーバイザ２１０から統合ログ生成部１３１に提供される。
【０１０３】
（ＳＴ２０）統合ログ生成部１３１は、ＩＰアドレス管理テーブル１１１に基づいてハイパーバイザ２１０に関連するハードウェアのＩＰアドレスを特定する。統合ログ生成部１３１は、特定したＩＰアドレスに対応するハードウェアに関するＨＷログをインフラ管理部１４０に要求する。
【０１０４】
（ＳＴ２１）インフラ管理部１４０は、ＨＷログの要求に応じて、該当のＩＰアドレスに対応するハードウェアのＨＷログおよび当該ハードウェアのステータスを統合ログ生成部１３１に応答する。ＨＷログは、ＪＳＯＮ形式で、インフラ管理部１４０から統合ログ生成部１３１に提供される。
【０１０５】
（ＳＴ２２）統合ログ生成部１３１は、ステップＳＴ１９で取得したハイパーバイザ２１０に関するＨＶログ、および、ステップＳＴ２１で取得したハードウェアに関するＨＷログを、ＸＭＬ形式に変換したログファイルを生成する。そして、統合ログ生成部１３１は、変換後のログファイルに含まれるＩＰアドレスの記述を、ノードＩＤ管理テーブル１１２に基づいて、当該ＩＰアドレスに対応するノードＩＤに置換する。また、統合ログ生成部１３１は、当該ログファイルに含まれるアカウント名の記述を当該ログファイルに対応するコンポーネントのノードＩＤに置換する。
【０１０６】
統合ログ生成部１３１は、ノードＩＤへ置換後のログファイル（ハイパーバイザ２１０およびハードウェアに関する各ログファイル）と、ハイパーバイザ２１０およびハードウェアのステータスとを、統合ログＤＢ１５０に登録する。具体的には、統合ログ生成部１３１は、ログファイルとステータスとを、ユーザにより選択されたＶＭ名、ハイパーバイザ２１０のノードＩＤおよび現在日時に対応付けたレコードを生成し、統合ログＤＢ１５０に挿入する。これにより、仮想マシン２２０に関連するハイパーバイザ２１０およびハードウェアの統合ログの書き込みが完了する。
【０１０７】
（ＳＴ２３）統合ログＤＢ１５０（ＤＢＭＳ）は、統合ログの書き込み完了をテナント管理部８１０に通知する。
（ＳＴ２４）テナント管理部８１０は、ステップＳＴ１６で取得したハイパーバイザ２１０のノードＩＤを指定して、統合ログの読み出しを統合ログＤＢ１５０に要求する。
【０１０８】
（ＳＴ２５）統合ログＤＢ１５０は、統合ログの読み出しの要求で指定されたノードＩＤをキーに、統合ログ管理テーブル１５１を検索する。統合ログＤＢ１５０は、検索により、指定されたノードＩＤに対応するハイパーバイザ２１０のステータス、ハイパーバイザ２１０のログファイル、ハードウェアのステータスおよびハードウェアのログファイルを取得する。統合ログＤＢ１５０は、取得したステータスおよびログファイルをテナント管理部８１０に応答する。テナント管理部８１０は、ハイパーバイザ２１０のステータスおよびログファイルと、ハードウェアのステータスおよびログファイルとを、クライアント８００のディスプレイに表示させる。クライアント８００により表示されるログでは、ＩＰアドレスやアカウント名がノードＩＤによってマスクされた状態となる。
【０１０９】
なお、ステップＳＴ２４では、テナント管理部８１０は、ハイパーバイザ２１０に関連するハードウェアのノードＩＤにより、統合ログＤＢ１５０を検索することもできる。その場合、テナント管理部８１０は、統合ログ管理テーブル１５１のＨＷログの項目に登録されたログファイルから、全文検索により、当該ハードウェアのノードＩＤを含むログメッセージを検索し、ディスプレイに表示させることもできる。
【０１１０】
このように、管理サーバ１００は、クライアント８００により仮想マシンの識別情報（仮想マシン名）が指定されると、仮想マシンに関連するハイパーバイザやハードウェアのノードＩＤをクライアント８００に送信する。管理サーバ１００は、ノードＩＤの送信後に統合ログの統合ログＤＢ１５０への格納完了の通知をクライアント８００に送信する。管理サーバ１００は、通知に応じてクライアント８００から該当のノードＩＤを受信すると、ノードＩＤに応じた統合ログをクライアント８００に出力（送信）する。これにより、管理サーバ１００は、ノードＩＤを通知済のクライアント８００に対してのみ、当該ノードＩＤに応じた統合ログを提供可能となる。こうして、該当のノードＩＤに関する統合ログの提供範囲を制限することで、余計なユーザに対して統合ログの内容を提供することを防げる。
【０１１１】
次に、上記のシーケンスにおける各部の手順を詳細に説明する。まず、クライアント８００の処理手順を説明する。
図１４は、クライアント処理の例を示すフローチャートである。以下、図１４に示す処理をステップ番号に沿って説明する。
【０１１２】
（Ｓ１１）テナント管理部８１０は、ユーザ７１のユーザＩＤおよびパスワードを受け付け、ＣＭＳプラグイン１３０を介して、ＣＭＳ１２０にログインする。
（Ｓ１２）テナント管理部８１０は、ユーザ７１により入力されたログ取得対象の仮想マシン名（例えば、動作に不具合が生じた仮想マシンの仮想マシン名）を受け付ける。例えば、テナント管理部８１０は、仮想マシン２２０の仮想マシン名を受け付ける。
【０１１３】
（Ｓ１３）テナント管理部８１０は、仮想マシン２２０にＯＳログを要求する。
（Ｓ１４）テナント管理部８１０は、仮想マシン２２０からＯＳログを取得できたか否かを判定する。ＯＳログを取得できた場合、テナント管理部８１０は、ステップＳ１５に処理を進める。ＯＳログを取得できなかった場合、テナント管理部８１０は、ステップＳ２０に処理を進める。
【０１１４】
（Ｓ１５）テナント管理部８１０は、仮想マシン２２０のＯＳログを、クライアント８００のディスプレイに表示させる。
（Ｓ１６）テナント管理部８１０は、該当の仮想マシン（仮想マシン２２０）に関連するハイパーバイザ２１０やハードウェアのノードＩＤをＣＭＳプラグイン１３０に問い合わせる。
【０１１５】
（Ｓ１７）テナント管理部８１０は、ハイパーバイザ２１０のノードＩＤおよびハイパーバイザ２１０に関連するハードウェアのノードＩＤをＣＭＳプラグイン１３０から取得する。
【０１１６】
（Ｓ１８）テナント管理部８１０は、ステップＳ１７で取得したノードＩＤに応じた統合ログを、統合ログＤＢ１５０から取得する。前述のように、テナント管理部８１０は、統合ログＤＢ１５０の検索キーとして、ハイパーバイザ２１０のノードＩＤを利用することもできるし、ハイパーバイザ２１０に関連するハードウェアのノードＩＤを利用することもできる。
【０１１７】
（Ｓ１９）テナント管理部８１０は、取得した統合ログを出力する。具体的には、テナント管理部８１０は、クライアント８００のディスプレイにより統合ログを表示させる。そして、テナント管理部８１０は、処理を終了する。
【０１１８】
（Ｓ２０）テナント管理部８１０は、ＯＳログなしのメッセージを出力する。具体的には、テナント管理部８１０は、クライアント８００のディスプレイにより、該当のＯＳログがない旨のメッセージを表示させる。テナント管理部８１０は、仮想マシン２２０がダウンしている旨のメッセージを表示させてもよい。そして、テナント管理部８１０は、処理を終了する。
【０１１９】
次に、ＣＭＳプラグイン１３０の処理手順を説明する。
図１５は、ＣＭＳ処理の例を示すフローチャートである。以下、図１５に示す処理をステップ番号に沿って説明する。
【０１２０】
（Ｓ２１）ＣＭＳプラグイン１３０は、ログ取得対象の仮想マシン名をテナント管理部８１０から取得する。
（Ｓ２２）ＣＭＳプラグイン１３０は、該当の仮想マシン（仮想マシン２２０）に関連するハイパーバイザおよびハードウェアのノードＩＤをインフラ管理部１４０に問い合わせる。
【０１２１】
（Ｓ２３）ＣＭＳプラグイン１３０は、問い合わせに対して、ノードＩＤを取得できたか否かを判定する。ノードＩＤを取得できた場合、ＣＭＳプラグイン１３０は、ステップＳ２４に処理を進める。ノードＩＤを取得できなかった場合、ＣＭＳプラグイン１３０は、ステップＳ２５に処理を進める。
【０１２２】
（Ｓ２４）ＣＭＳプラグイン１３０は、取得したノードＩＤを基に、統合ログ生成処理を統合ログ生成部１３１に依頼する。また、ＣＭＳプラグイン１３０は、取得したハイパーバイザ２１０のノードＩＤおよびハードウェアのノードＩＤをテナント管理部８１０に通知する。そして、ＣＭＳプラグイン１３０は処理を終了する。
【０１２３】
（Ｓ２５）ＣＭＳプラグイン１３０は、ログ取得の対象ハードウェアなしのメッセージを出力する。具体的には、ＣＭＳプラグイン１３０は、当該メッセージをテナント管理部８１０に通知し、クライアント８００のディスプレイに当該メッセージの内容を表示させる。そして、ＣＭＳプラグイン１３０は、処理を終了する。
【０１２４】
次に、統合ログ生成部１３１の処理手順を説明する。
図１６は、統合ログ生成処理の例を示すフローチャートである。以下、図１６に示す処理をステップ番号に沿って説明する。
【０１２５】
（Ｓ３１）統合ログ生成部１３１は、統合ログ生成処理の依頼を受け付けると、依頼に含まれるノードＩＤを取得する。
（Ｓ３２）統合ログ生成部１３１は、取得したノードＩＤに基づいてハイパーバイザ２１０およびハードウェアに関するログ取得処理を実行する。例えば、統合ログ生成部１３１は、ノードＩＤ管理テーブル１１２に基づいて、取得したノードＩＤに対応するハイパーバイザ２１０のＩＰアドレスを特定し、ハイパーバイザ２１０に対してＨＶログおよびハイパーバイザ２１０のステータスを要求する。また、統合ログ生成部１３１は、ハイパーバイザ２１０のＩＰアドレスに関連するハードウェアのＩＰアドレスを、ＩＰアドレス管理テーブル１１１から特定する。統合ログ生成部１３１は、特定したＩＰアドレスに基づいて、当該ハードウェアのＨＷログおよび当該ハードウェアのステータスを、インフラ管理部１４０に要求する。
【０１２６】
（Ｓ３３）統合ログ生成部１３１は、ハイパーバイザ２１０のＨＶログを取得できたか否かを判定する。ＨＶログを取得できた場合、統合ログ生成部１３１は、ステップＳ３４に処理を進める。ＨＶログを取得できなかった場合、統合ログ生成部１３１は、ステップＳ３５に処理を進める。
【０１２７】
（Ｓ３４）統合ログ生成部１３１は、取得したＨＶログ（ＣＳＶ形式）のＸＭＬ形式への変換、および、変換後ログの統合ログＤＢ１５０への書き込みを行う。ここで、統合ログ生成部１３１は、ＸＭＬ形式に変換したログファイルに含まれるＩＰアドレスやアカウント名を、当該ＩＰアドレスやアカウント名に対応するノードＩＤに置換してから、統合ログＤＢ１５０へ書き込む。そして、統合ログ生成部１３１は、ステップＳ３６に処理を進める。
【０１２８】
（Ｓ３５）統合ログ生成部１３１は、ＨＶログ取得エラーのメッセージを出力する。具体的には、統合ログ生成部１３１は、当該メッセージをテナント管理部８１０に通知し、クライアント８００のディスプレイに当該メッセージの内容を表示させる。そして、統合ログ生成部１３１は、ステップＳ３６に処理を進める。
【０１２９】
（Ｓ３６）統合ログ生成部１３１は、インフラ管理部１４０からＨＷログを取得できたか否かを判定する。ＨＷログを取得できた場合、統合ログ生成部１３１は、ステップＳ３７に処理を進める。ＨＷログを取得できなかった場合、統合ログ生成部１３１は、ステップＳ３８に処理を進める。
【０１３０】
（Ｓ３７）統合ログ生成部１３１は、取得したＨＷログ（ＪＳＯＮ形式）のＸＭＬ形式への変換、および、変換後ログおよびログとともに取得されたステータスの統合ログＤＢ１５０への書き込みを行う。ここで、統合ログ生成部１３１は、ＸＭＬ形式に変換したログファイルに含まれるＩＰアドレスやアカウント名を、当該ＩＰアドレスやアカウント名に対応するノードＩＤに置換してから、統合ログＤＢ１５０へ書き込む。そして、統合ログ生成部１３１は、処理を終了する。
【０１３１】
（Ｓ３８）統合ログ生成部１３１は、ＨＷログ取得エラーのメッセージを出力する。具体的には、統合ログ生成部１３１は、当該メッセージをテナント管理部８１０に通知し、クライアント８００のディスプレイに当該メッセージの内容を表示させる。そして、統合ログ生成部１３１は、処理を終了する。
【０１３２】
このように、管理サーバ１００は、ハイパーバイザ２１０に関する第１のデータ形式（例えば、ＣＳＶ形式）のログとハードウェアに関する第２のデータ形式（例えば、ＪＳＯＮ形式）のログとを第３のデータ形式（例えば、ＸＭＬ形式）のログに変換することで、統合ログを取得する。また、管理サーバ１００は、統合ログに対し、仮想基盤におけるＩＰアドレスやアカウント名などの設定情報のノードＩＤへの置換を行う。
【０１３３】
次に、統合ログＤＢ１５０（ＤＢＭＳ）の処理手順を説明する。
図１７は、統合ログＤＢ処理の例を示すフローチャートである。以下、図１７に示す処理をステップ番号に沿って説明する。
【０１３４】
（Ｓ４１）統合ログＤＢ１５０は、統合ログ生成部１３１により生成されたＸＭＬ形式のログファイルおよびステータスを取得する。当該ログファイルは、ＨＶログから生成されたログファイル、および、ＨＷログから生成されたログファイルを含む。また、当該ログファイルは、ＩＰアドレスやアカウント名を含まない（ＩＰアドレスやアカウント名はノードＩＤに置換済である）。
【０１３５】
（Ｓ４２）統合ログＤＢ１５０は、Ｉｎｓｅｒｔ処理を実行する。具体的には、統合ログＤＢ１５０は、統合ログ生成部１３１から、ユーザ７１により選択された仮想マシン名と当該仮想マシン名に対して特定されたハイパーバイザ２１０のノードＩＤを取得する。統合ログＤＢ１５０は、ステップＳ４１で取得したログファイルとステータスとを、仮想マシン名、ハイパーバイザ２１０のノードＩＤおよび現在日時に対応付けたレコードを生成し、統合ログ管理テーブル１５１に挿入する。
【０１３６】
（Ｓ４３）統合ログＤＢ１５０は、Ｉｎｓｅｒｔ結果をテナント管理部８１０に通知する。
（Ｓ４４）統合ログＤＢ１５０は、ハイパーバイザ２１０のノードＩＤを含む統合ログの検索クエリを、テナント管理部８１０から取得する。
【０１３７】
（Ｓ４５）統合ログＤＢ１５０は、検索クエリに含まれるノードＩＤをキーに、統合ログ管理テーブル１５１を検索し、該当の統合ログがあるか否かを判定する。該当の統合ログがある場合、統合ログＤＢ１５０は、ステップＳ４６に処理を進める。該当の統合ログがない場合、統合ログＤＢ１５０は、ステップＳ４８に処理を進める。
【０１３８】
（Ｓ４６）統合ログＤＢ１５０は、検索により取得した統合ログを、テナント管理部８１０に応答する。
（Ｓ４７）統合ログＤＢ１５０は、応答した統合ログのレコードを、統合ログ管理テーブル１５１から削除する。そして、統合ログＤＢ１５０は、処理を終了する。
【０１３９】
（Ｓ４８）統合ログＤＢ１５０は、該当ログなしのメッセージを出力する。具体的には、統合ログＤＢ１５０は、当該メッセージをテナント管理部８１０に通知し、クライアント８００のディスプレイに当該メッセージの内容を表示させる。そして、統合ログＤＢ１５０は、処理を終了する。
【０１４０】
なお、統合ログＤＢ１５０は、ステップＳ４４では、ハイパーバイザ２１０に関連するハードウェアのノードＩＤを含む検索クエリを受け付けることもある。この場合、統合ログＤＢ１５０は、統合ログ管理テーブル１５１に登録されたＨＷログのうち、当該ハードウェアのノードＩＤを含むログメッセージを全文検索により検索し、検索されたログメッセージを出力する。
【０１４１】
統合ログは、単一の形式（ＸＭＬ形式）である。このため、テナント管理部８１０は、ハイパーバイザ２１０のログとハイパーバイザ２１０に関連するハードウェア（ＶＭ実行サーバ２００、スイッチ４００およびストレージ６００など）のログとを、単一のＧＵＩ（Graphical User Interface）で表示可能である。ユーザ７１は、テナント管理部８１０により提供される単一のＧＵＩでハイパーバイザ２１０や各ハードウェアのログを確認できるので、障害などに対するログの分析を効率的に行うことができる。
【０１４２】
次に、管理サーバ１００において、統合ログを作成しない場合を想定した比較例のシーケンスを説明する。例えば、統合ログ生成部１３１およびテナント管理部８１０の機能がない場合、管理サーバ１００によるログ提供処理は、次のような流れとなる。
【０１４３】
図１８は、ログ提供処理の比較例を示すシーケンス図である。以下、図１８に示す処理をステップ番号に沿って説明する。
（ＳＴ１０１）クライアント８００は、障害発生に応じて、ユーザ７１により選択された仮想マシン２２０のＯＳログを仮想マシン２２０に要求する。
【０１４４】
（ＳＴ１０２）仮想マシン２２０は、ＯＳログの要求に応じて、クライアント８００にＯＳログを応答する。クライアント８００は、仮想マシン２２０のＯＳログをクライアント８００のディスプレイに表示させる。
【０１４５】
（ＳＴ１０３）ユーザ７１は、障害に対するログの問合せを管理者８１に対して行う。例えば、ログの問合せは、電話や電子メールなどによって行われる。管理者８１は、問合せの内容を確認すると、管理端末３０を操作して、仮想マシン２２０に関連するハイパーバイザ２１０やハードウェアのログの参照を開始する。
【０１４６】
（ＳＴ１０４）管理端末３０は、管理者８１の指示により、ＣＭＳプラグイン１３０にＶＭ関連情報の問合せを依頼する。ＶＭ関連情報の問合せは、仮想マシン２２０に関連するハイパーバイザ２１０やハードウェアのノードＩＤおよびＩＰアドレスの問合せである。
【０１４７】
（ＳＴ１０５）ＣＭＳプラグイン１３０は、仮想マシン２２０に関連するノード（ハイパーバイザやハードウェア）の照会（ＶＭ関連情報の照会）をインフラ管理部１４０に依頼する。
【０１４８】
（ＳＴ１０６）インフラ管理部１４０は、該当のノードのノードＩＤやＩＰアドレスの照会結果をＣＭＳプラグイン１３０に応答する。
（ＳＴ１０７）ＣＭＳプラグイン１３０は、インフラ管理部１４０から取得した照会結果を、管理端末３０に応答する。
【０１４９】
（ＳＴ１０８）管理端末３０は、ステップＳＴ１０７の照会結果に含まれるハードウェアのＩＰアドレスに基づいて、インフラ管理部１４０にＨＷログを要求する。
（ＳＴ１０９）インフラ管理部１４０は、ＨＷログの要求に応じて、該当のＩＰアドレスに対応するハードウェアのＨＷログを管理端末３０に応答する。管理端末３０は、ＨＷログの内容を管理端末３０のディスプレイに表示させる。
【０１５０】
（ＳＴ１１０）管理端末３０は、ステップＳＴ１０７の照会結果に含まれるハイパーバイザ２１０のＩＰアドレスに基づいて、ハイパーバイザ２１０にＨＶログを要求する。
（ＳＴ１１１）ハイパーバイザ２１０は、ＨＶログの要求に応じて、ＨＶログを管理端末３０に応答する。管理端末３０は、ＨＶログの内容を管理端末３０のディスプレイに表示させる。ここで、ＨＶログとＨＷログとは別個のファイル形式であるため、管理端末３０は、ＨＶログの表示を、ＨＷログとは異なるＧＵＩを用いて行う。
【０１５１】
（ＳＴ１１２）管理者８１は、管理端末３０により表示されたＨＶログおよびＨＷログを確認して、ＨＶログおよびＨＷログの内容を、ユーザ７１に回答する。例えば、回答は、電話や電子メールなどによって行われる。
【０１５２】
このように、ユーザ７１が管理者８１を介してＨＶログやＨＷログの内容を確認することも考えられる。しかし、ユーザ７１が管理者８１を介してＨＶログやＨＷログの内容を確認していると、ユーザ７１と管理者８１とのコミュニケーションに時間がかかり、仮想マシン２２０で障害が発生した時の障害対応が遅れる可能性がある。一方、ユーザ７１に対して、情報処理システム内の仮想基盤における全ての情報を提供することはセキュリティ上、好ましくない。例えば、ＨＶログやＨＷログには、システム内部で用いられるＩＰアドレスやアカウント名など、外部のユーザ７１により悪用されたり誤用されたりすると、システムの運用に悪影響を及ぼす情報が含まれるからである。
【０１５３】
そこで、管理サーバ１００は、マルチテナント環境での階層化された管理者のセキュリティ権限を意識したログ管理を実現する。具体的には、ユーザによるログ閲覧時に、セキュリティに関する情報を除いた情報とすることで、ＧＵＩを介してユーザがＨＶログやＨＷログを閲覧可能にする。より具体的には、管理サーバ１００は、統合ログ生成部１３１の機能により、ＨＶログやＨＷログに含まれるＩＰアドレスやアカウント名といった特定の情報を、ハイパーバイザ２１０のノードＩＤやハードウェアのノードＩＤに置換する。前述のように、ノードＩＤは、システム内の制御に用いられる情報ではないため、ノードＩＤを用いてシステムに危害が加えられることはない。このため、システム側の安全性を確保しながら（すなわち、特定の情報の流出を抑えながら）、クライアント８００へ仮想基盤に関するログの一部を提供することが可能になる。
【０１５４】
また、管理サーバ１００は、ＸＭＬ形式の統合ログを作成することで、統一された形式で、仮想マシン２２０に関連するハイパーバイザ２１０やハードウェアのログを確認可能となる。例えば、ユーザ７１は、テナント管理部８１０により提供される単一のＧＵＩでハイパーバイザ２１０や各ハードウェアのログを確認できるので、障害などに対するログの分析を効率的に行えるようになる。
【０１５５】
更に、管理サーバ１００による管理対象のハードウェアとして、主に、ＶＭ実行サーバ２００，３００のハードウェア、スイッチ４００，５００およびストレージ６００，７００を例示したが、他のハードウェアを管理対象としてもよい。例えば、管理サーバ１００は、ＳＡＮ６０に属するＳＡＮ用のスイッチや負荷分散装置などのシステム内部で使用され得る他の種類の装置のログについても、特定の情報を秘匿化した上で、ユーザへの提供対象としてもよい。
【０１５６】
なお、第１の実施の形態の情報処理は、処理部１ｂにプログラムを実行させることで実現できる。また、第２の実施の形態の情報処理は、プロセッサ１０１にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体１３に記録できる。
【０１５７】
例えば、プログラムを記録した記録媒体１３を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータに格納しておき、ネットワーク経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体１３に記録されたプログラムまたは他のコンピュータから受信したプログラムを、ＲＡＭ１０２やＨＤＤ１０３などの記憶装置に格納し（インストールし）、当該記憶装置からプログラムを読み込んで実行してもよい。
【０１５８】
以上の第１，第２の実施の形態を含む実施形態に関し、更に以下の付記を開示する。
（付記１）  仮想マシンの識別情報と前記仮想マシンを動作させる物理マシン上のハイパーバイザのアドレスと前記物理マシンに関連するハードウェアのアドレスとの対応を示す管理情報を記憶する記憶部と、
前記識別情報が指定されると、前記管理情報に基づいて、前記ハイパーバイザおよび前記ハードウェアに関する第１のログを取得し、前記第１のログに含まれる特定の情報を前記ハイパーバイザに対応する所定のノード識別子に置換した第２のログを生成して前記記憶部に格納し、前記ノード識別子に基づいて前記記憶部に記憶された前記第２のログを出力する処理部と、
を有するログ管理装置。
【０１５９】
（付記２）  前記特定の情報は、前記ハイパーバイザに関する第１の設定情報と、前記ハードウェアに関する第２の設定情報とを含み、
前記処理部は、前記第１のログのうち、前記第１の設定情報を前記ハイパーバイザの第１のノード識別子に置換し、前記第２の設定情報を前記ハードウェアの第２のノード識別子に置換する、
付記１記載のログ管理装置。
【０１６０】
（付記３）  前記第１の設定情報は、前記ハイパーバイザのアドレスおよび前記ハイパーバイザへのアクセスに用いられるアカウントの情報の両方または何れか一方であり、
前記第２の設定情報は、前記ハードウェアのアドレスおよび前記ハードウェアへのアクセスに用いられるアカウントの情報の両方または何れか一方である、
付記２記載のログ管理装置。
【０１６１】
（付記４）  前記処理部は、前記第１のノード識別子を前記ハイパーバイザから取得し、前記ハイパーバイザのアドレスに関連付けて前記記憶部に格納し、前記第２のノード識別子を前記ハードウェアから取得し、前記ハードウェアのアドレスに関連付けて前記記憶部に格納する、付記２または３記載のログ管理装置。
【０１６２】
（付記５）  前記処理部は、前記ハイパーバイザに関する第１のデータ形式のログと前記ハードウェアに関する第２のデータ形式のログとを第３のデータ形式のログに変換することで、前記第１のログを取得する、付記１乃至４の何れか１つに記載のログ管理装置。
【０１６３】
（付記６）  前記処理部は、端末装置により前記識別情報が指定されると、前記ノード識別子を前記端末装置に送信し、前記ノード識別子の送信後に前記第２のログの前記記憶部への格納完了の通知を前記端末装置に送信し、前記通知に応じて前記端末装置から前記ノード識別子を受信すると、前記ノード識別子に応じた前記第２のログを前記端末装置に出力する、付記１記載のログ管理装置。
【０１６４】
（付記７）  ハイパーバイザを実行し、仮想マシンを動作させる情報処理装置と、
前記仮想マシンの識別情報と前記ハイパーバイザのアドレスと前記情報処理装置に関連するハードウェアのアドレスとの対応を示す管理情報を記憶する記憶部を有し、前記識別情報が指定されると、前記管理情報に基づいて、前記ハイパーバイザおよび前記ハードウェアに関する第１のログを取得し、前記第１のログに含まれる特定の情報を前記ハイパーバイザに対応する所定のノード識別子に置換した第２のログを生成して前記記憶部に格納し、前記ノード識別子に基づいて前記記憶部に記憶された前記第２のログを出力するログ管理装置と、
を有する情報処理システム。
【０１６５】
（付記８）  前記特定の情報は、前記ハイパーバイザに関する第１の設定情報と、前記ハードウェアに関する第２の設定情報とを含み、
前記ログ管理装置は、前記第１のログのうち、前記第１の設定情報を前記ハイパーバイザの第１のノード識別子に置換し、前記第２の設定情報を前記ハードウェアの第２のノード識別子に置換する、
付記７記載の情報処理システム。
【０１６６】
（付記９）  前記第１の設定情報は、前記ハイパーバイザのアドレスおよび前記ハイパーバイザへのアクセスに用いられるアカウントの情報の両方または何れか一方であり、
前記第２の設定情報は、前記ハードウェアのアドレスおよび前記ハードウェアへのアクセスに用いられるアカウントの情報の両方または何れか一方である、
付記８記載の情報処理システム。
【０１６７】
（付記１０）  前記ログ管理装置は、前記第１のノード識別子を前記ハイパーバイザから取得し、前記ハイパーバイザのアドレスに関連付けて前記記憶部に格納し、前記第２のノード識別子を前記ハードウェアから取得し、前記ハードウェアのアドレスに関連付けて前記記憶部に格納する、付記８または９記載の情報処理システム。
【０１６８】
（付記１１）  前記ログ管理装置は、前記ハイパーバイザに関する第１のデータ形式のログと前記ハードウェアに関する第２のデータ形式のログとを第３のデータ形式のログに変換することで、前記第１のログを取得する、付記７乃至１０の何れか１つに記載の情報処理システム。
【０１６９】
（付記１２）  前記ログ管理装置は、端末装置により前記識別情報が指定されると、前記ノード識別子を前記端末装置に送信し、前記ノード識別子の送信後に前記第２のログの前記記憶部への格納完了の通知を前記端末装置に送信し、前記通知に応じて前記端末装置から前記ノード識別子を受信すると、前記ノード識別子に応じた前記第２のログを前記端末装置に出力する、付記７記載の情報処理システム。
【０１７０】
（付記１３）  仮想マシンの識別情報が指定されると、前記識別情報と前記仮想マシンを動作させる物理マシン上のハイパーバイザのアドレスと前記物理マシンに関連するハードウェアのアドレスとの対応を示す管理情報に基づいて、前記ハイパーバイザおよび前記ハードウェアに関する第１のログを取得し、
前記第１のログに含まれる特定の情報を前記ハイパーバイザに対応する所定のノード識別子に置換した第２のログを生成して記憶部に格納し、
前記ノード識別子に基づいて前記記憶部に記憶された前記第２のログを出力する、
処理をコンピュータに実行させるプログラム。
【０１７１】
（付記１４）  前記特定の情報は、前記ハイパーバイザに関する第１の設定情報と、前記ハードウェアに関する第２の設定情報とを含み、
前記第１のログのうち、前記第１の設定情報を前記ハイパーバイザの第１のノード識別子に置換し、前記第２の設定情報を前記ハードウェアの第２のノード識別子に置換する、
付記１３記載のプログラム。
【０１７２】
（付記１５）  前記第１の設定情報は、前記ハイパーバイザのアドレスおよび前記ハイパーバイザへのアクセスに用いられるアカウントの情報の両方または何れか一方であり、
前記第２の設定情報は、前記ハードウェアのアドレスおよび前記ハードウェアへのアクセスに用いられるアカウントの情報の両方または何れか一方である、
付記１４記載のプログラム。
【０１７３】
（付記１６）  前記第１のノード識別子を前記ハイパーバイザから取得し、前記ハイパーバイザのアドレスに関連付けて前記記憶部に格納し、前記第２のノード識別子を前記ハードウェアから取得し、前記ハードウェアのアドレスに関連付けて前記記憶部に格納する、付記１４または１５記載のプログラム。
【０１７４】
（付記１７）  前記ハイパーバイザに関する第１のデータ形式のログと前記ハードウェアに関する第２のデータ形式のログとを第３のデータ形式のログに変換することで、前記第１のログを取得する、付記１３乃至１６の何れか１つに記載のプログラム。
【０１７５】
（付記１８）  端末装置により前記識別情報が指定されると、前記ノード識別子を前記端末装置に送信し、前記ノード識別子の送信後に前記第２のログの前記記憶部への格納完了の通知を前記端末装置に送信し、前記通知に応じて前記端末装置から前記ノード識別子を受信すると、前記ノード識別子に応じた前記第２のログを前記端末装置に出力する、付記１３記載のプログラム。
【符号の説明】
【０１７６】
１  ログ管理装置
１ａ  記憶部
１ｂ  処理部
２，３  情報処理装置
２ａ，３ａ  ハイパーバイザ
２ｂ，２ｃ，３ｂ，３ｃ  仮想マシン
４，５  スイッチ
６，７  ストレージ
８，９  端末装置
１０，２０  ネットワーク
Ｌ１  第１のログ
Ｌ２  第２のログ
Ｔ１  管理情報
【図１】
2019067288.tif 000003
【図２】
2019067288.tif 000004
【図３】
2019067288.tif 000005
【図４】
2019067288.tif 000006
【図５】
2019067288.tif 000007
【図６】
2019067288.tif 000008
【図７】
2019067288.tif 000009
【図８】
2019067288.tif 000010
【図９】
2019067288.tif 000011
【図１０】
2019067288.tif 000012
【図１１】
2019067288.tif 000013
【図１２】
2019067288.tif 000014
【図１３】
2019067288.tif 000015
【図１４】
2019067288.tif 000016
【図１５】
2019067288.tif 000017
【図１６】
2019067288.tif 000018
【図１７】
2019067288.tif 000019
【図１８】
2019067288.tif 000020