JP2021006961A - 情報処理システム及び影響範囲特定プログラム - Google Patents

情報処理システム及び影響範囲特定プログラム Download PDF

Info

Publication number
JP2021006961A
JP2021006961A JP2019120906A JP2019120906A JP2021006961A JP 2021006961 A JP2021006961 A JP 2021006961A JP 2019120906 A JP2019120906 A JP 2019120906A JP 2019120906 A JP2019120906 A JP 2019120906A JP 2021006961 A JP2021006961 A JP 2021006961A
Authority
JP
Japan
Prior art keywords
information
request
virtual machine
virtual machines
information indicating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019120906A
Other languages
English (en)
Inventor
陽介 近藤
Yosuke Kondo
陽介 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2019120906A priority Critical patent/JP2021006961A/ja
Publication of JP2021006961A publication Critical patent/JP2021006961A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】障害の影響範囲を精度良く特定することを可能とする情報処理システム及び影響範囲特定プログラムを提供する。【解決手段】管理装置1は、複数の仮想マシン3a〜3fのそれぞれが送信または受信を行ったリクエストに対応するリクエスト情報を取得し、取得したリクエスト情報に基づいて、複数の仮想マシン間において互いに連携する仮想マシンの組合せを示す連携情報を生成し、複数の物理マシンのうちのいずれかの物理マシンにおいて所定の障害が発生した場合、連携情報を参照し、いずれかの物理マシンにおいて動作する仮想マシンのうちのいずれかと連携する1以上の仮想マシンを特定し、特定した1以上の仮想マシンを示す情報を出力する。【選択図】図10

Description

本発明は、情報処理システム及び影響範囲特定プログラムに関する。
近年、物理マシンの性能向上に伴い、複数の仮想マシン(VM:Virtual Machine)を1つの物理マシンに集約する仮想化技術の研究が進められている。この仮想化技術では、例えば、仮想化ソフトウエア(ハイパーバイザ)が物理マシンの物理リソースを複数の仮想マシンに割当てることにより、各仮想マシンにおいて動作するOS(Operating System)やアプリケーションによるサービスの提供を可能にする。
具体的に、仮想マシンの貸し出しを行う事業者(以下、クラウド事業者とも呼ぶ)は、例えば、仮想マシンを借り受ける利用者(以下、クラウド利用者とも呼ぶ)に対して、必要な量の物理リソースが割り当てられた仮想マシンの貸し出しを行う。そして、クラウド利用者は、例えば、クラウド事業者から借り受けた仮想マシンにおいて、ユーザに対してサービスを提供するための情報処理システムを構築する。
上記のような情報処理システムにおいて、例えば、物理マシンのハードウエア障害等が発生した場合、クラウド事業者は、障害の影響を受ける可能性がある仮想マシンを特定する。そして、クラウド事業者は、特定した仮想マシンに関する情報をクラウド利用者に通知する。これにより、クラウド利用者は、障害の発生によるサービスへの影響範囲を把握することが可能になる(例えば、特許文献1乃至4参照)。
特開2009−217709号公報 特開2014−207594号公報 特開2010−009411号公報 国際公開第2015/072004号
ここで、上記のようなハードウエア障害等が発生した場合、クラウド事業者は、障害の影響を受ける可能性がある仮想マシンの特定を精度良く行うことが好ましい。そこで、クラウド事業者は、例えば、ハードウエア障害等が発生した物理マシン上で動作する仮想マシンだけでなく、その仮想マシンと通信を行っている仮想マシンについても障害の影響を受ける可能性がある仮想マシンとして特定する。
しかしながら、例えば、外部の物理マシンや仮想マシン(クラウド事業者の管理対象外である物理マシンや仮想マシン)を経由して通信を行う複数の仮想マシンが存在する場合、クラウド事業者は、これらの仮想マシン間における通信を検知することが困難である。そのため、クラウド事業者は、障害の影響を受ける可能性がある仮想マシンの特定を精度良く行うことができない場合がある。
そこで、一つの側面では、本発明は、障害の影響範囲を精度良く特定することを可能とする情報処理システム及び影響範囲特定プログラムを提供することを目的とする。
実施の形態の一態様では、複数の仮想マシンのそれぞれをいずれかにおいて動作させる複数の物理マシンと、前記複数の仮想マシンを制御する管理装置とを有する情報処理システムであって、前記管理装置は、前記複数の仮想マシンのそれぞれが送信または受信を行ったリクエストに対応するリクエスト情報を取得し、取得した前記リクエスト情報に基づいて、前記複数の仮想マシン間において互いに連携する仮想マシンの組合せを示す連携情報を生成し、前記複数の物理マシンのうちのいずれかの物理マシンにおいて所定の障害が発生した場合、前記連携情報を参照し、前記いずれかの物理マシンにおいて動作する仮想マシンのうちのいずれかと連携する1以上の仮想マシンを特定し、特定した前記1以上の仮想マシンを示す情報を出力する。
一つの側面によれば、障害の影響範囲を精度良く特定することを可能とする。
図1は、情報処理システム10の構成について説明する図である。 図2は、外部の物理マシン等を経由した通信の具体例を説明する図である。 図3は、物理マシン2のハードウエア構成を説明する図である。 図4は、管理装置1のハードウエア構成を説明する図である。 図5は、仮想マシン3の機能のブロック図である。 図6は、管理装置1の機能のブロック図である。 図7は、第1の実施の形態における影響範囲特定処理の概略を説明するフローチャート図である。 図8は、第1の実施の形態における影響範囲特定処理の概略を説明するフローチャート図である。 図9は、第1の実施の形態における影響範囲特定処理の概略を説明する図である。 図10は、第1の実施の形態における影響範囲特定処理の概略を説明する図である。 図11は、第1の実施の形態における影響範囲特定処理の詳細を説明するフローチャート図である。 図12は、第1の実施の形態における影響範囲特定処理の詳細を説明するフローチャート図である。 図13は、第1の実施の形態における影響範囲特定処理の詳細を説明するフローチャート図である。 図14は、第1の実施の形態における影響範囲特定処理の詳細を説明するフローチャート図である。 図15は、第1の実施の形態における影響範囲特定処理の詳細を説明するフローチャート図である。 図16は、第1の実施の形態における影響範囲特定処理の詳細を説明するフローチャート図である。 図17は、第1の実施の形態における影響範囲特定処理の詳細を説明するフローチャート図である。 図18は、リクエスト情報131の具体例について説明する図である。 図19は、連携情報132の具体例について説明する図である。 図20は、処理情報135の具体例について説明する図である。 図21は、ファイル情報136の具体例について説明する図である。 図22は、VM管理情報133の具体例について説明する図である。 図23は、VM管理情報133の具体例について説明する図である。 図24は、連携情報132の具体例について説明する図である。 図25は、VM配置情報137の具体例について説明する図である。 図26は、障害情報134の具体例について説明する図である。 図27は、障害情報134の具体例について説明する図である。
[情報処理システムの構成]
初めに、情報処理システム10の構成について説明を行う。図1は、情報処理システム10の構成について説明する図である。
図1に示すように、情報処理システム10は、例えば、管理装置1と、1台以上の物理マシン2と、操作端末5とを含む。操作端末5は、例えば、クラウド事業者が各種情報の入力等を行う端末であって、インターネットやイントラネット等のネットワークNWを介して物理マシン2にアクセス可能な端末である。
各物理マシン2は、CPU(Central Computing Unit)と、メモリ(DRAM:Dynamic Random Access Memory)と、ハードディスク(HDD:Hard Disk Drive)等とを有する。そして、各物理マシン2の物理リソースは、複数の仮想マシン3に対してそれぞれ割当てられる。
各仮想マシン3は、クラウド利用者がユーザに対してサービスを行うために必要な各種処理を実行する。
管理装置1は、物理マシン2において動作する仮想マシン3のそれぞれを制御する物理マシンまたは仮想マシンである。具体的に、管理装置1は、例えば、必要に応じて仮想マシン3の生成や削除等を行う。
仮想化ソフトウエア4は、各物理マシン2の物理リソースを割り当てることによって各仮想マシン3を動作させる基盤ソフトウエアである。仮想化ソフトウエア4は、例えば、管理装置1において動作する。
上記のような情報処理システム10において、例えば、物理マシン2のハードウエア障害等が発生した場合、クラウド事業者は、障害の影響を受ける可能性がある仮想マシン3を特定してクラウド利用者に通知する。具体的に、クラウド事業者は、例えば、ハードウエア障害等が発生した物理マシン2において動作する仮想マシン3に加え、その仮想マシン3と通信を行っている他の仮想マシン3を、障害の影響を受ける可能性がある仮想マシン3として特定して通知を行う。
ここで、上記のような仮想マシン3は、外部の物理マシンや仮想マシン(クラウド事業者の管理対象外である物理マシンや仮想マシン)を経由することによって互いに通信を行う場合がある。以下、外部の物理マシン等を経由した通信が行われる場合について説明を行う。
[外部の物理マシン等を経由した通信の具体例]
図2は、外部の物理マシン等を経由した通信の具体例を説明する図である。以下、物理マシン2a及び2bのそれぞれが図1で説明した物理マシン2に対応し、仮想マシン3a、3b、3c、3d、3e及び3fのそれぞれが図1で説明した仮想マシン3に対応するものとして説明を行う。
図2に示す例において、物理マシン2aでは、仮想マシン3a、3b及び3cが動作しており、物理マシン2bでは、仮想マシン3d、3e及び3fが動作している。そして、図2に示す例において、仮想マシン3b及び仮想マシン3fのそれぞれは、外部の物理マシン11を経由して互いに通信を行うことにより、クラウド利用者がユーザに対してサービスを提供するための処理を実行する。
上記のような場合において、例えば、仮想マシン3bと仮想マシン3fとの間で直接的な通信(外部の物理マシン11を経由しない通信)が行われていない場合、管理装置1は、仮想マシン3bと仮想マシン3fとの間における連携を検知することができない。そのため、管理装置1は、例えば、仮想マシン3b及び仮想マシン3fのうちの一方の仮想マシン3が動作する物理マシン2(物理マシン2aまたは物理マシン2b)において障害が発生した場合であっても、その障害の影響範囲が他方の仮想マシン3にも及ぶ旨の判定を行うことができない。
したがって、管理装置1は、発生した障害の影響範囲をクラウド利用者に対して精度良く通知することができない場合がある。
そこで、本実施の形態における管理装置1は、複数の仮想マシン3のそれぞれが送信または受信を行ったリクエストに対応するリクエスト情報を取得する。そして、管理装置1は、取得したリクエスト情報に基づいて、複数の仮想マシン3間において互いに連携する仮想マシン3の組合せを示す連携情報を生成する。
その後、複数の物理マシン2のうちのいずれかの物理マシン2において所定の障害が発生した場合、管理装置1は、生成した連携情報を参照し、そのいずれかの物理マシン2において動作する仮想マシン3のうちのいずれかと連携する1以上の仮想マシン3を特定し、特定した1以上の仮想マシン3を示す情報を出力する。
すなわち、管理装置1は、各仮想マシン3が行ったリクエストの内容や通信先の傾向から、連携して処理を行っている仮想マシン3の組合せを推定する。そして、管理装置1は、物理マシン2のいずれかにおいて障害が発生した場合、障害が発生した物理マシン2において動作する仮想マシン3だけでなく、その仮想マシン3と連携して処理を行っていると推定した仮想マシン3についても、発生した障害の影響を受ける仮想マシン3として特定する。
これにより、管理装置1は、障害の影響を受ける可能性がある仮想マシン3の特定を精度良く行うことが可能になる。そのため、管理装置1は、発生した障害の影響範囲についてのより正確な情報をクラウド利用者に対して通知することが可能になる。
[情報処理システムのハードウエア構成]
次に、情報処理システム10のハードウエア構成について説明する。図3は、物理マシン2のハードウエア構成を説明する図である。また、図4は、管理装置1のハードウエア構成を説明する図である。
初めに、物理マシン2のハードウエア構成について説明を行う。
物理マシン2は、図3に示すように、プロセッサであるCPU201と、メモリ202と、外部インターフェース(I/Oユニット)203と、記憶媒体204とを有する。各部は、バス205を介して互いに接続される。
記憶媒体204は、例えば、障害の影響範囲を特定する処理(以下、影響範囲特定処理とも呼ぶ)を行うためのプログラム210を記憶するプログラム格納領域(図示しない)を有する。また、記憶媒体204は、例えば、影響範囲特定処理を行う際に用いられる情報を記憶する記憶部230(以下、情報格納領域230とも呼ぶ)を有する。なお、記憶媒体204は、例えば、HDDやSSD(Solid State Drive)であってよい。
CPU201は、記憶媒体204からメモリ202にロードされたプログラム210を実行して影響範囲特定処理を行う。
また、外部インターフェース203は、例えば、管理装置1との通信やネットワークNWを介した操作端末5との通信を行う。
次に、管理装置1のハードウエア構成について説明を行う。
管理装置1は、図4に示すように、プロセッサであるCPU101と、メモリ102と、外部インターフェース(I/Oユニット)103と、記憶媒体104とを有する。各部は、バス105を介して互いに接続される。
記憶媒体104は、例えば、影響範囲特定処理を行うためのプログラム110を記憶するプログラム格納領域(図示しない)を有する。また、記憶媒体104は、例えば、影響範囲特定処理を行う際に用いられる情報を記憶する記憶部130(以下、情報格納領域130とも呼ぶ)を有する。なお、記憶媒体104は、例えば、HDDやSSDであってよい。
CPU101は、記憶媒体104からメモリ102にロードされたプログラム110を実行して影響範囲特定処理を行う。
また、外部インターフェース103は、例えば、物理マシン2との通信やネットワークNWを介した操作端末5との通信を行う。
[情報処理システムの機能]
次に、情報処理システム10の機能について説明を行う。図5は、仮想マシン3の機能のブロック図である。また、図6は、管理装置1の機能のブロック図である。
初めに、仮想マシン3(物理マシン2において動作する仮想マシン3)の機能のブロック図について説明を行う。
物理マシン2は、図5に示すように、例えば、CPU201やメモリ202等のハードウエアとプログラム210とが有機的に協働することにより、仮想マシン3の機能として、リクエスト検知部311と、情報管理部312と、情報送信部313とを含む各種機能を実現する。
また、仮想マシン3は、例えば、図5に示すように、リクエスト情報131を情報格納領域330に記憶する。
リクエスト検知部311は、例えば、自装置(仮想マシン3)が通信先に対してリクエストの送信を行ったことを検知する。また、リクエスト検知部311は、例えば、自装置(仮想マシン3)が通信先からリクエストの受信を行ったことを検知する。
情報管理部312は、リクエスト検知部311が送信または受信を検知したリクエストに対応するリクエスト情報131を情報格納領域330に記憶する。
情報送信部313は、情報格納領域330に記憶されたリクエスト情報131を管理装置1に送信する。具体的に、情報送信部313は、例えば、所定時間ごとに、情報格納領域330に記憶(蓄積)されたリクエスト情報131を管理装置1に送信する。
次に、管理装置1の機能のブロック図について説明を行う。
管理装置1は、図6に示すように、例えば、CPU101やメモリ102等のハードウエアとプログラム110とが有機的に協働することにより、情報取得部111と、情報管理部112と、情報生成部113と、状態確認部114と、障害検知部115と、範囲特定部116と、情報出力部117とを含む各種機能を実現する。
また、管理装置1は、例えば、図6に示すように、リクエスト情報131と、連携情報132と、VM管理情報133と、障害情報134と、処理情報135と、ファイル情報136と、VM配置情報137とを情報格納領域130に記憶する。
情報取得部111は、例えば、仮想マシン3のそれぞれから送信されたリクエスト情報131を取得(受信)する。また、情報取得部111は、例えば、各仮想マシン3に対して自発的にアクセスを行い、各仮想マシン3の情報格納領域330に記憶されたリクエスト情報131を取得する。
情報管理部112は、情報取得部111が取得したリクエスト情報131を情報格納領域130に記憶する。すなわち、情報管理部112は、各仮想マシン3から取得したリクエスト情報131のそれぞれを蓄積する。
なお、各仮想マシン3の情報送信部313は、各仮想マシン3のリクエスト検知部311が送信または受信を検知したリクエストをそのまま管理装置1に送信するものであってよい。そして、情報取得部111は、各仮想マシン3のリクエスト検知部311が送信または受信を検知したリクエストをそのまま取得するものであってよい。その後、情報管理部112は、各仮想マシン3から取得したリクエストの内容からリクエスト情報131を生成して情報格納領域130に記憶するものであってもよい。
情報生成部113は、情報格納領域130に記憶されたリクエスト情報131に基づいて、複数の仮想マシン3間において互いに連携する仮想マシン3の組合せを示す連携情報132の生成または更新を行う。
状態確認部114は、例えば、各仮想マシン3にアクセスを行い、各仮想マシン3の動作状態を確認する。具体的に、状態確認部114は、例えば、各仮想マシン3の動作状態の確認を所定時間ごとに行い、削除された仮想マシン3が存在するか否かの判定を行う。そして、状態確認部114が削除された仮想マシン3の存在を検知した場合、情報管理部112は、例えば、情報格納領域130に記憶された連携情報132の生成または更新を行う。
障害検知部115は、例えば、物理マシン2において所定の障害が発生したことを検知する。具体的に、障害検知部115は、例えば、物理マシン2においてハードウエア障害が発生したことを検知する。
範囲特定部116は、障害検知部115が物理マシン2のうちのいずれかにおいて所定の障害が発生したことを検知した場合、情報格納領域130に記憶された連携情報132を参照し、障害が発生した物理マシン2において動作する仮想マシン3のうちのいずれかと連携する仮想マシン3を特定する。
情報出力部117は、例えば、範囲特定部116が特定した仮想マシン3を示す障害情報134を出力する。具体的に、情報出力部117は、例えば、操作端末5に対して障害情報134を出力する。VM管理情報133、処理情報135、ファイル情報136及びVM配置情報137についての説明は後述する。
なお、管理装置1が複数の物理マシンまたは仮想マシンによって構成される場合、上記の管理装置1の各機能は、複数の物理マシンまたは仮想マシンのうちの少なくとも1台において実現されるものであってよい。
[第1の実施の形態の概略]
次に、第1の実施の形態の概略について説明する。図7及び図8は、第1の実施の形態における影響範囲特定処理の概略を説明するフローチャート図である。また、図9及び図10は、第1の実施の形態における影響範囲特定処理の概略を説明する図である。
管理装置1は、図7に示すように、連携情報生成タイミングまで待機する(S1のNO)。連携情報生成タイミングは、例えば、仮想マシン3のいずれかが送信したタイミングである。
そして、連携情報生成タイミングになった場合(S1のYES)、管理装置1は、複数の仮想マシン3のそれぞれが送信または受信を行ったリクエストに対応するリクエスト情報131を取得する(S2)。具体的に、管理装置1は、例えば、各仮想マシン3から送信されたリクエスト情報131を受信する。
さらに、管理装置1は、S2の処理で取得したリクエスト情報131に基づいて、複数の仮想マシン3間において互いに連携する仮想マシン3の組合せを示す連携情報132を生成する(S3)。
続いて、管理装置1は、図8に示すように、物理マシン2のいずれかにおいて所定の障害が発生するまで待機する(S11のNO)。
そして、所定の障害が発生したことを検知した場合(S11のYES)、管理装置1は、連携情報132を参照し、所定の障害が発生した物理マシン2において動作する仮想マシン3のうちのいずれかと連携する1以上の仮想マシン3を特定する(S12)。
その後、管理装置1は、S12の処理で特定した1以上の仮想マシン3を示す情報を出力する(S13)。
これにより、管理装置1は、障害の影響を受ける可能性がある仮想マシン3の特定を精度良く行うことが可能になる。そのため、管理装置1は、発生した障害の影響範囲についてのより正確な情報をクラウド利用者に対して通知することが可能になる。
[第1の実施の形態の具体例]
次に、第1の実施の形態における具体例について説明を行う。図9及び図10は、第1の実施の形態における具体例を説明する図である。
管理装置1は、例えば、図9に示すように、物理マシン2aにおいて動作する仮想マシン3a、3b及び3cのそれぞれと、物理マシン2bにおいて動作する仮想マシン3d、3e及び3fのそれぞれとからリクエスト情報131を取得する(S2)。
そして、管理装置1は、取得したリクエスト情報131のそれぞれから連携情報132を生成する(S3)。具体的に、管理装置1は、この場合、各仮想マシン3が行ったリクエストの内容や通信先の傾向から、仮想マシン3bと仮想マシン3fとが外部の物理マシン11を介して連携していると判定し、これらの仮想マシン3の組合せを含む連携情報132を生成する。
その後、例えば、図10に示すように、物理マシン2bにおいて障害が発生した場合、管理装置1は、連携情報132を参照し、物理マシン2bにおいて動作する仮想マシン3fと連携する仮想マシン3として仮想マシン3bを特定する。そして、管理装置1は、例えば、物理マシン2bにおいて動作する仮想マシン3d、3e及び3fのみでなく、仮想マシン3fと連携する仮想マシン3bを、障害の影響範囲内にある仮想マシン3として特定する(S12)。
すなわち、管理装置1は、仮想マシン3bと仮想マシン3fとが直接的に通信を行っていない場合であっても、これらの仮想マシン3が連携しているものと判定する。これにより、管理装置1は、障害の影響を受ける可能性がある仮想マシン3の特定を精度良くことが可能になる。
[第1の実施の形態の詳細]
次に、第1の実施の形態の詳細について説明する。図11から図17は、第1の実施の形態における影響範囲特定処理の詳細を説明するフローチャート図である。また、図18から図27は、第1の実施の形態における影響範囲特定処理の詳細を説明する図である。
なお、以下、リクエスト情報131の生成が管理装置1において行われるものとして説明を行う。また、以下、各仮想マシン3を必要に応じて第1仮想マシン3、第2仮想マシン3、第3仮想マシン3または第4仮想マシン3とも呼ぶ。
[仮想マシンにおける影響範囲特定処理]
初めに、仮想マシン3における影響範囲特定処理について説明を行う。図11は、仮想マシン3における影響範囲特定処理について説明する図である。
仮想マシン3のリクエスト検知部311は、図11に示すように、自装置(仮想マシン3)から通信先に対するリクエストの送信を検知するまで待機する(S21のNO)。また、リクエスト検知部311は、自装置(仮想マシン3)が通信先からリクエストの受信を行ったことを検知するまで待機する(S21のNO)。
そして、通信先に対するリクエストの送信または受信を検知した場合(S21のYES)、仮想マシン3の情報送信部313は、送信または受信を検知したリクエストを管理装置1に送信する(S22)。
なお、通信先に対するリクエストの送信または受信を検知した場合(S21のYES)、仮想マシン3の情報管理部312は、送信等を検知したリクエストを情報格納領域330に一旦記憶するものであってもよい。そして、情報送信部313は、例えば、情報格納領域330に記憶されたリクエストを管理装置1に対してまとめて送信するものであってもよい。
[管理装置における影響範囲特定処理]
次に、管理装置1における影響範囲特定処理について説明を行う。図12から図17は、管理装置1における影響範囲特定処理について説明する図である。
管理装置1の情報取得部111は、図12に示すように、仮想マシン3のいずれかから送信されたリクエストを受信するまで待機する(S31のNO)。
そして、仮想マシン3のいずれかから送信されたリクエストを受信した場合(S31のYES)、管理装置1の情報管理部112は、受信したリクエストからリクエスト情報131を生成する(S32)。その後、情報管理部112は、S32の処理で生成したリクエスト情報131を情報格納領域130に蓄積する(S33)。以下、リクエスト情報131の具体例について説明を行う。
[リクエスト情報の具体例]
図18は、リクエスト情報131の具体例について説明する図である。
図18に示すリクエスト情報131は、リクエスト情報131に含まれる各情報を識別する「項番」と、各仮想マシン3の名称が記憶される「VM名」と、各仮想マシン3のIDが記憶される「VMID」と、各リクエストの送信または受信が行われた「実行時刻」と、各リクエストの種別が記憶される「種別」とを項目として有する。「種別」には、例えば、仮想マシン3から通信先におけるファイルの更新を要求するリクエストに対応する「PUT」、仮想マシン3から通信先におけるファイルの取得を要求するリクエストに対応する「GET」、または、通信先から仮想マシン3に対してファイルの生成を要求するリクエストに対応する「POST」が記憶される。
また、図18に示すリクエスト情報131は、各リクエストの通信先や処理内容等を特定する情報が記憶される「パラメータ」と、仮想マシン3において生成されるファイル名が記憶される「ファイル名」とを項目として有する。「ファイル名」には、「種別」に「POST」が記憶されている場合、仮想マシン3において生成されるファイル名が記憶され、「種別」に「PUT」または「GET」が記憶されている場合、情報が存在していないことを示す「−」が記憶される。
具体的に、図18に示すリクエスト情報131において、例えば、「項番」が「1」である情報には、「VM名」として「テストVM」が記憶され、「VMID」として「VM00005」が記憶され、「実行時刻」として「2019/2/1 06:10:10」が記憶されている。また、図18に示すリクエスト情報131において、「項番」が「1」である情報には、「種別」として「PUT」が記憶され、「パラメータ」として「/prjA/repo.git」が記憶され、「ファイル名」として「−」が記憶されている。
また、図18に示すリクエスト情報131において、例えば、「項番」が「3」である情報には、「VM名」として「ビルド用VM」が記憶され、「VMID」として「VM00002」が記憶され、「実行時刻」として「2019/3/1 10:15:15」が記憶されている。また、図18に示すリクエスト情報131において、「項番」が「3」である情報には、「種別」として「POST」が記憶され、「パラメータ」として「/build」が記憶され、「ファイル名」として「webapp.java」が記憶されている。
さらに、図18に示すリクエスト情報131において、例えば、「項番」が「4」である情報には、「VM名」として「ビルド用VM」が記憶され、「VMID」として「VM00002」が記憶され、「実行時刻」として「2019/3/1 10:20:20」が記憶されている。また、図18に示すリクエスト情報131において、「項番」が「4」である情報には、「種別」として「GET」が記憶され、「パラメータ」として「/prjA/repo.git」が記憶され、「ファイル名」として「−」が記憶されている。図18に含まれる他の情報についての説明は省略する。
図13に戻り、情報管理部112は、図13に示すように、リクエスト情報確認タイミングまで待機する(S41のNO)。リクエスト情報確認タイミングは、例えば、所定の時間ごとのタイミングであってよい。
そして、リクエスト情報確認タイミングになった場合(S41のYES)、情報管理部112は、情報格納領域130に記憶されたリクエスト情報131が追加されているか否かを判定する(S42)。
その結果、リクエスト情報131が追加されていると判定した場合(S43のYES)、情報生成部113は、情報格納領域130に記憶されたリクエスト情報131を参照し、情報格納領域130に記憶された連携情報132を更新(生成)する(S44)。
一方、リクエスト情報131が追加されていないと判定した場合(S43のNO)、情報生成部113は、S44の処理を行わない。
すなわち、情報管理部112は、例えば、新たなリクエスト情報131が情報格納領域130に記憶されたことを検知した場合に、連携情報132の更新を行う。これにより、情報管理部112は、連携情報132の更新頻度を抑制することが可能になる。以下、S44の処理の詳細について説明を行う。
[S44の処理の詳細(1)]
図16は、S44の処理の詳細について説明するフローチャート図である。
情報生成部113は、図16に示すように、情報格納領域130に記憶されたリクエスト情報131に、第1仮想マシン3から特定の通信先におけるファイルの更新を要求する第1リクエストの送信が行われたことを示す情報と、第2仮想マシン3(第1仮想マシン3と異なる仮想マシン3)から特定の通信先におけるファイルの取得を要求する第2リクエストの送信が行われたことを示す情報とが含まれているか否かを判定する(S101)。
具体的に、図18で説明したリクエスト情報131において、「項番」が「2」である情報には、「VMID」として「VM00001」が記憶され、「種別」として「PUT」が記憶され、「パラメータ」として「/prjA/repo.git」が記憶されている。また、図18で説明したリクエスト情報131において、「項番」が「4」である情報には、「VMID」として「VM00002」が記憶され、「種別」として「GET」が記憶され、「パラメータ」として「/prjA/repo.git」が記憶されている。
すなわち、「項番」が「2」である情報に対応するリクエストは、「VM00001」によって識別される仮想マシン3から、「/prjA/repo.git」によって識別される通信先におけるファイルを更新することを要求するリクエストであり、「項番」が「4」である情報に対応するリクエストは、「VM00002」によって識別される仮想マシン3から、「/prjA/repo.git」によって識別される通信先におけるファイルを取得することを要求するリクエストである。
そのため、情報生成部113は、この場合、S101の処理において、「VM00001」によって識別される仮想マシン3が第1仮想マシン3に該当し、「VM00002」によって識別される仮想マシン3が第2仮想マシン3に該当すると判定する。そして、情報生成部113は、図18で説明したリクエスト情報131に、第1仮想マシン3から通信先におけるファイルの更新を要求する第1リクエストの送信が行われたことを示す情報と、第2仮想マシン3から通信先におけるファイルの取得を要求する第2リクエストの送信が行われたことを示す情報とが含まれていると判定する。
また、「項番」が「5」に対応するリクエストは、「VM00002」によって識別される仮想マシン3から、「/prjA/result.git」によって識別される通信先におけるファイルを更新することを要求するリクエストであり、「項番」が「7」に対応するリクエストは、「VM00003」によって識別される仮想マシン3から、「/prjA/result.git」によって識別される通信先におけるファイルを取得することを要求するリクエストである。
そのため、情報生成部113は、この場合、S101の処理において、「VM00002」によって識別される仮想マシン3が第1仮想マシン3に該当し、「VM00003」によって識別される仮想マシン3が第2仮想マシン3に該当すると判定する。そして、情報生成部113は、図18で説明したリクエスト情報131に、第1仮想マシン3から通信先におけるファイルの更新を要求する第1リクエストの送信が行われたことを示す情報と、第2仮想マシン3から通信先におけるファイルの取得を要求する第2リクエストの送信が行われたことを示す情報とが含まれていると判定する。
図16に戻り、S101の処理において各情報が含まれていると判定した場合(S102のYES)、情報生成部113は、第1仮想マシン3と第2仮想マシン3との組合せを示す情報が含まれるように連携情報132を更新する(S103)。
一方、各情報が含まれていないと判定した場合(S102のNO)、情報生成部113は、S103の処理を行わない。
これにより、管理装置1は、互いに連携して処理を行っている可能性が高い仮想マシン3の組合せを管理することが可能になる。以下、連携情報132の具体例について説明を行う。
[連携情報の具体例]
図19及び図24は、連携情報132の具体例について説明する図である。
図19等に示す連携情報132は、連携情報132に含まれる各情報を識別する「項番」と、各仮想マシン3のIDが記憶される「VMID」と、各仮想マシン3と連携する仮想マシン3のIDが記憶される「連携VMID」とを項目として有する。
具体的に、例えば、S101の処理において、図18で説明したリクエスト情報131に情報が含まれる仮想マシン3のうち、「VM00001」によって識別される仮想マシン3が第1仮想マシン3に該当し、「VM00002」によって識別される仮想マシン3が第2仮想マシン3に該当すると判定された場合、情報生成部113は、図19に示すように、「項番」が「1」である情報の「VMID」及び「連携VMID」に、「VM00001」及び「VM00002」をそれぞれ記憶する。
また、例えば、S101の処理において、図18で説明したリクエスト情報131に情報が含まれる仮想マシン3のうち、「VM00002」によって識別される仮想マシン3が第1仮想マシン3に該当し、「VM00003」によって識別される仮想マシン3が第2仮想マシン3に該当すると判定された場合、情報生成部113は、図19に示すように、「項番」が「2」である情報の「VMID」及び「連携VMID」に、「VM00002」及び「VM00003」をそれぞれ記憶する。
なお、情報生成部113は、S103の処理において、第1リクエストの送信が行われた時刻と第2リクエストの送信が行われた時刻との時間差が所定の閾値以内である場合に限り、連携情報132の更新を行うものであってもよい。
具体的に、情報生成部113は、例えば、図18で説明したリクエスト情報131のうち、第1リクエストに対応する情報の「実行時刻」に記憶された時刻と、第2リクエストに対応する情報の「実行時刻」に記憶された時刻との差が所定の閾値以内(例えば、24時間以内)である場合に限り、第1仮想マシン3と第2仮想マシン3との組合せを示す情報を連携情報132に含めるものであってもよい。
これにより、管理装置1は、互いに連携して処理を行っている可能性が高い仮想マシン3の組合せをより精度良く管理することが可能になる。
[S44の処理の詳細(2)]
図17は、他の実施例におけるS44の処理の詳細について説明するフローチャート図である。
情報生成部113は、図17に示すように、情報格納領域130に記憶されたリクエスト情報131に、特定の通信先から第3仮想マシン3に対して、第1処理を実行することによる第1ファイルの生成を要求する第3リクエストの送信が行われたことを示す情報と、特定の通信先から第4仮想マシン3(第3仮想マシン3と異なる仮想マシン3)に対して、第2処理(第1処理と異なる処理)を実行することによる第2ファイル(第1ファイルと異なるファイル)の生成を要求する第4リクエストの送信が行われたことを示す情報とが含まれているか否かを判定する(S111)。
具体的に、図18で説明したリクエスト情報131において、「項番」が「3」である情報には、「VMID」として「VM00002」が記憶され、「種別」として「POST」が記憶され、「パラメータ」として「/build」が記憶され、「ファイル名」として「webapp.java」が記憶されている。また、図18で説明したリクエスト情報131において、「項番」が「6」である情報には、「VMID」として「VM00003」が記憶され、「種別」として「POST」が記憶され、「パラメータ」として「/deploy」が記憶され、「ファイル名」として「webapp.war」が記憶されている。
すなわち、「項番」が「3」に対応するリクエストは、「VM00002」によって識別される仮想マシン3において、「/bulid」によって識別される処理を実行することで「ファイル名」が「webapp.java」であるファイルの生成を要求するリクエストであり、「項番」が「6」に対応するリクエストは、「VM00003」によって識別される仮想マシン3において、「/deploy」によって識別される処理を実行することで「ファイル名」が「webapp.war」であるファイルの生成を要求するリクエストである。
そのため、情報生成部113は、この場合、S111の処理において、「VM00002」によって識別される仮想マシン3が第3仮想マシン3に該当し、「VM00003」によって識別される仮想マシン3が第4仮想マシン3に該当すると判定する。
図17に戻り、S111の処理において各情報が含まれていると判定した場合(S112のYES)、情報生成部113は、情報格納領域130に記憶された処理情報135に、第1処理と第2処理との組合せを示す情報が含まれているか否かを判定する(S113)。以下、処理情報135の具体例について説明を行う。
[処理情報の具体例]
図20は、処理情報135の具体例について説明する図である。
図20に示す処理情報135は、処理情報135に含まれる各情報を識別する「項番」と、各仮想マシン3において実行される処理が記憶される「処理(1)」と、「処理(1)」に記憶された処理に対応する処理が記憶される「処理(2)」とを項目として有する。
具体的に、図20に示す処理情報135において、「項番」が「1」である情報には、「処理(1)」として「/build」が記憶され、「処理(2)」として「/deploy」が記憶されている。
そして、図18で説明したリクエスト情報131における「項番」が「3」及び「6」である情報の「パラメータ」には、それぞれ「/build」及び「/deploy」が記憶されている。そのため、情報生成部113は、この場合、S113の処理において、第1処理と第2処理との組合せを示す情報が処理情報135に含まれていると判定する。
図17に戻り、情報生成部113は、情報格納領域130に記憶されたファイル情報136を参照し、第1ファイルと第2ファイルとの組合せを示す情報が含まれているか否かを判定する(S114)。以下、ファイル情報136の具体例について説明を行う。
[ファイル情報の具体例]
図21は、ファイル情報136の具体例について説明する図である。
図21に示すファイル情報136は、ファイル情報136に含まれる各情報を識別する「項番」と、各仮想マシン3において生成されるファイル名が記憶される「ファイル名(1)」と、「ファイル名(1)」に記憶されたファイル名に対応するファイル名が記憶される「ファイル名(2)」とを項目として有する。
具体的に、図21に示す処理情報136において、「項番」が「1」である情報には、「ファイル名(1)」として「webapp.java」が記憶され、「ファイル名(2)」として「webapp.war」が記憶されている。
そして、図18で説明したリクエスト情報131における「項番」が「3」及び「6」である情報の「ファイル名」には、それぞれ「webapp.java」及び「webapp.war」が記憶されている。そのため、情報生成部113は、この場合、S114の処理において、第1ファイル名と第2ファイル名との組合せを示す情報がファイル情報136に含まれていると判定する。
図17に戻り、S113及びS114の処理において各情報が含まれていると判定した場合(S115のYES)、情報生成部113は、第3仮想マシン3と第4仮想マシン3との組合せを示す情報が含まれるように連携情報132を更新する(S116)。
一方、S112の処理において各情報が含まれていないと判定した場合(S112のNO)、または、S113及びS114の処理において各情報が含まれていないと判定した場合(S115のNO)、情報生成部113は、S113からS116の処理を行わない。
これにより、管理装置1は、互いに連携して処理を行っている可能性が高い仮想マシン3の組合せを管理することが可能になる。
図14に戻り、管理装置1の状態確認部114は、VM確認タイミングになるまで待機する(S51のNO)。VM確認タイミングは、例えば、所定の時間ごとのタイミングであってよい。
そして、VM確認タイミングになった場合(S51のYES)、状態確認部114は、各仮想マシン3の動作状態を確認し、削除された仮想マシン3が存在するか否かを判定する(S52)。具体的に、状態確認部114は、前回の動作状態確認時から削除された仮想マシン3が存在するか否かを判定する。
その結果、削除された仮想マシン3が存在すると判定した場合(S53のYES)、情報生成部113は、S52の処理で存在すると判定した仮想マシン3が削除されたことを示す情報が反映されるように、情報格納領域130に記憶されたVM管理情報133を更新する(S54)。VM管理情報133は、各仮想マシン3の現在の動作状態を管理する情報である。以下、VM管理情報133の具体例について説明を行う。
[VM管理情報の具体例]
図22及び図23は、VM管理情報133の具体例について説明する図である。
図22等に示すVM管理情報133は、VM管理情報133に含まれる各情報を識別する「項番」と、各仮想マシン3の名称が記憶される「VM名」と、各仮想マシン3のIDが記憶される「VMID」と、各仮想マシン3の利用者名が記憶される「利用者名」とを項目として有する。また、図22等に示すVM管理情報133は、各仮想マシン3の利用者の連絡先が記憶される「利用者連絡先」と、各仮想マシン3の電源状態が記憶される「電源状態」と、各仮想マシン3が削除済であるか否かを示す情報が記憶される「削除フラグ」と、各仮想マシン3が削除された日時が記憶される「削除日時」が記憶される。「削除フラグ」には、各仮想マシン3が削除されていないことを示す「False」、または、各仮想マシン3が削除されていることを示す「True」が記憶される。また、「削除フラグ」に「False」が記憶されている場合、「削除日時」には、各仮想マシン3の削除がまだ行われていないことを示す「None」が記憶されている。
具体的に、図22に示すVM管理情報133において、「項番」が「1」である情報には、「VM名」として「開発用VM」が記憶され、「VMID」として「VM00001」が記憶され、「利用者名」として「AAAA」が記憶され、「利用者連絡先」として「aaaa@aaa.com」が記憶されている。また、図22に示すVM管理情報133において、「項番」が「1」である情報には、「電源状態」として「PowerOn」が記憶され、「削除フラグ」として「False」が記憶され、「削除日時」として「None」が記憶されている。
また、図22に示すVM管理情報133において、「項番」が「2」である情報には、「VM名」として「ビルド用VM」が記憶され、「VMID」として「VM00002」が記憶され、「利用者名」として「BBBB」が記憶され、「利用者連絡先」として「bbbb@bbb.com」が記憶されている。また、図22に示すVM管理情報133において、「項番」が「2」である情報には、「電源状態」として「PowerOff」が記憶され、「削除フラグ」として「False」が記憶され、「削除日時」として「None」が記憶されている。図22に含まれる他の情報についての説明は省略する。
そして、例えば、S52の処理において、「VM00003」によって識別される仮想マシン3が、2019年4月25日17時52分に削除されたことを検知した場合、情報生成部113は、S54の処理において、図23の下線部分に示すように、「VMID」が「VM00003」である情報(「項番」が「3」である情報)の「削除フラグ」を「True」に更新し、「削除日時」を「2019/04/25 17:52」に更新する。
図14に戻り、情報生成部113は、S54の処理で更新したVM管理情報133を参照し、情報格納領域130に記憶された連携情報132を更新する(S55)。
具体的に、図23で説明したVM管理情報133には、「VM00003」によって識別される仮想マシン3が削除済であることを示す情報が含まれている。そのため、情報生成部113は、この場合、図24に示すように、「VMID」または「連携VMID」に「VM00003」が記憶されている情報を削除する。
一方、削除された仮想マシン3が存在しないと判定した場合(S53のNO)、情報生成部113は、S54及びS55の処理を行わない。
さらに、管理装置1の障害検知部115は、図15に示すように、仮想マシン3が動作する物理マシン2において所定の障害が発生するまで待機する(S61のNO)。具体的に、障害検知部115は、物理マシン2のうちのいずれかとの間における通信が不能になった場合、物理マシン2において所定の障害(例えば、ハードウエア障害)が発生したものと判定する。
そして、物理マシン2において所定の障害が発生した場合(S61のYES)、情報管理部112は、情報格納領域130に格納されたVM配置情報137を参照し、S61の処理で検知した所定の障害が発生した物理マシン2において動作する仮想マシン3に関連する情報を特定する(S62)。VM配置情報137は、各物理マシン2において動作する各仮想マシン3を示す情報である。以下、VM配置情報137の具体例について説明を行う。
[VM配置情報の具体例]
図25は、VM配置情報137の具体例について説明する図である。
図25に示すVM配置情報137は、VM配置情報137に含まれる各情報を識別する「項番」と、各物理マシン2のIDが記憶される「物理マシン」と、各仮想マシン3のIDが記憶される「仮想マシン」とを項目として有する。
具体的に、図25に示すVM配置情報137において、例えば、「項番」が「1」である情報には、「物理マシン」として「SV00001」が記憶され、「仮想マシン」として「VM00001」が記憶されている。すなわち、「項番」が「1」である情報は、「VM00001」によって識別される仮想マシン3が「SV00001」によって識別される物理マシン2において動作していることを示している。
また、図25に示すVM配置情報137において、例えば、「項番」が「4」である情報には、「物理マシン」として「SV00002」が記憶され、「仮想マシン」として「VM00002」が記憶されている。すなわち、「項番」が「4」である情報は、「VM00002」によって識別される仮想マシン3が「SV00002」によって識別される物理マシン2において動作していることを示している。
さらに、図25に示すVM配置情報137において、例えば、「項番」が「5」である情報には、「物理マシン」として「SV00002」が記憶され、「仮想マシン」として「VM00100」が記憶されている。すなわち、「項番」が「5」である情報は、「VM00100」によって識別される仮想マシン3が「SV00002」によって識別される物理マシン2において動作していることを示している。図25に含まれる他の情報についての説明は省略する。
そのため、例えば、S61の処理において、「SV00002」によって識別される物理マシン2において障害が発生したと検知した場合、情報管理部112は、S62の処理において、「VM00002」及び「VM00100」を特定する。そして、情報管理部112は、例えば、図23で説明したVM管理情報133のうち、「VMID」に「VM00002」または「VM00100」が記憶された情報(「項番」が「2」または「5」である情報)を特定する。
図15に戻り、管理装置1の範囲特定部116は、情報格納領域130に格納された連携情報132を参照し、S62の処理で特定した仮想マシン3と連携する仮想マシン3を特定する(S63)。
具体的に、図24で説明した連携情報132は、「VM00001」によって識別される仮想マシン3と、「VM00002」によって識別される仮想マシン3とが連携していることを示す情報を含んでいる。そのため、例えば、S62の処理において、「VM00002」及び「VM00100」によって識別される仮想マシン3をそれぞれ特定した場合、範囲特定部116は、S63の処理において、「VM00001」によって識別される仮想マシン3(「VM00002」によって識別される仮想マシン3に対応する仮想マシン3)を特定する。
そして、情報管理部112は、情報格納領域130に格納されたVM管理情報133を参照し、S63の処理で特定した仮想マシン3に関連する情報を特定する(S64)。
具体的に、例えば、S63の処理において、「VM00001」によって識別される仮想マシン3を特定した場合、情報管理部112は、S64の処理において、例えば、図23で説明したVM管理情報133のうち、「VMID」に「VM00001」が記憶された情報(「項番」が「1」である情報)を特定する。
続いて、情報生成部113は、S62及びS64の処理で特定した情報から障害情報134を生成する(S65)。以下、障害情報134の具体例について説明を行う。
[障害情報の具体例]
図26及び図27は、障害情報134の具体例について説明する図である。
図26等に示す障害情報134は、障害情報134に含まれる各情報を識別する「項番」と、各仮想マシン3の名称が記憶される「VM名」と、各仮想マシン3のIDが記憶される「VMID」と、物理マシン2において障害が発生した時刻が記憶される「サーバダウン発生時刻」とを項目として有する。また、図26等に示す障害情報134は、各仮想マシン3の電源状態が記憶される「電源状態」と、各仮想マシン3の利用者名が記憶される「利用者名」と、各仮想マシン3の利用者の連絡先が記憶される「利用者連絡先」とを項目として有する。
具体的に、図26に示す障害情報134において、「項番」が「1」である情報には、「VM名」として「ビルド用VM」が記憶され、「VMID」として「VM00002」が記憶され、「サーバダウン発生時刻」として「21:21:21」が記憶されている。また、図26に示す障害情報134において、「項番」が「1」である情報には、「電源状態」として「PowerOn」が記憶され、「利用者名」として「BBBB」が記憶され、「利用者連絡先」として「bbbb@bbb.com」が記憶されている。
また、図26に示す障害情報134において、「項番」が「2」である情報には、「VM名」として「デモ用VM」が記憶され、「VMID」として「VM00100」が記憶され、「サーバダウン発生時刻」として「21:21:21」が記憶されている。また、図26に示す障害情報134において、「項番」が「2」である情報には、「電源状態」として「PowerOff」が記憶され、「利用者名」として「ZZZZ」が記憶され、「利用者連絡先」として「zzzz@zzz.com」が記憶されている。
そして、例えば、S64の処理において、「VM00001」によって識別される仮想マシン3に対応する情報を特定した場合、情報生成部113は、S65の処理において、「VM00001」によって識別される仮想マシン3に対応する情報を障害情報134に追加する。
具体的に、情報生成部113は、この場合、例えば、図27の下線部分に示すように、「VM」として「開発用VM」が記憶され、「VMID」として「VM00001」が記憶され、「サーバダウン発生時刻」として「21:21:21」が記憶され、「電源状態」として「PowerOn」が記憶され、「利用者名」として「AAAA」が記憶され、「利用者連絡先」として「aaaa@aaa.com」が記憶された情報(「項番」が「3」である情報)を障害情報134に追加する。
その後、管理装置1の情報出力部117は、S65の処理で生成した障害情報134を出力する(S66)。具体的に、情報出力部117は、例えば、図27で説明した障害情報134を操作端末5に出力する。
このように、本実施の形態における管理装置1は、複数の仮想マシン3のそれぞれが送信または受信を行ったリクエストに対応するリクエスト情報131を取得する。そして、管理装置1は、取得したリクエスト情報131に基づいて、複数の仮想マシン3間において互いに連携する仮想マシン3の組合せを示す連携情報132を生成する。
その後、複数の物理マシン2のうちのいずれかの物理マシン2において所定の障害が発生した場合、管理装置1は、連携情報132を参照し、そのいずれかの物理マシン2において動作する仮想マシン3のうちのいずれかと連携する1以上の仮想マシン3を特定し、特定した1以上の仮想マシン3を示す情報を出力する。
すなわち、管理装置1は、各仮想マシン3が行ったリクエストの内容や通信先の傾向から、連携して処理を行っている仮想マシン3の組合せを推定する。そして、管理装置1は、物理マシン2のいずれかにおいて障害が発生した場合、障害が発生した物理マシン2において動作する仮想マシン3だけでなく、その仮想マシン3と連携して処理を行っていると推定した仮想マシン3についても、発生した障害の影響を受ける仮想マシン3として特定する。
これにより、管理装置1は、障害の影響を受ける可能性がある仮想マシン3の特定を精度良く行うことが可能になる。そのため、管理装置1は、発生した障害の影響範囲についてのより正確な情報をクラウド利用者に対して通知することが可能になる。
以上の実施の形態をまとめると、以下の付記のとおりである。
(付記1)
複数の仮想マシンのそれぞれをいずれかにおいて動作させる複数の物理マシンと、前記複数の仮想マシンを制御する管理装置とを有する情報処理システムであって、
前記管理装置は、
前記複数の仮想マシンのそれぞれが送信または受信を行ったリクエストに対応するリクエスト情報を取得し、
取得した前記リクエスト情報に基づいて、前記複数の仮想マシン間において互いに連携する仮想マシンの組合せを示す連携情報を生成し、
前記複数の物理マシンのうちのいずれかの物理マシンにおいて所定の障害が発生した場合、前記連携情報を参照し、前記いずれかの物理マシンにおいて動作する仮想マシンのうちのいずれかと連携する1以上の仮想マシンを特定し、
特定した前記1以上の仮想マシンを示す情報を出力する、
ことを特徴とする情報処理システム。
(付記2)
付記1において、
管理装置は、特定した前記1以上の仮想マシンを示す情報を、前記所定の障害が発生した物理マシンにおいて動作する1以上の仮想マシンを示す情報とともに出力する、
ことを特徴とする情報処理システム。
(付記3)
付記1において、
前記複数の物理マシンのいずれかから前記リクエスト情報を取得するごとに、前記連携情報を更新する、
ことを特徴とする情報処理システム。
(付記4)
付記1において、
前記複数の物理マシンのいずれかにおいて動作する仮想マシンが削除されるごとに、前記連携情報を更新する、
ことを特徴とする情報処理システム。
(付記5)
付記1において、
前記管理装置は、
前記複数の仮想マシンに含まれる第1仮想マシンから通信先におけるファイルの更新を要求する第1リクエストの送信が行われたことを示す情報と、前記複数の仮想マシンに含まれる第2仮想マシンから前記通信先におけるファイルの取得を要求する第2リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれているか否かを判定し、
前記第1リクエストの送信が行われたことを示す情報と前記第2リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれていると判定した場合、前記第1仮想マシンと前記第2仮想マシンとの組合せを示す前記連携情報を生成する、
ことを特徴とする情報処理システム。
(付記6)
付記5において、
前記管理装置は、前記第1リクエストの送信が行われたことを示す情報と前記第2リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれており、かつ、前記第1リクエストの送信が行われた時刻と前記第2リクエストの送信が行われた時刻との時間差が閾値以内である場合に、前記第1仮想マシンと前記第2仮想マシンとの組合せを示す前記連携情報を生成する、
ことを特徴とする情報処理システム。
(付記7)
付記5において、
前記通信先は、前記複数の物理マシン以外の他の物理マシンまたは前記他の物理マシン上において動作する他の仮想マシンである、
ことを特徴とする情報処理システム。
(付記8)
付記1において、
前記管理装置は、
通信先から前記複数の仮想マシンに含まれる第3仮想マシンに対して、第1処理を実行することによる第1ファイルの生成を要求する第3リクエストの送信が行われたことを示す情報と、通信先から前記複数の仮想マシンに含まれる第4仮想マシンに対して、第2処理を実行することによる第2ファイルの生成を要求する第4リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれているか否かを判定し、
前記第3リクエストの送信が行われたことを示す情報と前記第4リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれていると判定した場合、関連する処理の組合せを示す処理情報を参照し、前記第1処理と前記第2処理との組合せを示す情報が前記処理情報に含まれているか否かを判定し、かつ、関連するファイルの組合せを示すファイル情報とを参照し、前記第1ファイルと前記第2ファイルとの組合せを示す情報が前記ファイル情報に含まれているか否かを判定し、
前記第1処理と前記第2処理との組合せを示す情報が前記処理情報に含まれており、かつ、前記第1ファイルと前記第2ファイルとの組合せを示す情報が前記ファイル情報に含まれていると判定した場合、前記第3仮想マシンと前記第4仮想マシンとの組合せを示す前記連携情報を生成する、
ことを特徴とする情報処理システム。
(付記9)
付記1において、
前記管理装置は、前記複数の物理マシンのうちのいずれかの物理マシンとの通信が不能になったことを検知した場合、前記いずれかの物理マシンにおいて前記所定の障害が発生したと判定する、
ことを特徴とする情報処理システム。
(付記10)
付記1において、
前記仮想マシンの組合せには、直接通信を行っていない仮想マシンの組合せが含まれる、
ことを特徴とする情報処理システム。
(付記11)
複数の仮想マシンのそれぞれが送信または受信を行ったリクエストに対応するリクエスト情報を取得し、
取得した前記リクエスト情報に基づいて、前記複数の仮想マシン間において互いに連携する仮想マシンの組合せを示す連携情報を生成し、
前記複数の仮想マシンが動作する複数の物理マシンのうちのいずれかの物理マシンにおいて所定の障害が発生した場合、前記連携情報を参照し、前記いずれかの物理マシンにおいて動作する仮想マシンのうちのいずれかと連携する1以上の仮想マシンを特定し、
特定した前記1以上の仮想マシンを示す情報を出力する、
処理をコンピュータに実行させることを特徴とする影響範囲特定プログラム。
(付記12)
付記11において、
前記出力する処理では、特定した前記1以上の仮想マシンを示す情報を、前記所定の障害が発生した物理マシンにおいて動作する1以上の仮想マシンを示す情報とともに出力する、
ことを特徴とする影響範囲特定プログラム。
1:管理装置 2:物理マシン
3:仮想マシン 4:仮想化ソフトウエア
5:操作端末 10:情報処理システム
NW:ネットワーク

Claims (11)

  1. 複数の仮想マシンのそれぞれをいずれかにおいて動作させる複数の物理マシンと、前記複数の仮想マシンを制御する管理装置とを有する情報処理システムであって、
    前記管理装置は、
    前記複数の仮想マシンのそれぞれが送信または受信を行ったリクエストに対応するリクエスト情報を取得し、
    取得した前記リクエスト情報に基づいて、前記複数の仮想マシン間において互いに連携する仮想マシンの組合せを示す連携情報を生成し、
    前記複数の物理マシンのうちのいずれかの物理マシンにおいて所定の障害が発生した場合、前記連携情報を参照し、前記いずれかの物理マシンにおいて動作する仮想マシンのうちのいずれかと連携する1以上の仮想マシンを特定し、
    特定した前記1以上の仮想マシンを示す情報を出力する、
    ことを特徴とする情報処理システム。
  2. 請求項1において、
    管理装置は、特定した前記1以上の仮想マシンを示す情報を、前記所定の障害が発生した物理マシンにおいて動作する1以上の仮想マシンを示す情報とともに出力する、
    ことを特徴とする情報処理システム。
  3. 請求項1において、
    前記複数の物理マシンのいずれかから前記リクエスト情報を取得するごとに、前記連携情報を更新する、
    ことを特徴とする情報処理システム。
  4. 請求項1において、
    前記複数の物理マシンのいずれかにおいて動作する仮想マシンが削除されるごとに、前記連携情報を更新する、
    ことを特徴とする情報処理システム。
  5. 請求項1において、
    前記管理装置は、
    前記複数の仮想マシンに含まれる第1仮想マシンから通信先におけるファイルの更新を要求する第1リクエストの送信が行われたことを示す情報と、前記複数の仮想マシンに含まれる第2仮想マシンから前記通信先におけるファイルの取得を要求する第2リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれているか否かを判定し、
    前記第1リクエストの送信が行われたことを示す情報と前記第2リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれていると判定した場合、前記第1仮想マシンと前記第2仮想マシンとの組合せを示す前記連携情報を生成する、
    ことを特徴とする情報処理システム。
  6. 請求項5において、
    前記管理装置は、前記第1リクエストの送信が行われたことを示す情報と前記第2リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれており、かつ、前記第1リクエストの送信が行われた時刻と前記第2リクエストの送信が行われた時刻との時間差が閾値以内である場合に、前記第1仮想マシンと前記第2仮想マシンとの組合せを示す前記連携情報を生成する、
    ことを特徴とする情報処理システム。
  7. 請求項5において、
    前記通信先は、前記複数の物理マシン以外の他の物理マシンまたは前記他の物理マシン上において動作する他の仮想マシンである、
    ことを特徴とする情報処理システム。
  8. 請求項1において、
    前記管理装置は、
    通信先から前記複数の仮想マシンに含まれる第3仮想マシンに対して、第1処理を実行することによる第1ファイルの生成を要求する第3リクエストの送信が行われたことを示す情報と、通信先から前記複数の仮想マシンに含まれる第4仮想マシンに対して、第2処理を実行することによる第2ファイルの生成を要求する第4リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれているか否かを判定し、
    前記第3リクエストの送信が行われたことを示す情報と前記第4リクエストの送信が行われたことを示す情報とが前記リクエスト情報に含まれていると判定した場合、関連する処理の組合せを示す処理情報を参照し、前記第1処理と前記第2処理との組合せを示す情報が前記処理情報に含まれているか否かを判定し、かつ、関連するファイルの組合せを示すファイル情報とを参照し、前記第1ファイルと前記第2ファイルとの組合せを示す情報が前記ファイル情報に含まれているか否かを判定し、
    前記第1処理と前記第2処理との組合せを示す情報が前記処理情報に含まれており、かつ、前記第1ファイルと前記第2ファイルとの組合せを示す情報が前記ファイル情報に含まれていると判定した場合、前記第3仮想マシンと前記第4仮想マシンとの組合せを示す前記連携情報を生成する、
    ことを特徴とする情報処理システム。
  9. 請求項1において、
    前記管理装置は、前記複数の物理マシンのうちのいずれかの物理マシンとの通信が不能になったことを検知した場合、前記いずれかの物理マシンにおいて前記所定の障害が発生したと判定する、
    ことを特徴とする情報処理システム。
  10. 請求項1において、
    前記仮想マシンの組合せには、直接通信を行っていない仮想マシンの組合せが含まれる、
    ことを特徴とする情報処理システム。
  11. 複数の仮想マシンのそれぞれが送信または受信を行ったリクエストに対応するリクエスト情報を取得し、
    取得した前記リクエスト情報に基づいて、前記複数の仮想マシン間において互いに連携する仮想マシンの組合せを示す連携情報を生成し、
    前記複数の仮想マシンが動作する複数の物理マシンのうちのいずれかの物理マシンにおいて所定の障害が発生した場合、前記連携情報を参照し、前記いずれかの物理マシンにおいて動作する仮想マシンのうちのいずれかと連携する1以上の仮想マシンを特定し、
    特定した前記1以上の仮想マシンを示す情報を出力する、
    処理をコンピュータに実行させることを特徴とする影響範囲特定プログラム。
JP2019120906A 2019-06-28 2019-06-28 情報処理システム及び影響範囲特定プログラム Pending JP2021006961A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019120906A JP2021006961A (ja) 2019-06-28 2019-06-28 情報処理システム及び影響範囲特定プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019120906A JP2021006961A (ja) 2019-06-28 2019-06-28 情報処理システム及び影響範囲特定プログラム

Publications (1)

Publication Number Publication Date
JP2021006961A true JP2021006961A (ja) 2021-01-21

Family

ID=74174379

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019120906A Pending JP2021006961A (ja) 2019-06-28 2019-06-28 情報処理システム及び影響範囲特定プログラム

Country Status (1)

Country Link
JP (1) JP2021006961A (ja)

Similar Documents

Publication Publication Date Title
US10635664B2 (en) Map-reduce job virtualization
JP4980792B2 (ja) 仮想計算機の性能監視方法及びその方法を用いた装置
JP5458308B2 (ja) 仮想計算機システム、仮想計算機システムの監視方法及びネットワーク装置
US8954568B2 (en) Method and system for building an elastic cloud web server farm
JP5708937B2 (ja) 構成情報管理システム、構成情報管理方法、及び構成情報管理用プログラム
US10216527B2 (en) Automated software configuration management
JP5754440B2 (ja) 構成情報管理サーバ、構成情報管理方法、及び構成情報管理用プログラム
US9378039B2 (en) Virtual machine storage replication schemes
US20140143507A1 (en) Techniques for managing pinned memory
JP2014186652A (ja) データ転送装置、データ転送システム、データ転送方法及びプログラム
JP2016103144A (ja) 仮想マシン配備方法、仮想マシン配備プログラム及び仮想マシン配備システム
US20180176289A1 (en) Information processing device, information processing system, computer-readable recording medium, and information processing method
JP2013218687A (ja) サーバー監視システム及びその方法
US11706162B2 (en) Dynamic, distributed, and scalable single endpoint solution for a service in cloud platform
CN107832097B (zh) 数据加载方法及装置
JP6418419B2 (ja) ハードディスクがアプリケーションコードを実行するための方法および装置
JP5597293B2 (ja) 計算機システム及びプログラム
JP2019159977A (ja) 制御プログラム、制御装置及び制御方法
JP6279816B2 (ja) ストレージ監視システムおよびその監視方法
US11777810B2 (en) Status sharing in a resilience framework
JP2021006961A (ja) 情報処理システム及び影響範囲特定プログラム
US11875175B2 (en) Providing physical host hardware state information to virtual machines deployed on the physical host
US11803448B1 (en) Faster restart of task nodes using periodic checkpointing of data sources
CN114756435A (zh) 日志读取方法、服务器、计算机设备和存储介质
CN115729693A (zh) 数据处理方法、装置、计算机设备及计算机可读存储介质