JP2010086516A - 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム - Google Patents

仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム Download PDF

Info

Publication number
JP2010086516A
JP2010086516A JP2009135441A JP2009135441A JP2010086516A JP 2010086516 A JP2010086516 A JP 2010086516A JP 2009135441 A JP2009135441 A JP 2009135441A JP 2009135441 A JP2009135441 A JP 2009135441A JP 2010086516 A JP2010086516 A JP 2010086516A
Authority
JP
Japan
Prior art keywords
server
failure
virtual server
event
history
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.)
Granted
Application number
JP2009135441A
Other languages
English (en)
Other versions
JP5140633B2 (ja
Inventor
Toshihiro Namimatsu
利博 南松
Yasuaki Saito
安彰 齋藤
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2009135441A priority Critical patent/JP5140633B2/ja
Priority to US12/551,962 priority patent/US8006134B2/en
Publication of JP2010086516A publication Critical patent/JP2010086516A/ja
Application granted granted Critical
Publication of JP5140633B2 publication Critical patent/JP5140633B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • H04L41/065Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis involving logical or physical relationship, e.g. grouping and hierarchies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS

Abstract

【課題】仮想化環境において生じる障害の原因箇所の特定を容易かつ迅速に行えるようにする。
【解決手段】物理サーバ20と通信可能に管理サーバ10を接続し、管理サーバ10に、物理サーバ20で生じたイベントの履歴である第1のイベント履歴と、仮想サーバ212で生じたイベントの履歴である第2のイベント履歴とを蓄積記憶する。管理サーバ10は、仮想サーバ212で動作している業務プロセス2122の障害に関するイベントを受信すると、当該イベントを発した仮想サーバ212に関するイベント履歴である第1のイベント履歴と、記憶しているテーブルを用いて取得される、上記イベントを発した仮想サーバ212を実現している物理サーバ20に関するイベント履歴である第2のイベント履歴とを、蓄積記憶している上記イベント履歴から検索し、その検索結果に基づき障害の原因を特定する。
【選択図】図2A

Description

本発明は、物理サーバで動作する仮想化機構によって仮想サーバが実現される仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラムに関し、とくに仮想化環境における障害の原因箇所の特定を容易かつ迅速に行う技術に関する。
昨今、情報処理システムの性能向上に伴うハードウエア資源の有効活用や負荷分散、可用性の確保等を目的として、いわゆる仮想化技術が注目されている。情報処理システムにおける障害対応においては、業務への影響を防ぐべく、迅速かつ確実な対応が求められる。しかしながら上記仮想化技術が適用された環境では、障害の発生箇所を特定することが必ずしも容易ではない。
例えば、仮想サーバで動作する業務プロセスから障害が報告された場合には、障害の原因が業務プロセスにあるのか、仮想サーバにあるのか、又は物理サーバにあるのかを特定するために、業務プロセス、仮想サーバ、及び物理サーバの夫々に蓄積されているログ情報を分析し、その分析結果に基づいて障害箇所を特定する必要があり、多大な労力が必要になる。
障害の原因を特定する技術として、例えば、特許文献1には、仮想サーバ環境において、仮想サーバに何らかの障害が発生した場合にシステム管理者が仮想サーバのログを迅速に参照できるようにするために、仮想サーバが他の物理サーバに移動する毎に、その移動履歴を生成/記録し、一元管理することが記載されている。また特許文献2には、仮想計算機システムの配下における障害情報の処理において、異常な周辺機器の早期確認、早期対処を実現すべく、仮想計算機システムの稼働中に周辺装置に障害が発生すると、ゲスト仮想計算機の配下にあるオペレーティングシステムが検出したロギング情報やホストシステムが検出したロギング情報を、各ゲスト仮想計算機の配下にある異常通報システムが分析/分類し、実機番号で保守センタに自動通知することが記載されている。
特開2007−323244号公報 特開平4−257035号公報
上記特許文献1及び特許文献2に記載されている技術は、いずれもログ情報の解析を保守員等の人手によって行うことを前提としており、仮想化環境における障害発生時における解析に必要な労力が必ずしも軽減されるわけではない。即ちこれらの技術によっては障害原因の特定やその対処を必ずしも容易かつ迅速に行えるわけではない。
この発明はこのような背景に鑑みてなされたもので、仮想化環境における障害の原因箇所の特定を容易かつ迅速に行うことを可能とする仮想化環境における障害の解析方法及び管理サーバを提供することを目的とする。
上記目的を達成するための本発明のうちの一つは、
物理サーバで動作する仮想化機構によって仮想サーバが実現される仮想化環境において生じる障害の解析方法であって、
前記物理サーバと通信可能に接続される管理サーバが、
前記仮想サーバと当該仮想サーバが実現されている前記物理サーバとの対応が登録されたマッピングテーブルを記憶し、
前記物理サーバで生じたイベントの履歴である第1のイベント履歴と、前記仮想サーバで生じたイベントの履歴である第2のイベント履歴とを蓄積記憶し、
前記仮想サーバで動作している業務プロセスの障害に関する前記イベントを受信すると、当該イベントを発した仮想サーバに関する前記第1のイベント履歴と、前記マッピングテーブルから取得される、前記イベントを発した前記仮想サーバを実現している前記物理サーバに関する前記第2のイベント履歴とを、前記蓄積記憶している前記イベント履歴から検索し、その検索結果に基づき障害の原因を特定することとする。
その他、本願が開示する課題、およびその解決手段は、発明を実施するための最良の形態の欄、及び図面により明らかにされる。
本発明によれば、仮想化環境における障害の原因箇所の特定を容易かつ迅速に行うことができる。
仮想化システム1を実現するために用いられるハードウエア環境を示す図である。 管理サーバ10又は物理サーバ20として用いられるコンピュータの一例である。 管理サーバ10の機能及び管理サーバ10において管理されるデータを示す図である。 物理サーバ20の機能及び物理サーバ20において管理されるデータを示す図である。 イベント履歴テーブル121の一例である。 稼働サーバマッピングテーブル122の一例である。 仮想サーバイベント解析ポリシーテーブル124の一例である。 物理サーバイベント解析ポリシーテーブル125の一例である。 解析履歴テーブル123の一例である。 対処テーブル126の一例である。 アプリケーション管理テーブル127の一例である。 SLA定義テーブル128の一例である。 リソース管理テーブル129の一例である。 依存関係管理テーブル130の一例である。 サーバ管理テーブル131の一例である。 パッチ管理テーブル132の一例である。 障害監視部110によって行われる処理を説明するフローチャートである。 解析処理(S413)の詳細を説明するフローチャートである。 対処実行部118が備える主な機能を示す図である。 障害対処処理S415の全体的な流れを説明するフローチャートである。 仮想サーバ移動処理S621を説明するフローチャートである。 ロールバック処理S643を説明するフローチャートである。 アプリケーション移動処理S644を説明するフローチャートである。
図1Aに実施形態として説明する仮想化システムを実現するために用いられるハードウエア環境を示している。同図に示すように、このハードウエア環境は、管理サーバ10と、通信ネットワーク5を介して管理サーバ10と通信可能に接続し管理サーバ10によって監視される一台以上の物理サーバ20と、物理サーバ20がアクセス可能な記憶装置30とを含んで構成されている。
管理サーバ10と物理サーバ20とを結ぶ通信ネットワーク5は、例えばLAN(Local Area Network)である。物理サーバ20及び記憶装置30は、例えばLANやSAN(Storage Area Network)を介して通信可能に接続される。記憶装置30は、例えばディスクアレイ装置やNAS(Network Attached Storage)である。
管理サーバ10又は物理サーバ20は、例えばパーソナルコンピュータ、ブレードサーバに装着されたブレード、ワークステーション、メインフレーム等のコンピュータ(情報処理装置)である。図1Bに管理サーバ10又は物理サーバ20として用いられるコンピュータの一例を示す。同図に示すコンピュータ100は、中央処理装置101(例えばCPU(Central Processing Unit)やMPU(Micro Processing Unit))、主記憶装置102(例えばRAM(Random Access Memory)やROM(Read Only Memory))、補助記憶装置103(例えばハードディスク)、ユーザの操作入力を受け付ける入力装置104(例えばキーボードやマウス)、出力装置105(例えば液晶モニタ)、通信ネットワーク5を介して他の装置との間の通信を実現する通信インタフェース106(例えばNIC(Network Interface Card))を備えている。
<管理サーバ10>
図2Aに管理サーバ10において実現される機能、及び管理サーバ10によって管理されるデータを示す。尚、同図における各機能は、管理サーバ10の中央処理装置101が主記憶装置102又は補助記憶装置103に格納されているプログラムを読み出して実行することにより、もしくは管理サーバ10のハードウエア自体の機能によって実現される。
同図に示すように、管理サーバ10では、物理サーバ20において発生した障害の原因を特定する機能(以下、障害監視部110と称する。)を実現するためのプログラムが実行されている。障害監視部110は、イベント履歴管理部111、マッピングテーブル管理部112、ユーザインタフェース部113、障害解析部114、ポリシーテーブル管理部115、解析履歴テーブル管理部116、対処テーブル管理部117、及び対処実行部118を備える。また管理サーバ10は、イベント履歴テーブル121、稼働サーバマッピングテーブル122、解析履歴テーブル123、仮想サーバイベント解析ポリシーテーブル124、物理サーバイベント解析ポリシーテーブル125、対処テーブル126、アプリケーション管理テーブル127、SLA定義テーブル128、リソース管理テーブル129、依存関係管理テーブル130、サーバ管理テーブル131、及びパッチ管理テーブル132を管理している。
図2Aに示した機能のうち、イベント履歴管理部111は、物理イベント通知部213から送信されてくる情報に基づく物理サーバ20に関するイベントの履歴(第1のイベント履歴)をイベント履歴テーブル121に登録する。またイベント履歴管理部111は、仮想イベント通知部2123から送信されてくる情報に基づく仮想サーバ212に関するイベントの履歴(第2のイベント履歴)をイベント履歴テーブル121に登録する。
図3Aにイベント履歴テーブル121の一例を示す。同図における各レコードは、夫々、物理サーバ20又は仮想サーバ212において発生した1つのイベントについてのイベント履歴である。各イベント履歴は、イベントが発生したサーバ(物理サーバ20又は仮想サーバ212)を特定する情報が設定されるサーバ名311、イベントが発生した日時が設定される発生日時312、イベントが発生したプロセスを特定する情報が設定されるプロセス名313、エラーメッセージ等が設定されるメッセージ314、及び発生したイベントの種別(エラー(Error)、警告(Warning)、一般情報(Information))を示す情報が設定されるイベント種別315の各項目を有する。
尚、同図において、サーバ名311に先頭が「p」で始まる名称が設定されているイベント履歴は、物理サーバ20の物理イベント通知部213から送られてきたイベント履歴である。またサーバ名311に先頭が「v」で始まる名称が設定されているイベント履歴は、仮想イベント通知部2123から送られてきたイベント履歴である。
このように、図3Aのイベント履歴テーブル121には、物理イベント通知部213から通知されるイベント履歴と、仮想イベント通知部2123から通知されるイベント履歴の双方が含まれているが、これらは別のテーブルで管理されていても構わない。
図2Aにおけるマッピングテーブル管理部112は、稼働サーバマッピングテーブル122を管理する。マッピングテーブル管理部112は、仮想化機構211に対して能動的又は受動的に稼働サーバマッピングテーブル122に登録すべき情報を取得し、取得した情報を稼働サーバマッピングテーブル122に反映する。
図3Bに稼働サーバマッピングテーブル122の一例を示す。稼働サーバマッピングテーブル122には、業務プロセス2122を特定する情報が設定されるプロセス名321、業務プロセス2122が実行されている仮想サーバ212を特定する情報が設定される仮想サーバ名322、仮想サーバ212を実現している物理サーバ20を特定する情報が設定される物理サーバ名323、及び仮想サーバ212が稼働を開始した日時が設定される仮想サーバ稼働開始日時324が対応づけて登録されている。尚、稼働サーバマッピングテーブル122の内容は、例えば仮想サーバ212の移動(後述)があった際に更新される。
図2Aのユーザインタフェース部113は、プログラムの起動や終了を指示する操作入力等、ユーザが入力装置104に対して行った操作入力を受け付ける。
図2Aの障害解析部114は、業務プロセス2122に何らかの障害が発生するとイベント履歴テーブル121に登録されているイベント履歴を解析し、その解析結果を解析履歴テーブル123に登録する。
図2Aにおけるポリシーテーブル管理部115は、仮想サーバイベント解析ポリシーテーブル124及び物理サーバイベント解析ポリシーテーブル125を管理する。これらのテーブルには、障害解析部114が障害の解析に際しイベント履歴テーブル121を検索する際に用いる検索条件(第1の検索条件、第2の検索条件)が登録されている。
図3Cに仮想サーバイベント解析ポリシーテーブル124の一例を示す。同図に示すように、仮想サーバイベント解析ポリシーテーブル124には、イベント履歴をイベント履歴テーブル121から検索する際の検索条件331、及び検索条件による検索結果に応じて設定される情報である原因箇所332を含んだ一つ以上のレコードが登録されている。ここで同図の1行目のレコードの検索条件331の内容は、イベント履歴テーブル121から、その仮想サーバ名311に特定のサーバ名($仮想サーバ$)が設定され、かつ、メッセージ314に「connect error」(通信エラーを意味する。)という文字列を含むイベント履歴を検索するというものである。また2行目のレコードの検索条件331の内容は、イベント履歴テーブル121から、その仮想サーバ名311に特定のサーバ名($仮想サーバ$)が設定され、かつ、プロセス名313に「aa」が設定され、かつ、メッセージ314に「エラー」という文字列を含むイベント履歴を検索するというものである。また3行目のレコードの検索条件331の内容は、イベント履歴テーブル121から、その仮想サーバ名311に特定のサーバ名($仮想サーバ$)が設定され、かつ、プロセス名313に「bb」が設定され、かつ、メッセージ314に「fault」という文字列を含むイベント履歴を検索するというものである。また4行目のレコードの検索条件331の内容は、イベント履歴テーブル121から、その仮想サーバ名311に特定のサーバ名($仮想サーバ$)が設定され、かつ、イベント種別315に「Error」が設定されているかもしくはメッセージ314に「エラー」という文字列を含むイベント履歴を検索するというものである。
図3Dは物理サーバイベント解析ポリシーテーブル125の一例である。このテーブルには、イベント履歴テーブル121からイベント履歴を検索する際の検索条件341、検索条件による検索結果に応じて設定される情報である原因箇所342、及びエラーレベルが設定されるエラーレベル343を含んだ一つ以上のレコードが登録されている。ここで同図の1行目のレコードの検索条件341の内容は、イベント履歴テーブル121から、その物理サーバ名311に特定のサーバ名($物理サーバ$)が設定され、かつ、プロセス名313に「bb」が設定され、かつ、イベント種別315に「Error」という文字列を含むイベント履歴を検索するというものである。また2行目のレコードの検索条件341の内容は、イベント履歴テーブル121から、その物理サーバ名311に特定のサーバ名($物理サーバ$)が設定され、かつ、プロセス名313に「aa」が設定され、かつ、メッセージ314に「error」という文字列を含むイベント履歴を検索するというものである。また3行目のレコードの検索条件341の内容は、イベント履歴テーブル121から、その物理サーバ名311に特定のサーバ名($物理サーバ$)が設定され、かつ、メッセージ314に「memory fault」という文字列を含むイベント履歴を検索するというものである。また4行目のレコードの検索条件341の内容は、イベント履歴テーブル121から、その物理サーバ名311に特定のサーバ名($物理サーバ$)が設定され、かつ、プロセス名313に「ee」が設定されているイベント履歴を検索するというものである。また5行目のレコードの検索条件341の内容は、イベント履歴テーブル121から、その物理サーバ名311に特定のサーバ名($物理サーバ$)が設定され、かつ、プロセス名313に「bb」が設定され、かつ、メッセージ314に「warning」という文字列を含むイベント履歴を検索するというものである。また6行目のレコードの検索条件341の内容は、イベント履歴テーブル121に特定の物理サーバ名($物理サーバ$)が一つも含まれていなかった場合に「真」とするというものである。
図2Aに示した解析履歴テーブル管理部116は、ユーザインタフェース部113から受け付けたユーザの操作入力に従い解析履歴テーブル123の内容を管理する。図3Eは解析履歴テーブル123の一例である。解析履歴テーブル123の各レコードは、障害解析部114がイベント履歴テーブル121から検索した仮想サーバに関する情報が記載される仮想サーバイベント351、障害解析部114がイベント履歴テーブル121から検索した物理サーバに関する情報が記載される物理サーバイベント352、及び仮想サーバイベント351又は物理サーバイベント352の内容に応じてその内容が設定される解析結果353の各項目が含まれる。
図2Aに示した対処テーブル管理部117は、ユーザインタフェース部113から受け付けたユーザの操作入力に従って対処テーブル126の内容を管理する。図3Fは対処テーブル126の一例である。同図に示すように、対処テーブル126の各レコードは、エラーレベルが設定されるエラーレベル361、及びエラーレベル361に対応して設定された、障害に対する対処の内容が記述される対処362を含む複数のレコードからなる。
図2Aにおける対処実行部118は、障害解析部114において解析された障害内容に応じた処理を実行する。尚、アプリケーション管理テーブル127、SLA定義テーブル128、リソース管理テーブル129、依存関係管理テーブル130、サーバ管理テーブル131、及びパッチ管理テーブル132の詳細については後述する。
<物理サーバ20>
図2Bに物理サーバ20において実現される機能、及び物理サーバ20によって管理されるデータを示している。尚、同図における各機能は、物理サーバ20の中央処理装置101が主記憶装置102又は補助記憶装置103に格納されているプログラムを読み出して実行することにより、もしくは物理サーバ20のハードウエア自体の機能によって実現される。
同図に示すように、物理サーバ20は、仮想化機構211、仮想化機構211によって実現される一つ以上の仮想サーバ212、及び物理イベント通知部213を備える。また各仮想サーバ212ではオペレーティングシステム2121が動作し、オペレーティングシステム2121の制御下で業務プロセス2122及び仮想イベント通知部2123が実現されている。
同図に示す仮想化機構211は、物理サーバ20によって提供されるリソースを仮想化(Virtualization)し、物理サーバ20によって提供される物理資源(リソース)を、エンドユーザやアプリケーション、オペレーティングシステム等に対し、一つ以上の論理的な資源に見せかける機能を実現する。同図に示す複数の仮想サーバ212は、夫々が仮想化機構211によって実現される論理的な資源(仮想的なコンピュータ)であって、互いに他の仮想サーバから独立して動作することができる。
尚、仮想サーバ212は、物理サーバ20の物理資源(ハードウエア)をベースとして動作するオペレーティングシステム(ホストOS)でハードウエアのエミュレーション環境を実現し、その環境下で仮想サーバ212のオペレーティングシステム2121(ゲストOS)を動作させる、いわゆるホストOS方式によって実現してもよいし、ホストOSを介在せずに物理資源に直接エミュレーション環境を設け、その環境下でゲストOSを動作させる、いわゆる仮想マシンモニタ方式によって実現するようにしてもよい。また物理資源のエミュレート方式としては、物理資源を完全にエミュレートする完全仮想化方式を選択してもよいし、一部の物理資源のみをエミュレートする準仮想化方式を選択してもよい。
各仮想サーバ212に対応するメモリイメージ(仮想サーバイメージ)は、記憶装置30に格納されている。仮想サーバ212を移動(仮想サーバ212と物理サーバ20との対応関係の変更)する場合には、仮想サーバイメージを該当の物理サーバ20に割当てられている記憶装置30の記憶領域に展開することによって行うことができる。尚、上記移動は、例えば仮想化機構211の機能によって、もしくは管理サーバ10からの指示に応じて行われる。
各仮想サーバ212ではオペレーティングシステム2121が動作し、業務プロセス2122や仮想イベント通知部2123は、オペレーティングシステム2121において動作する。
各仮想サーバ212において動作する仮想イベント通知部2123は、各仮想サーバ212でイベントが発生すると、これに対応したイベント履歴を、通信ネットワーク5を介して管理サーバ10に通知する。
各物理サーバ20で動作する物理イベント通知部213は、物理サーバ20において発生したイベントに対応するイベント履歴を、通信ネットワーク5を介して管理サーバ10に通知する。また物理イベント通知部213は、管理サーバ10の対処実行部118から通信ネットワーク5を介して送られてくる(発生した障害に対する)対処処理の実行指示を受け付け、受け付けた実行指示に対応する対処処理を実行する。
<処理説明>
障害監視部110によって行われる処理を図4Aに示すフローチャートとともに説明する。尚、以下の説明において、符号の前に付した「S」の文字はステップを意味する。
障害監視部110は、ユーザインタフェース部113がユーザから終了操作を受け付けたか否かをリアルタイムに監視する(S411)。ユーザから終了操作を受け付けた場合は(S411:YES)処理を終了する。終了操作を受け付けない場合は(S411:NO)S412に進む。
S412において、障害監視部110は、仮想サーバ212の業務プロセス2122における障害発生の有無を判断する。例えば仮想イベント通知部2123から業務プロセス2122の障害(エラー)に関する新たなイベント履歴を受信した場合に障害が発生したと判断する。また業務プロセス2122のエラーに関するイベント履歴がイベント履歴テーブル121に新たに登録された場合に障害が発生したと判断する。障害が発生したと判断した場合には(S412:YES)S413に進み、障害が発生していない場合は(S412:NO)S411に戻る。
S413において、障害解析部114は、障害の原因を特定するとともに発生した障害にエラーレベルを付与する処理(以下、解析処理と称する)を行う。図4Bに解析処理(S413)の詳細を示している。まず障害解析部114は、障害が発生している業務プロセス2122が実行されている仮想サーバ212に関するイベント履歴を、イベント履歴テーブル121から検索する(S4131)。ここでの検索は仮想サーバイベント解析ポリシーテーブル124に登録されている検索条件331(第1の検索条件)を用いて行われる。即ち上記検索は、障害発生と判断した契機となったイベント履歴に記述されている仮想サーバ名(例えば「vserver1」)を図3Cに示した検索条件331に記述されている変数「$仮想サーバ$」に設定することにより行われる。
尚、上記検索はS412において障害が発生したと判断する契機となったイベント履歴に記述されている、仮想サーバ212のサーバ名(仮想サーバ名)をキーとして行ってもよい。
例えばイベント履歴テーブル121の内容が図3Aに示す内容であり、キーとなる仮想サーバ名が「vserver1」である場合には、同図の2行目及び5行目のイベント履歴が検索される。またキーとなる物理サーバ名が「pserver1」である場合には、これに対応する仮想サーバ名「vserver1」を稼働サーバマッピングテーブル122から取得し、取得した仮想サーバ名「vserver1」をキーとして2行目及び5行目のイベント履歴が検索される。尚、障害発生と判断した契機となったイベント履歴は検索対象から除外されるものとする。
ここでイベント履歴テーブル121に長期間分のイベント履歴が管理されている場合(例えばイベント履歴の削除周期が長い場合)には、障害発生と判断した契機となったイベント履歴のイベントの発生日時312を起点とする所定期間内(例えばイベント発生日時312の前後所定期間内)に発生したイベントのイベント履歴のみを検索対象とするようにしてもよい。また(障害発生と判断した契機となったイベント履歴から取得される)仮想サーバ名322や物理サーバ名323をキーとして稼働サーバマッピングテーブル122から取得できる仮想サーバ稼働開始日時324に設定されている日時を起点とする所定期間内(例えば仮想サーバ稼働開始日時324に設定されている日時からイベントの発生日時312に設定されている日時までの間)に発生したイベントのイベント履歴のみを検索対象とするようにしてもよい。このように、障害発生時の近傍のみに検索対象を絞ることで、解析の精度を向上することができる。
S4132では、障害解析部114はS4131の検索において仮想サーバ212に関するイベント履歴を一つ以上検索することができたか否かを判断する(S4132)。検索することができなかった場合は(S4132:NO)S4133に進み、検索することができた場合は(S4132:YES)S4134に進む。
S4133では、障害解析部114は、S412において障害発生と判断したイベント履歴の内容を、解析履歴テーブル123の仮想サーバイベント351として登録し、これに対応する解析結果353の原因箇所3531に「業務プロセス」を、またエラーレベル3532に「1」を登録する。その後は図4AのS414に進む。つまり障害解析部114は、S4131において仮想サーバ212のイベント履歴を検索することができなかったことをもって、障害の原因が業務プロセス2122にあると判断する。
S4134では、障害解析部114は、障害が発生している業務プロセス2122が実行されている物理サーバ20に関するイベント履歴をイベント履歴テーブル121から検索する。
尚、上記イベント履歴が仮想サーバ212の仮想イベント通知部2123から通知されたものである場合には、当該イベント履歴に記述されているサーバ名(仮想サーバ名)に対応する物理サーバ名を稼働サーバマッピングテーブル122から取得し、取得したその物理サーバ名をキーとしてイベント履歴をイベント履歴テーブル121から検索する。例えば、イベント履歴テーブル121の内容が図3Aに示す内容であり(同図では障害発生と判断した契機となったイベント履歴は省略している。)、キーとなる物理サーバ名が「pserver1」である場合には、1行目のイベント履歴が検索される。またキーとなるサーバ名が仮想サーバ「vserver1」である場合には、これに対応する物理サーバ名「pserver1」を稼働サーバマッピングテーブル122から取得し、取得した物理サーバ名「pserver1」をキーとして1行目のイベント履歴が検索される。
尚、サーバ名をキーとするのではなく、物理サーバイベント解析ポリシーテーブル125に登録されている検索条件(第2の検索条件)によって物理サーバ20に関するイベント履歴を検索するようにしてもよい。この場合には、障害発生と判断した契機となったイベント履歴に記述されている物理サーバ名(例えば「pserver1」)を図3Dに示した検索条件に記述されている変数「$物理サーバ$」に設定して検索を行う。
前述と同様、イベント履歴テーブル121に長期間分のイベント履歴が管理されている場合(例えばイベント履歴の削除周期が長い場合)には、障害発生と判断した契機となったイベント履歴のイベントの発生日時312を起点とする所定期間内(例えばイベント発生日時312の前後所定期間内)に発生したイベントのイベント履歴のみを検索対象とするようにしてもよい。また(障害発生と判断した契機となったイベント履歴から取得される)仮想サーバ名322や物理サーバ名323をキーとして稼働サーバマッピングテーブル122から取得できる仮想サーバ稼働開始日時324に設定されている日時を起点とする所定期間内(例えば仮想サーバ稼働開始日時324に設定されている日時からイベントの発生日時312に設定されている日時までの間)に発生したイベントのイベント履歴のみを検索対象とするようにしてもよい。
S4135では、障害解析部114は、S4134の検索において物理サーバ20に関するイベント履歴を一つ以上検索することができたか否かを判断する(S4135)。検索することができなかった場合は(S4135:NO)、S4136に進み、検索することができた場合は(S4135:YES)、S4147に進む。
S4136において、障害解析部114は、S412において障害発生と判断したイベント履歴の内容を、解析履歴テーブル123の物理サーバイベント352として登録し、これに対応する解析結果353の原因箇所3531に「仮想サーバ」を、エラーレベル3532に「2」を登録する。その後は図4AのS414に進む。つまり障害解析部114は、S4131において仮想サーバ212のイベント履歴を検索することはできたが、S4134において物理サーバ20のイベント履歴を検索することができなかったので、障害の原因が仮想サーバ212にあると判断する。
S4137では、障害解析部114は、S4131において(第1の検索条件により)検索された仮想サーバ212のイベント履歴に対応する障害の原因箇所(第1の障害箇所)と、S4134において(第2の検索条件により)検索された物理サーバ20のイベント履歴に対応する障害の原因箇所(第2の障害箇所)とが一致するか否かを判断する。ここで検索条件として仮想サーバイベント解析ポリシーテーブル124又は物理サーバイベント解析ポリシーテーブル125に登録されている検索条件を用いた場合には、イベント履歴に対応する上記障害の原因箇所は、仮想サーバイベント解析ポリシーテーブル124又は物理サーバイベント解析ポリシーテーブル125において、検索されたイベント履歴を検索した際に用いた検索条件に対応づけられている原因箇所332,342である。またイベント履歴に記述されている、仮想サーバ名や物理サーバ名をキーとしてイベント履歴を検索した場合、障害解析部114は、検索されたイベント履歴に記述されているメッセージ314やイベント種別315等に基づき、障害の原因箇所を特定する。原因箇所が一致する場合は(S4137:YES)S4138に進み、原因箇所が一致しない場合は(S4137:NO)S4136に進む。つまり障害解析部114は、S4131において仮想サーバ212のイベント履歴を、またS4134において物理サーバ20のイベント履歴を検索することができたが、各イベント履歴の原因箇所が一致しなかったので、障害の原因が仮想サーバ212にあると判断する。
S4138では、障害解析部114は、S412において障害発生と判断したイベント履歴の内容を、解析履歴テーブル123の仮想サーバイベント351及び物理サーバイベント352として登録し、これらに対応する解析結果353の原因箇所3531に「物理サーバ」を、エラーレベル3532に「3」を登録する。その後は図4AのS414に進む。つまり障害解析部114は、S4131において仮想サーバ212のイベント履歴を検索することができ、S4134において物理サーバ20のイベント履歴を検索することができ、しかもS4137の判断において各イベント履歴の原因箇所が一致したので、障害の原因が物理サーバ20にある可能性が高いと判断する。
以上に説明した障害解析処理S413によれば、障害の原因が業務プロセス2122にあるのか、仮想サーバ212にあるのか、もしくは物理サーバ20にあるのかを高い精度で容易かつ迅速に特定することができる。またリアルタイムに内容が更新されるイベント履歴テーブル121の内容に基づいて解析がなされるので障害が発生してから短期間に障害の原因を特定することができる。従って、緊急性を要する障害に対して有効に対応することができる。
図4AのS414では、ユーザインタフェース部113が、解析履歴テーブル123の内容を管理サーバ10の出力装置105に出力する。ユーザインタフェース部113は、出力される解析履歴テーブル123の内容のうち解析結果353の編集環境を提供する。解析履歴テーブル管理部116は、編集された解析結果353の内容を解析履歴テーブル123に反映する。また解析履歴テーブル管理部116は、解析履歴テーブル123の編集内容を、仮想サーバイベント解析ポリシーテーブル124、又は物理サーバイベント解析ポリシーテーブル125に反映する。これにより仮想サーバイベント解析ポリシーテーブル124における検索条件331と原因箇所332の対応精度、又は物理サーバイベント解析ポリシーテーブル125における検索条件341、原因箇所342、及びエラーレベル343の対応精度が向上し、障害原因の解析精度を向上することができる。
=障害対処=
図4AのS415では、対処実行部118が、障害の原因に応じた処理(以下、障害対処処理S415と称する。)を行う。対処実行部118は、障害対処処理S415に際し、図2Aに示したアプリケーション管理テーブル127、SLA定義テーブル128、リソース管理テーブル129、依存関係管理テーブル130、サーバ管理テーブル131、及びパッチ管理テーブル132を用いる。まずこれらのテーブルの内容について説明する。
図3Gは上記テーブルのうちアプリケーション管理テーブル127の一例である。アプリケーション管理テーブル127には、仮想サーバ212において実行されるアプリケーションに関する情報が管理される。同図に示すように、アプリケーション管理テーブル127は、アプリケーション名が設定されるAP名1271、AP名1271によって設定されているアプリケーションに対応するプロセスの名称が設定されるプロセス名1272、プロセス名1272に設定されているプロセス名1272に対応するプロセスの識別子が設定されるプロセスID1273、AP名1271に設定されているアプリケーションが動作している仮想サーバ212の名称が設定される仮想サーバ名1274、及び仮想サーバ名1274に設定されている仮想サーバ212のSLA(Service Level Agreement)の名称が設定される関連SLA1275、の各項目を含む一つ以上のレコードで構成されている。
図3HはSLA定義テーブル128の一例である。SLA定義テーブル128には個々のSLAに関する情報が管理される。同図に示すように、SLA定義テーブル128は、SLAの名称が設定されるSLA名1281、及びSLA名1281に設定されているSLAの内容が設定されるSLA内容1282、の各項目を含む一つ以上のレコードで構成されている。
図3Iはリソース管理テーブル129の一例である。リソース管理テーブル129には、仮想サーバ212で実行されるソフトウエアが使用するリソースの量が管理される。同図に示すように、リソース管理テーブル129は、ソフトウエアの名称が設定されるAP名1291、AP名1291に設定されているソフトウエアのプロセスの名称が設定されるプロセス名1292、プロセス名1292に設定されているプロセスが使用するメモリの容量が設定される使用メモリ量1293、及びプロセス名1292に設定されているプロセスが使用するディスクの容量が設定される使用ディスク量1294、の各項目を含む一つ以上のレコードで構成されている。
図3Jは依存関係管理テーブル130の一例である。依存関係管理テーブル130には、仮想サーバ212で動作する(インストールされている)、アプリケーション、ミドルウエア、ドライバ、オペレーティングシステム(OS)などのソフトウエアの種類間の依存関係(レイヤー構成)が管理される。同図に示すように、依存関係管理テーブル130は、仮想サーバ212の名称が設定される仮想サーバ名1301、及び仮想サーバ名1301に設定されている仮想サーバ名に対応する仮想サーバ212における依存関係が設定される構成情報1302、の各項目を含む一つ以上のレコードで構成されている。また同図に示すように、構成情報1302は、アプリケーション13021、ミドルウエア13022、ドライバ13023、及びオペレーティングシステム13024などのソフトウエアの種類間の依存関係を示す、階層化されたサブレコードを含む。
図3Kはサーバ管理テーブル131の一例である。サーバ管理テーブル131には、物理サーバ20又は仮想サーバ212が保有している(提供可能な)リソースが管理される。同図に示すように、サーバ管理テーブル131は、物理サーバ20及び仮想サーバ212の名称が設定されるサーバ名1311、サーバ名1311に設定されているサーバ名に対応する物理サーバ20又は仮想サーバ212が保有しているプロセッサ(中央処理装置101)に関する情報(例えば、プロセッサの形式、種類(Xeon(登録商標))、動作クロックや内部キャッシュ等の処理性能)が設定されるCPU1312、サーバ名1311に設定されているサーバ名に対応する物理サーバ20又は仮想サーバ212が保有しているメモリ(主記憶装置102)に関する情報(容量、応答速度等)が設定されるメモリ1313、サーバ名1311に設定されているサーバ名に対応する物理サーバ20又は仮想サーバ212が保有しているハードディスクドライブ(補助記憶装置103)に関する情報(容量、応答速度等)が設定されるHDD1314、及び物理サーバ20又は仮想サーバ212が保有しているその他のリソースに関する情報1315、の各項目を含む一つ以上のレコードで構成されている。
図3Lはパッチ管理テーブル132の一例である。パッチ管理テーブル132には、仮想サーバ212にインストールされているソフトウエアのバージョンに関する情報が管理される。同図に示すように、パッチ管理テーブル132は、ソフトウエアの名称が設定されるソフトウエア名1321、ソフトウエア名1321が示すソフトウエアがインストールされている仮想サーバの名称を示す仮想サーバ名1322、ソフトウエア名1321が示すソフトウエアが更新された日付を示す更新日時1325、現在のバージョン(更新後のバージョン)の一つ前のバージョンが設定される更新前バージョン1323、更新後のバージョンが設定される更新後バージョン1324、の各項目を含む一つ以上のレコードで構成されている。
<対処実行部>
図5に図2Aに示した対処実行部118が備える主な機能を示している。同図に示すように、対処実行部118は、障害対処処理S415に関する主な機能として、仮想サーバ212で実行されているソフトウエアを仮想サーバ212単位で他の仮想サーバに移動させる仮想サーバ移動処理部1181、仮想サーバ212で実行されているソフトウエアをアプリケーション単位で移動させるアプリケーション移動処理部1182、仮想サーバ212にインストールされているソフトウエアのバージョンをロールバックする(バージョン更新前の状態に戻す)ロールバック処理部1183、及び障害の原因がリソース不足であるか否かを判定するリソース不足判定部1184を備える。
<障害対処処理>
図6は障害対処処理S415の全体的な流れを説明するフローチャートである。以下、同図とともに障害対処処理S415について説明する。尚、以下の説明において、障害が発生している仮想サーバ212のことを障害仮想サーバ212と称し、障害仮想サーバ212を実現している物理サーバ20のことを障害物理サーバ20と称する。また障害仮想サーバ212において実行されている業務プロセス2122のことを障害業務プロセス2122と称する。障害仮想サーバ212と障害物理サーバ20の対応は稼働サーバマッピングテーブル122から取得することができる。
まず対処実行部118は、解析履歴テーブル123(図3E)を参照し、障害仮想サーバ212に生じている障害の原因が、その障害仮想サーバ212を実現している障害物理サーバ20のハードウエア障害であるか否かを判断する(S611)。ハードウエア障害である場合の例として、物理サーバ20が備えるハードディスクドライブ171のディスクアクセスエラーがある。
対処実行部118は、障害の原因が障害物理サーバ20のハードウエア障害である場合(S611:YES)、障害仮想サーバ212を障害物理サーバ20から他の物理サーバ20に移動させる処理(障害仮想サーバ212を実現する物理サーバ20を変更する処理。以下、仮想サーバ移動処理S621と称する。)を行う。一方、障害の原因が障害物理サーバ20のハードウエア障害でないと判断した場合には(S611:NO)、S631に進む。
<仮想サーバ移動処理>
図7は、仮想サーバ移動処理S621を説明するフローチャートである。仮想サーバ移動処理S621では、障害仮想サーバ212で実行されているソフトウエアを他の仮想サーバ212に移動させる(障害仮想サーバ212を実現している物理サーバ20を変更する。)。以下、同図とともに仮想サーバ移動処理S621について説明する。
まず対処実行部118は、管理サーバ10の管理対象である各仮想サーバ212で動作しているソフトウエアを依存関係管理テーブル130から取得し、リソース管理テーブル129から、各ソフトウエアが使用するリソース量を取得し、取得したリソース量を合計して各仮想サーバ212が使用するリソース量を求める(S711)。
次に対処実行部118は、サーバ管理テーブル131から、各仮想サーバ212が保有しているリソース量を取得し、これとS711で求めた管理対象である各仮想サーバ212が使用するリソース量から、各仮想サーバ212の空きリソース量を求める(S712)。
そして対処実行部118は、障害仮想サーバ212が使用するリソース量と、各仮想サーバ212の空きリソース量を比較することにより、障害仮想サーバ212を移動させることが可能な他の仮想サーバ212を検索する(S713)。移動先の仮想サーバ212が存在すれば(S713:YES)、対処実行部118は、障害仮想サーバ212のソフトウエアをその仮想サーバ212に移動させる(S714)。尚、移動先候補の仮想サーバ212が複数存在する場合には、例えばそのうちリソース量に最も余裕のある仮想サーバ212を選択する。一方、移動させることが可能な仮想サーバ212が存在しない場合には(S713:NO)、S721に進む。
S721では、対処実行部118は、仮想サーバ212を新規に作成可能か否か判断する(S721)。この判断は、例えばサーバ管理テーブル131やリソース管理テーブル129から取得できる、管理サーバ10の管理対象である各物理サーバ20が保有しているリソース量や各物理サーバ20の空きリソース量に基づき判断する。
仮想サーバ212を新規に作成可能であれば(S721:YES)、仮想サーバ212を新規に作成し(S722)、障害仮想サーバ212のソフトウエアをその仮想サーバ212に移動させる(S714)。一方、そのような物理サーバ20が存在しない場合には(S721:NO)、出力装置105にメッセージを表示するなどして障害仮想サーバ212を移動できない旨をユーザに通知する(S723)。
以上のように、管理サーバ10は、障害の原因が物理サーバ20のハードウエア障害であると判断すると、管理サーバ10の管理対象である仮想サーバ212の夫々の空きリソース量を求め、求めた空きリソース量と障害仮想サーバ212で実行されているソフトウエアが使用するリソース量とを比較して、障害仮想サーバ212で実行されているソフトウエアを移動させることが可能な他の仮想サーバ212が存在するか否かを判断し、移動させることが可能な場合は、ソフトウエアを仮想サーバ212単位で他の仮想サーバ212に移動させる。
このように、以上の仕組みによれば、障害の原因が物理サーバ20である場合は他の障害仮想サーバ212以外の仮想サーバ212にソフトウエアが自動的に移動させるので、障害発生時にスムーズに障害仮想サーバ212が行っていた処理を復旧させることができる。また空きリソースを有する他の仮想サーバ212(物理サーバ20)を探して移動先とするので、仮想化システムが保有するリソースを有効に利用することができる。
また空きリソースを有する仮想サーバ212が見つからない場合には、新たな仮想サーバ212を作成可能か否か判断し、可能な場合は仮想サーバ212を新規に作成してそこに障害仮想サーバ212のソフトウエアを移動させるので、障害からの自動復旧をより確実に行うことができる。
再び図6に戻って説明を続ける。図6のS611において、障害の原因が障害物理サーバ20のハードウエア障害でないと判断した場合(S611:NO)、対処実行部118は、イベント履歴テーブル121(図3A)に、障害業務プロセス2122と同じ業務プロセス2122(プロセス名313が同じ業務プロセス2122)の履歴のうち、処理が正常終了している履歴(例えば、イベント種別315に「Information」が設定されている履歴)が存在するか否かを判断する(S631)。正常終了している履歴が存在する場合には(S631:YES)、S641に進む。一方、正常終了している履歴が存在しない場合には(S631:NO)、S651に進む。
S641では、対処実行部118は、パッチ管理テーブル132(図3L)に、その更新日時1325が、S631で検索された正常終了している履歴の発生日時312の後である、障害仮想サーバ212の更新履歴(以下、バージョン更新履歴と称する。)が存在するか否かを判断する。そのようなバージョン更新履歴が存在すれば(S641:YES)、S642に進み、存在しなければ(S641:NO)、S651に進む。
S642では、対処実行部118は、障害仮想サーバ212以外の仮想サーバ212において、障害業務プロセス2122と同じ業務プロセス2122の履歴のうち、S631で検索された正常終了している履歴の発生日時312の後に行われたバージョン更新履歴の後に正常終了している履歴(例えばイベント種別315に「Information」が設定されている履歴)が存在するか否かを判断する(S642)。そのような履歴が存在しない場合には(S641:NO)、S643に進んでバージョンを元に戻す処理(バージョンダウン処理。以下、ロールバック処理S643と称する。)を行う。即ち、この場合は最近行われたバージョン更新が原因で障害が発生したと推定されるので、対処実行部118は、バージョンを元に戻すための処理を行う。
図8はロールバック処理S643を説明するフローチャートである。まず対処実行部118は、依存関係管理テーブル130(図3J)から、障害業務プロセス2122が実現しているアプリケーションと依存関係のあるソフトウエア(図3Jの依存関係管理テーブル130では、ミドルウエア、ドライバ、オペレーティングシステム(OS))を取得する(S811)。
次に対処実行部118は、パッチ管理テーブル132(図3L)から、S811で取得した各ソフトウエアの障害発生時より前のバージョン(更新前バージョン663)を取得する(S812)。そして対処実行部118は、各ソフトウエアのバージョンを取得した更新前バージョン633にロールバックする(S813)。
一方、S642において、そのような履歴が存在する場合には(S642:YES)、S644に進み、対処実行部118は、障害仮想サーバ212で動作しているアプリケーションを他の仮想サーバ212に移動させる処理(以下、アプリケーション移動処理S644と称する。)を行う。即ち、この場合は最近行われたバージョン更新は必ずしも障害の原因ではないと推定されるので、ロールバックは行わないが、対処実行部118はアプリケーションを他の仮想サーバ212に移動させる。
図9はアプリケーション移動処理S644を説明するフローチャートである。まず対処実行部118は、依存関係管理テーブル130(図3J)から、障害業務プロセス2122が実現しているアプリケーションと依存関係のあるソフトウエア(図3Jの依存関係管理テーブル130では、ミドルウエア、ドライバ、オペレーティングシステム(OS))を取得する(S911)。尚、障害業務プロセス2122が実現しているアプリケーションは、障害業務プロセス2122のプロセス名313をキーとしてアプリケーション管理テーブル127を検索することにより特定する。
次にS911で取得した依存関係、アプリケーション管理テーブル127、依存関係管理テーブル130(図3J)、及びSLA定義テーブル128に基づき、アプリケーションの移動先となりうる仮想サーバ212の候補を検索する(S912)。
例えば障害業務プロセス2122のプロセス名が「aa」である場合、図3Gに示したアプリケーション管理テーブル127では、アプリケーション(AP01)を移動することになる。この場合、図3Jの依存関係管理テーブル130では、アプリケーション(AP01)は、ミドルウエア(ミドルウエア1)、ドライバ(ドライバ1)、及びオペレーティングシステム(OS1)という環境で動作するので、移動先の仮想サーバ212もそのような環境を備えている必要がある。またアプリケーション(AP01)の関連SLA1275には「sla001,sla003」が設定されているので、移動先の仮想サーバ212のミドルウエアもこれらのSLAを満たしている必要がある。
次に対処実行部118は、S911で取得した各ソフトウエアが使用するリソース量をリソース管理テーブル129から取得する(S913)。
次に対処実行部118は、S912で検索した候補の仮想サーバ212の空きリソース量を、サーバ管理テーブル131から求める(S914)。尚、空きリソース量は例えば図7のS711で説明したのと同様の方法で取得する。
次に対処実行部118は、S913で取得した、S911で取得した各ソフトウエアが使用するリソース量と、S914で求めた、候補の仮想サーバ212の空きリソース量とを比較し、アプリケーションを移動させることが可能な仮想サーバ212が存在するか否かを判断する(S915)。
移動させることが可能な仮想サーバ212が存在する場合には(S915:YES)、障害仮想サーバ212のアプリケーションを移動させることが可能と判断した仮想サーバ212に移動する(S916)。移動させることが可能な仮想サーバ212が存在しない場合には(S915:NO)、障害仮想サーバ212のアプリケーションを移動することができない旨を、出力装置105を介してユーザに通知する(S917)。
以上のように、対処実行部118は、障害の原因が物理サーバ20のハードウエア障害でないと判断した場合には、障害業務プロセス2122の実行履歴、及び障害業務プロセス2122を実現しているソフトウエアの更新履歴に基づき、当該ソフトウエアの更新が行われた後に障害業務プロセス2122が正常終了している実行履歴が存在するか否かを判断し、そのような実行履歴が存在しない場合は、ソフトウエアのバージョンをロールバックする。このように、本実施形態の管理サーバ10は、障害の原因をより正確に特定して適切な対処を行うので、障害からの復旧を確実に行うことができる。
一方、正常終了している実行履歴が存在する場合には、障害業務プロセス2122(アプリケーション)を他の仮想サーバ212に移動させる。このように、本実施形態の管理サーバ10は、障害の原因をより正確に特定してアプリケーション単位で移動を行うので、障害からの復旧を迅速かつ確実に行うことができる。
図6のS651について説明する。S651では、対処実行部118は、障害の原因がリソース不足であるか否かを判断する。リソース不足が原因であれば(S651:YES)、S644に進む。リソース不足が原因でなければ(S651:NO)、S681に進む。
ここでリソース不足が原因か否かの判断は、例えばリソース管理テーブル129及び依存関係管理テーブル130から、障害業務プロセス2122が使用するリソース量を求め、求めたリソース量と、例えばS711で説明した方法により求まる、障害物理サーバ20の空きのリソース量とを比較することにより行う。
また正常終了した後に障害業務プロセス2122の更新履歴が存在しない場合には(S641:NO)、例えば次のようにしてリソース不足か否かを判断する。まず対処実行部118は、障害発生時点における障害仮想サーバ212での業務プロセス2122の実行多重度を取得する。一方、対処実行部118は、上記正常終了時における業務プロセス2122の実行多重度をイベント履歴テーブル121から取得する。そして対処実行部118は、例えば障害発生時の実行多重度が正常終了時の実行多重度よりも大であればリソース不足であると判断し、障害発生時の実行多重度が正常終了時の実行多重度以下であればリソース不足でないと判断する。
このように、対処実行部118は、リソース不足が障害の原因か否かを判断し、リソース不足が原因であると判断した場合には(S651:YES)、障害業務プロセス2122(アプリケーション)を他の仮想サーバ212に移動させる。このように、本実施形態の管理サーバ10は、リソース不足が障害の原因であることを迅速に判断してアプリケーション単位で移動を行うので、障害からの復旧を迅速かつ確実に行うことができる。また対処実行部118は、リソース不足か否かの判断を、状況((S631:NO)の場合か、(S651:NO)の場合か)に応じて最適な方法で行うので、障害からの復旧を迅速かつ確実に行うことができる。
図6のS661では、対処実行部118は、障害業務プロセス2122を再実行する。S662では、対処実行部118は、再実行の結果が正常終了か否かを判断する。正常終了であれば(S662:YES)、処理が終了する。正常終了でなければ(S662:NO)、対処実行部118は、対処が正常に終了しなかった旨を、出力装置105を介してユーザに通知する(S681)。尚、この通知に際し、例えば障害対処処理S415において行われた処理の経過情報(ログ情報)をユーザに通知するようにしてもよい。
尚、以上の実施形態の説明は本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明はその趣旨を逸脱することなく、変更、改良され得ると共に本発明にはその等価物が含まれることは勿論である。例えば、障害の原因に応じて設定されるエラーレベルは必ずしも以上に説明したものに限定される訳ではなく、ユーザがエラーレベルを任意に設定できるようにしてもよい。
10 管理サーバ
20 物理サーバ
30 記憶装置
100 コンピュータ
111 イベント履歴管理部
112 マッピングテーブル管理部
113 ユーザインタフェース部
114 障害解析部
115 ポリシーテーブル管理部
116 解析履歴テーブル管理部
117 対処テーブル管理部
118 対処実行部
121 イベント履歴テーブル
122 稼働サーバマッピングテーブル
123 解析履歴テーブル
124 仮想サーバイベント解析ポリシーテーブル
125 物理サーバイベント解析ポリシーテーブル
126 対処テーブル
127 アプリケーション管理テーブル
128 SLA定義テーブル
129 リソース管理テーブル
130 依存関係管理テーブル
131 サーバ管理テーブル
132 パッチ管理テーブル
211 仮想化機構
212 仮想サーバ
2121 オペレーティングシステム
2122 業務プロセス
2123 仮想イベント通知部
213 物理イベント通知部

Claims (16)

  1. 物理サーバで動作する仮想化機構によって仮想サーバが実現される仮想化環境において生じる障害の解析方法であって、
    前記物理サーバと通信可能に接続される管理サーバが、
    前記仮想サーバと当該仮想サーバが実現されている前記物理サーバとの対応が登録されたマッピングテーブルを記憶し、
    前記物理サーバで生じたイベントの履歴である第1のイベント履歴と、前記仮想サーバで生じたイベントの履歴である第2のイベント履歴とを蓄積記憶し、
    前記仮想サーバで動作している業務プロセスの障害に関する前記イベントを受信すると、当該イベントを発した仮想サーバに関する前記第1のイベント履歴と、前記マッピングテーブルから取得される、前記イベントを発した前記仮想サーバを実現している前記物理サーバに関する前記第2のイベント履歴とを、前記蓄積記憶している前記イベント履歴から検索し、その検索結果に基づき障害の原因を特定すること
    を特徴とする障害の解析方法。
  2. 請求項1に記載の障害の解析方法であって、
    前記管理サーバが、
    前記第1のイベント履歴の検索に用いる第1の検索条件と第1の障害箇所とを対応づけた仮想サーバイベント解析ポリシーテーブル、及び前記第2のイベント履歴の検索に用いる第2の検索条件と第2の障害箇所とを対応づけた物理サーバイベント解析ポリシーテーブルを記憶し、
    蓄積記憶している前記イベント履歴から、前記仮想サーバイベント解析ポリシーテーブルに登録されている前記第1の検索条件に該当する前記第1のイベント履歴を検索し、その結果、該当する前記第1のイベント履歴を検索することができない場合には、障害の原因が前記業務プロセスにあると特定し、
    前記蓄積記憶しているイベント履歴から、前記仮想サーバイベント解析ポリシーテーブルに登録されている前記第1の検索条件に該当する前記第1のイベント履歴を検索するとともに、前記物理サーバイベント解析ポリシーテーブルに登録されている前記第2の検索条件に該当する前記第2のイベント履歴を検索し、その結果、該当する前記第1のイベント履歴を検索することができたが、前記第2のイベント履歴を検索することができなかった場合には、障害の原因が前記仮想サーバにあると特定し、
    前記蓄積記憶しているイベント履歴から、前記仮想サーバイベント解析ポリシーテーブルに登録されている前記第1の検索条件に該当する前記第1のイベント履歴を検索するとともに、前記物理サーバイベント解析ポリシーテーブルに登録されている前記第2の検索条件に該当する前記第2のイベント履歴を検索し、その結果、該当する前記第1のイベント履歴及び前記第2のイベント履歴を検索することができ、かつ、検索された前記第1のイベント履歴の検索に用いた前記第1の検索条件に対応づけられている前記第1の障害箇所と検索された前記第2のイベント履歴の検索に用いた前記第2の検索条件に対応づけられている前記第2の障害箇所とが一致しない場合には障害の原因が前記仮想サーバにあると特定し、一致する場合には障害の原因が前記物理サーバにあると特定すること
    を特徴とする障害の解析方法。
  3. 請求項1に記載の障害の解析方法であって、
    前記管理サーバは、
    特定した前記障害の原因と、当該特定に至る過程で該当する前記第1のイベント履歴を検索することができた前記第1の検索条件又は前記第2のイベント履歴を検索することができた前記第2の検索条件とを対応づけて記載した解析結果を出力し、
    前記解析結果の変更要求を受け付けて、受け付けた前記変更要求に基づき前記仮想サーバイベント解析ポリシーテーブルにおいて前記第1の検索条件に対応づけられている前記第1の障害箇所、又は物理サーバイベント解析ポリシーテーブルにおいて前記第2の検索条件に対応づけられている前記第2の障害箇所を変更すること
    を特徴とする障害の解析方法。
  4. 請求項1に記載の障害の解析方法であって、
    前記管理サーバは、前記蓄積記憶している前記イベント履歴のうち、前記業務プロセスについての前記イベント履歴の障害が発生した日時を起点とする所定期間内に発生したイベントについての前記イベント履歴のみを対象として前記検索を行うこと
    を特徴とする障害の解析方法。
  5. 請求項1に記載の障害の解析方法であって、
    前記管理サーバは、前記仮想化環境において前記仮想サーバの移動が行われた直近の日時を記憶し、
    前記管理サーバは、前記蓄積記憶している前記イベント履歴のうち、障害が発生した前記業務プロセスが動作している前記仮想サーバの移動が行われた日時を起点とする所定期間内に発生したイベントについての前記イベント履歴のみを対象として、前記検索を行うこと
    を特徴とする障害の解析方法。
  6. 物理サーバで動作する仮想化機構によって仮想サーバが実現される仮想化環境において生じる障害の解析に用いられ、前記物理サーバと通信可能に接続される管理サーバであって、
    前記仮想サーバと当該仮想サーバが実現されている前記物理サーバとの対応が登録されたマッピングテーブルを記憶するマッピングテーブル管理部と、
    前記物理サーバで生じたイベントの履歴である第1のイベント履歴と、前記仮想サーバで生じたイベントの履歴である第2のイベント履歴とを蓄積記憶するイベント履歴管理部と、
    前記仮想サーバで動作している業務プロセスの障害に関する前記イベントを受信すると、前記第1のイベント履歴と、前記マッピングテーブルから取得される、前記イベントを発した仮想サーバを実現している前記物理サーバに関する前記第2のイベント履歴とを、前記蓄積記憶している前記イベント履歴から検索し、その検索結果に基づき前記障害の原因を特定する障害解析部と
    を含むことを特徴とする管理サーバ。
  7. 請求項6に記載の管理サーバであって、
    前記第1のイベント履歴の検索に用いる第1の検索条件と第1の障害箇所とを対応づけた仮想サーバイベント解析ポリシーテーブル、及び前記第2のイベント履歴の検索に用いる第2の検索条件と第2の障害箇所とを対応づけた物理サーバイベント解析ポリシーテーブルを記憶するポリシーテーブル管理部を有し、
    前記障害解析部が、
    蓄積記憶している前記イベント履歴から、前記仮想サーバイベント解析ポリシーテーブルに登録されている前記第1の検索条件に該当する前記第1のイベント履歴を検索し、その結果、該当する前記第1のイベント履歴を検索することができない場合には、障害の原因が前記業務プロセスにあると特定し、
    前記蓄積記憶しているイベント履歴から、前記仮想サーバイベント解析ポリシーテーブルに登録されている前記第1の検索条件に該当する前記第1のイベント履歴を検索するとともに、前記物理サーバイベント解析ポリシーテーブルに登録されている前記第2の検索条件に該当する前記第2のイベント履歴を検索し、その結果、該当する前記第1のイベント履歴を検索することができたが、前記第2のイベント履歴を検索することができなかった場合には、障害の原因が前記仮想サーバにあると特定し、
    前記蓄積記憶しているイベント履歴から、前記仮想サーバイベント解析ポリシーテーブルに登録されている前記第1の検索条件に該当する前記第1のイベント履歴を検索するとともに、前記物理サーバイベント解析ポリシーテーブルに登録されている前記第2の検索条件に該当する前記第2のイベント履歴を検索し、その結果、該当する前記第1のイベント履歴及び前記第2のイベント履歴を検索することができ、かつ、検索された前記第1のイベント履歴の検索に用いた前記第1の検索条件に対応づけられている前記第1の障害箇所と検索された前記第2のイベント履歴の検索に用いた前記第2の検索条件に対応づけられている前記第2の障害箇所とが一致しない場合には障害の原因が前記仮想サーバにあると特定し、一致する場合には障害の原因が前記物理サーバにあると特定すること
    を特徴とする管理サーバ。
  8. 物理サーバで動作する仮想化機構によって仮想サーバが実現される仮想化環境において生じる障害の解析に用いられ、前記物理サーバと通信可能に接続される管理サーバに、
    前記仮想サーバと当該仮想サーバが実現されている前記物理サーバとの対応が登録されたマッピングテーブルを参照する機能と、
    前記物理サーバで生じたイベントの履歴である第1のイベント履歴と、前記仮想サーバで生じたイベントの履歴である第2のイベント履歴とを蓄積記憶する機能と、
    前記仮想サーバで動作している業務プロセスの障害に関する前記イベントを受信すると、前記第1のイベント履歴と、前記マッピングテーブルから取得される、前記イベントを発した仮想サーバを実現している前記物理サーバに関する前記第2のイベント履歴とを、前記蓄積記憶している前記イベント履歴から検索し、その検索結果に基づき前記障害の原因を特定する機能と
    を実現するためのプログラム。
  9. 請求項1に記載の障害の解析方法であって、
    前記管理サーバが、
    前記障害の原因が前記物理サーバのハードウエア障害であると判断した場合に、
    前記管理サーバの管理対象である前記仮想サーバの夫々の空きリソース量を求め、
    求めた前記空きリソース量と前記仮想サーバである障害仮想サーバで実行されているソフトウエアが使用するリソース量とを比較して、前記障害仮想サーバで実行されているソフトウエアを移動させることが可能な他の前記仮想サーバが存在するか否かを判断し、移動させることが可能であると判断した場合に、前記ソフトウエアを、前記他の仮想サーバに移動させる
    ことを特徴とする障害の解析方法。
  10. 請求項9に記載の障害の解析方法であって、
    前記管理サーバは、
    前記判断において障害仮想サーバで実行されているソフトウエアを移動させることが可能な他の前記仮想サーバが存在しないと判断した場合に、
    前記管理サーバの管理対象である前記物理サーバの空きリソース量から、新規に仮想サーバを作成可能か否か判断し、
    作成可能と判断した場合は新規に仮想サーバを作成し、前記ソフトウエアを新規に作成した前記仮想サーバに移動させる
    ことを特徴とする障害の解析方法。
  11. 請求項1に記載の障害の解析方法であって、
    前記管理サーバが、
    前記仮想サーバの夫々で実行される前記業務プロセスの実行履歴、及び前記業務プロセスを実現するソフトウエアの更新履歴を管理し、
    前記障害の原因が前記物理サーバのハードウエア障害でないと判断した場合に、
    前記実行履歴及び前記更新履歴に基づき、前記障害仮想サーバの業務プロセスについて、前記ソフトウエアの更新が行われた後に正常終了している実行履歴が存在するか否かを判断し、
    そのような実行履歴が存在しない場合は前記ソフトウエアのバージョンをロールバックして再起動する
    ことを特徴とする障害の解析方法。
  12. 請求項11に記載の障害の解析方法であって、
    前記管理サーバは、
    前記ソフトウエアの更新が行われた後に正常終了している実行履歴が存在するか否かの前記判断において、そのような実行履歴が存在する場合には、前記業務プロセスに対応するアプリケーションを実現するのに必要なリソース量と前記管理サーバの管理対象である前記仮想サーバの空きリソース量とを比較して、前記アプリケーションを移動させることが可能な他の前記仮想サーバが存在するか否かを判断し、存在する場合には、前記アプリケーションを前記他の仮想サーバに移動させる
    ことを特徴とする障害の解析方法。
  13. 請求項1に記載の障害の解析方法であって、
    前記管理サーバが、
    前記仮想サーバで実行される前記業務プロセスの実行履歴を管理し、
    前記障害の発生時点の後に前記業務プロセスについて正常終了した前記実行履歴が存在するか否かを判断し、
    前記正常終了した実行履歴が存在しない場合に、前記障害の原因がリソース不足であるか否かを判断し、
    リソース不足が原因である場合、前記業務プロセスに対応するアプリケーションを実現するのに必要なリソース量と前記管理サーバの管理対象である前記仮想サーバの空きリソース量とを比較して、前記アプリケーションを移動させることが可能な他の前記仮想サーバが存在するか否かを判断し、存在する場合に、前記アプリケーションを前記他の仮想サーバに移動させる
    ことを特徴とする障害の解析方法。
  14. 請求項13に記載の障害の解析方法であって、
    前記管理サーバは、
    前記障害の発生時点における前記業務プロセスの実行多重度と前記業務プロセスの正常実行時における実行多重度とを比較することにより前記障害の原因がリソース不足であるか否かを判断する
    ことを特徴とする障害の解析方法。
  15. 請求項6に記載の管理サーバであって、
    前記障害の原因が前記物理サーバのハードウエア障害であると判断した場合に、
    前記管理サーバの管理対象である前記仮想サーバの夫々の空きリソース量を求め、
    求めた前記空きリソース量と前記仮想サーバである障害仮想サーバで実行されているソフトウエアが使用するリソース量とを比較して、前記障害仮想サーバで実行されているソフトウエアを移動させることが可能な他の前記仮想サーバが存在するか否かを判断し、移動させることが可能と判断した場合に、前記ソフトウエアを、前記他の仮想サーバに移動させ
    前記判断において障害仮想サーバで実行されているソフトウエアを移動させることが可能な他の前記仮想サーバが存在しないと判断した場合に、
    前記管理サーバの管理対象である前記物理サーバの空きリソース量から、新規に仮想サーバを作成可能か否か判断し、
    作成可能と判断した場合は新規に仮想サーバを作成し、前記ソフトウエアを新規に作成した前記仮想サーバに移動させ、
    前記仮想サーバの夫々で実行される前記業務プロセスの実行履歴、及び前記業務プロセスを実現するソフトウエアの更新履歴を管理し、
    前記障害の原因が前記物理サーバのハードウエア障害でないと判断した場合に、
    前記実行履歴及び前記更新履歴に基づき、前記障害仮想サーバの業務プロセスについて、前記ソフトウエアの更新が行われた後に正常終了している実行履歴が存在するか否かを判断し、
    そのような実行履歴が存在しない場合は前記ソフトウエアのバージョンをロールバックして再起動し、
    前記ソフトウエアの更新が行われた後に正常終了している実行履歴が存在するか否かの前記判断において、そのような実行履歴が存在する場合には、前記業務プロセスに対応するアプリケーションを実現するのに必要なリソース量と前記管理サーバの管理対象である前記仮想サーバの空きリソース量とを比較して、前記アプリケーションを移動させることが可能な他の前記仮想サーバが存在するか否かを判断し、存在する場合には、前記アプリケーションを前記他の仮想サーバに移動させ、
    前記仮想サーバで実行される前記業務プロセスの実行履歴を管理し、
    前記障害の発生時点の後に前記業務プロセスについて正常終了した前記実行履歴が存在するか否かを判断し、
    前記正常終了した実行履歴が存在しない場合に、前記障害の原因がリソース不足であるか否かを判断し、
    リソース不足が原因である場合、前記業務プロセスに対応するアプリケーションを実現するのに必要なリソース量と前記管理サーバの管理対象である前記仮想サーバの空きリソース量とを比較して、前記アプリケーションを移動させることが可能な他の前記仮想サーバが存在するか否かを判断し、存在する場合に、前記アプリケーションを前記他の仮想サーバに移動させ、
    前記障害の発生時点における前記業務プロセスの実行多重度と前記業務プロセスの正常実行時における実行多重度とを比較することにより前記障害の原因がリソース不足であるか否かを判断する
    ことを特徴とする管理サーバ。
  16. 請求項8に記載のプログラムであって、前記管理サーバに、さらに、
    前記障害の原因が前記物理サーバのハードウエア障害であると判断した場合に、
    前記管理サーバの管理対象である前記仮想サーバの夫々の空きリソース量を求め、
    求めた前記空きリソース量と前記仮想サーバである障害仮想サーバで実行されているソフトウエアが使用するリソース量とを比較して、前記障害仮想サーバで実行されているソフトウエアを移動させることが可能な他の前記仮想サーバが存在するか否かを判断し、移動させることが可能であると判断した場合に、前記ソフトウエアを、前記他の仮想サーバに移動させる機能、
    前記判断において障害仮想サーバで実行されているソフトウエアを移動させることが可能な他の前記仮想サーバが存在しないと判断した場合に、
    前記管理サーバの管理対象である前記物理サーバの空きリソース量から、新規に仮想サーバを作成可能か否か判断し、
    作成可能と判断した場合は新規に仮想サーバを作成し、前記ソフトウエアを新規に作成した前記仮想サーバに移動させる機能、
    前記仮想サーバの夫々で実行される前記業務プロセスの実行履歴、及び前記業務プロセスを実現するソフトウエアの更新履歴を管理し、
    前記障害の原因が前記物理サーバのハードウエア障害でないと判断した場合に、
    前記実行履歴及び前記更新履歴に基づき、前記障害仮想サーバの業務プロセスについて、前記ソフトウエアの更新が行われた後に正常終了している実行履歴が存在するか否かを判断し、
    そのような実行履歴が存在しない場合は前記ソフトウエアのバージョンをロールバックして再起動する機能、
    前記ソフトウエアの更新が行われた後に正常終了している実行履歴が存在するか否かの前記判断において、そのような実行履歴が存在する場合には、前記業務プロセスに対応するアプリケーションを実現するのに必要なリソース量と前記管理サーバの管理対象である前記仮想サーバの空きリソース量とを比較して、前記アプリケーションを移動させることが可能な他の前記仮想サーバが存在するか否かを判断し、存在する場合には、前記アプリケーションを前記他の仮想サーバに移動させる機能、
    前記仮想サーバで実行される前記業務プロセスの実行履歴を管理し、
    前記障害の発生時点の後に前記業務プロセスについて正常終了した前記実行履歴が存在するか否かを判断し、
    前記正常終了した実行履歴が存在しない場合に、前記障害の原因がリソース不足であるか否かを判断し、
    リソース不足が原因である場合、前記業務プロセスに対応するアプリケーションを実現するのに必要なリソース量と前記管理サーバの管理対象である前記仮想サーバの空きリソース量とを比較して、前記アプリケーションを移動させることが可能な他の前記仮想サーバが存在するか否かを判断し、存在する場合に、前記アプリケーションを前記他の仮想サーバに移動させる機能、及び、
    前記障害の発生時点における前記業務プロセスの実行多重度と前記業務プロセスの正常実行時における実行多重度とを比較することにより前記障害の原因がリソース不足であるか否かを判断する機能
    を実現するためのプログラム。
JP2009135441A 2008-09-04 2009-06-04 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム Expired - Fee Related JP5140633B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009135441A JP5140633B2 (ja) 2008-09-04 2009-06-04 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム
US12/551,962 US8006134B2 (en) 2008-09-04 2009-09-01 Method for analyzing fault caused in virtualized environment, and management server

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008227401 2008-09-04
JP2008227401 2008-09-04
JP2009135441A JP5140633B2 (ja) 2008-09-04 2009-06-04 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム

Publications (2)

Publication Number Publication Date
JP2010086516A true JP2010086516A (ja) 2010-04-15
JP5140633B2 JP5140633B2 (ja) 2013-02-06

Family

ID=41727069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009135441A Expired - Fee Related JP5140633B2 (ja) 2008-09-04 2009-06-04 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム

Country Status (2)

Country Link
US (1) US8006134B2 (ja)
JP (1) JP5140633B2 (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011161835A1 (ja) * 2010-06-21 2011-12-29 株式会社日立製作所 原因分析構成変更のための方法および装置
WO2012066640A1 (ja) * 2010-11-16 2012-05-24 株式会社日立製作所 計算機システム、マイグレーション方法及び管理サーバ
JP2013509626A (ja) * 2009-10-30 2013-03-14 インターナショナル・ビジネス・マシーンズ・コーポレーション 仮想コンピューティング環境における障害管理のための方法、システム、およびコンピュータ・プログラム
JP2015092420A (ja) * 2015-02-17 2015-05-14 株式会社日立製作所 監視計算機及び方法
WO2015072004A1 (ja) * 2013-11-15 2015-05-21 株式会社日立製作所 計算機、計算機制御方法、および計算機制御プログラム
JP2015099533A (ja) * 2013-11-20 2015-05-28 三菱電機株式会社 情報処理装置及びプログラム
JP2015170328A (ja) * 2014-03-10 2015-09-28 富士通株式会社 情報蓄積プログラム、情報蓄積方法、情報蓄積装置、および情報蓄積システム
JP2016076071A (ja) * 2014-10-06 2016-05-12 富士通株式会社 ログ管理装置,ログ管理プログラム,及びログ管理方法
WO2016125387A1 (ja) * 2015-02-06 2016-08-11 日本電気株式会社 障害監視装置、仮想ネットワークシステム、障害監視方法およびプログラム
JP2017010491A (ja) * 2015-06-26 2017-01-12 セイコーエプソン株式会社 ネットワークシステム、サーバー、及び、ネットワークシステムの制御方法
JP2018018471A (ja) * 2016-07-29 2018-02-01 株式会社日立製作所 運用管理装置及び運用管理方法、並びに運用管理システム
US10445213B2 (en) 2016-07-04 2019-10-15 Fujitsu Limited Non-transitory computer-readable storage medium, evaluation method, and evaluation device

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7962798B2 (en) * 2006-04-17 2011-06-14 The Trustees Of Columbia University In The City Of New York Methods, systems and media for software self-healing
WO2008092162A2 (en) 2007-01-26 2008-07-31 The Trustees Of Columbia University In The City Of New York Systems, methods, and media for recovering an application from a fault or attack
US8635318B1 (en) * 2009-09-15 2014-01-21 Symantec Corporation Message broadcast protocol which handles configuration changes in a cluster of virtual servers
US8392760B2 (en) * 2009-10-14 2013-03-05 Microsoft Corporation Diagnosing abnormalities without application-specific knowledge
US8245083B2 (en) * 2009-12-24 2012-08-14 At&T Intellectual Property I, L.P. Systems, methods, and apparatus to debug a network application
US8352799B2 (en) * 2010-02-12 2013-01-08 Symantec Corporation Data corruption prevention during application restart and recovery
US9189308B2 (en) 2010-12-27 2015-11-17 Microsoft Technology Licensing, Llc Predicting, diagnosing, and recovering from application failures based on resource access patterns
FR2977691B1 (fr) * 2011-07-08 2013-07-12 Bull Sas Procede et programme d'ordinateur de gestion dynamique de services dans un cluster d'administration
US9026837B2 (en) * 2011-09-09 2015-05-05 Microsoft Technology Licensing, Llc Resource aware placement of applications in clusters
US8819490B2 (en) * 2011-12-30 2014-08-26 Microsoft Corporation Test execution spanning cloud and local devices
US9146793B2 (en) * 2012-05-18 2015-09-29 Hitachi, Ltd. Management system and management method
CN102902599B (zh) 2012-09-17 2016-08-24 华为技术有限公司 虚拟机内部故障处理方法、装置及系统
WO2014073046A1 (ja) * 2012-11-07 2014-05-15 富士通株式会社 情報処理装置、プログラムおよび仮想マシン移動方法
US9608933B2 (en) * 2013-01-24 2017-03-28 Hitachi, Ltd. Method and system for managing cloud computing environment
CN108418711B (zh) * 2013-09-30 2021-05-18 华为技术有限公司 故障管理的存储介质
US9519513B2 (en) * 2013-12-03 2016-12-13 Vmware, Inc. Methods and apparatus to automatically configure monitoring of a virtual machine
US9678731B2 (en) 2014-02-26 2017-06-13 Vmware, Inc. Methods and apparatus to generate a customized application blueprint
JP6748411B2 (ja) * 2015-08-31 2020-09-02 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及び、プログラム
CN107203451B (zh) * 2016-03-18 2020-09-18 伊姆西Ip控股有限责任公司 用于在存储系统中处理故障的方法及设备
US11595480B2 (en) * 2017-05-23 2023-02-28 Constructive Labs Server system for processing a virtual space
CN111125164A (zh) * 2018-10-30 2020-05-08 千寻位置网络有限公司 参考站故障排查的方法及系统、排障终端
EP3767464B1 (en) * 2019-07-19 2024-04-17 Ricoh Company, Ltd. Information processing system, information processing apparatus, information processing method, and program
US11789802B2 (en) * 2019-07-31 2023-10-17 Jio Platforms Limited System and method of mapping and diagnostics of data center resources
US11281522B2 (en) * 2019-08-30 2022-03-22 Microsoft Technology Licensing, Llc Automated detection and classification of dynamic service outages
JP7216767B2 (ja) * 2021-05-06 2023-02-01 楽天グループ株式会社 アクセス方法、通信システム、及びプログラム

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH041834A (ja) * 1990-04-19 1992-01-07 Nec Corp 入出力装置のエラー情報収集方法およびその装置
JP2000181759A (ja) * 1998-12-15 2000-06-30 Hitachi Information Systems Ltd 時系列データ検索システムと検索方法およびそのプログラムを記録した記録媒体
JP2002073361A (ja) * 2000-08-28 2002-03-12 Ando Electric Co Ltd 遠隔ソフトウエア更新可能な電子機器及び遠隔ソフトウエア更新方法。
JP2003085003A (ja) * 2001-09-06 2003-03-20 Matsushita Electric Ind Co Ltd 障害復旧援助方法、及び、障害復旧援助システム
JP2004355265A (ja) * 2003-05-28 2004-12-16 Ntt Docomo Inc 処理統括装置、及び、処理判定方法
JP2005025483A (ja) * 2003-07-02 2005-01-27 Hitachi Ltd ストレージ装置を有するネットワークにおける障害情報管理方法及び管理サーバ
JP2007026303A (ja) * 2005-07-20 2007-02-01 Fujitsu Ltd システム性能監視プログラム及びシステム性能監視方法
JP2007520003A (ja) * 2004-02-02 2007-07-19 フジツウ シーメンス コンピューターズ ゲゼルシャフト ミット ベシュレンクテル ハフツング コンピュータ障害発生時に複数のコンピュータの配列を操作する方法
JP2007323244A (ja) * 2006-05-31 2007-12-13 Nec Corp 仮想サーバ管理システムおよびその方法ならびに管理サーバ装置
JP2008059599A (ja) * 2007-09-28 2008-03-13 Hitachi Ltd 仮想化されたリソースの割当て方法及びその実施システム
JP2008065668A (ja) * 2006-09-08 2008-03-21 Internatl Business Mach Corp <Ibm> 障害発生の原因箇所の発見を支援する技術
JP2008140198A (ja) * 2006-12-04 2008-06-19 Hitachi Ltd フェイルオーバ方法、およびその計算機システム。
JP2008299509A (ja) * 2007-05-30 2008-12-11 Hitachi Ltd 仮想計算機システム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04257035A (ja) 1991-02-12 1992-09-11 Fujitsu Ltd 仮想計算機システム配下における障害情報処理方式
JP4202709B2 (ja) * 2002-10-07 2008-12-24 株式会社日立製作所 ストレージ装置を有するネットワークにおける、ボリューム及び障害管理方法
US7409583B2 (en) * 2002-10-07 2008-08-05 Hitachi, Ltd. Volume and failure management method on a network having a storage device
JP4294353B2 (ja) * 2003-03-28 2009-07-08 株式会社日立製作所 ジョブ管理機能を有するストレージ系障害管理方法及び装置
JP4736783B2 (ja) * 2005-12-19 2011-07-27 株式会社日立製作所 ストレージ装置を有するネットワークにおける、ボリューム及び障害管理方法
US7814364B2 (en) * 2006-08-31 2010-10-12 Dell Products, Lp On-demand provisioning of computer resources in physical/virtual cluster environments
US7840839B2 (en) * 2007-11-06 2010-11-23 Vmware, Inc. Storage handling for fault tolerance in virtual machines
JP4958739B2 (ja) * 2007-11-09 2012-06-20 株式会社日立製作所 障害の発生した記憶装置に記憶されているデータを修復するストレージシステム
JP5091704B2 (ja) * 2008-02-06 2012-12-05 株式会社日立製作所 ストレージ構成回復方法及びストレージ管理システム

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH041834A (ja) * 1990-04-19 1992-01-07 Nec Corp 入出力装置のエラー情報収集方法およびその装置
JP2000181759A (ja) * 1998-12-15 2000-06-30 Hitachi Information Systems Ltd 時系列データ検索システムと検索方法およびそのプログラムを記録した記録媒体
JP2002073361A (ja) * 2000-08-28 2002-03-12 Ando Electric Co Ltd 遠隔ソフトウエア更新可能な電子機器及び遠隔ソフトウエア更新方法。
JP2003085003A (ja) * 2001-09-06 2003-03-20 Matsushita Electric Ind Co Ltd 障害復旧援助方法、及び、障害復旧援助システム
JP2004355265A (ja) * 2003-05-28 2004-12-16 Ntt Docomo Inc 処理統括装置、及び、処理判定方法
JP2005025483A (ja) * 2003-07-02 2005-01-27 Hitachi Ltd ストレージ装置を有するネットワークにおける障害情報管理方法及び管理サーバ
JP2007520003A (ja) * 2004-02-02 2007-07-19 フジツウ シーメンス コンピューターズ ゲゼルシャフト ミット ベシュレンクテル ハフツング コンピュータ障害発生時に複数のコンピュータの配列を操作する方法
JP2007026303A (ja) * 2005-07-20 2007-02-01 Fujitsu Ltd システム性能監視プログラム及びシステム性能監視方法
JP2007323244A (ja) * 2006-05-31 2007-12-13 Nec Corp 仮想サーバ管理システムおよびその方法ならびに管理サーバ装置
JP2008065668A (ja) * 2006-09-08 2008-03-21 Internatl Business Mach Corp <Ibm> 障害発生の原因箇所の発見を支援する技術
JP2008140198A (ja) * 2006-12-04 2008-06-19 Hitachi Ltd フェイルオーバ方法、およびその計算機システム。
JP2008299509A (ja) * 2007-05-30 2008-12-11 Hitachi Ltd 仮想計算機システム
JP2008059599A (ja) * 2007-09-28 2008-03-13 Hitachi Ltd 仮想化されたリソースの割当て方法及びその実施システム

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013509626A (ja) * 2009-10-30 2013-03-14 インターナショナル・ビジネス・マシーンズ・コーポレーション 仮想コンピューティング環境における障害管理のための方法、システム、およびコンピュータ・プログラム
WO2011161835A1 (ja) * 2010-06-21 2011-12-29 株式会社日立製作所 原因分析構成変更のための方法および装置
JP2012003647A (ja) * 2010-06-21 2012-01-05 Hitachi Ltd 原因分析構成変更のための方法および装置
WO2012066640A1 (ja) * 2010-11-16 2012-05-24 株式会社日立製作所 計算機システム、マイグレーション方法及び管理サーバ
JP5577412B2 (ja) * 2010-11-16 2014-08-20 株式会社日立製作所 計算機システム、マイグレーション方法及び管理サーバ
JPWO2015072004A1 (ja) * 2013-11-15 2017-03-09 株式会社日立製作所 計算機、計算機制御方法、および計算機制御プログラム
WO2015072004A1 (ja) * 2013-11-15 2015-05-21 株式会社日立製作所 計算機、計算機制御方法、および計算機制御プログラム
JP2015099533A (ja) * 2013-11-20 2015-05-28 三菱電機株式会社 情報処理装置及びプログラム
JP2015170328A (ja) * 2014-03-10 2015-09-28 富士通株式会社 情報蓄積プログラム、情報蓄積方法、情報蓄積装置、および情報蓄積システム
JP2016076071A (ja) * 2014-10-06 2016-05-12 富士通株式会社 ログ管理装置,ログ管理プログラム,及びログ管理方法
WO2016125387A1 (ja) * 2015-02-06 2016-08-11 日本電気株式会社 障害監視装置、仮想ネットワークシステム、障害監視方法およびプログラム
JPWO2016125387A1 (ja) * 2015-02-06 2017-11-24 日本電気株式会社 障害監視装置、仮想ネットワークシステム、障害監視方法およびプログラム
US10417101B2 (en) 2015-02-06 2019-09-17 Nec Corporation Fault monitoring device, virtual network system, and fault monitoring method
JP2015092420A (ja) * 2015-02-17 2015-05-14 株式会社日立製作所 監視計算機及び方法
JP2017010491A (ja) * 2015-06-26 2017-01-12 セイコーエプソン株式会社 ネットワークシステム、サーバー、及び、ネットワークシステムの制御方法
US10445213B2 (en) 2016-07-04 2019-10-15 Fujitsu Limited Non-transitory computer-readable storage medium, evaluation method, and evaluation device
JP2018018471A (ja) * 2016-07-29 2018-02-01 株式会社日立製作所 運用管理装置及び運用管理方法、並びに運用管理システム
WO2018021437A1 (ja) * 2016-07-29 2018-02-01 株式会社日立製作所 運用管理装置及び運用管理方法、並びに運用管理システム

Also Published As

Publication number Publication date
US8006134B2 (en) 2011-08-23
US20100058108A1 (en) 2010-03-04
JP5140633B2 (ja) 2013-02-06

Similar Documents

Publication Publication Date Title
JP5140633B2 (ja) 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム
JP5440273B2 (ja) スナップショット管理方法、スナップショット管理装置、及びプログラム
US9652326B1 (en) Instance migration for rapid recovery from correlated failures
JP5719974B2 (ja) 複数の監視対象デバイスを有する計算機システムの管理を行う管理システム
JP5427011B2 (ja) 仮想ハードディスクの管理サーバおよび管理方法、管理プログラム
JP4980792B2 (ja) 仮想計算機の性能監視方法及びその方法を用いた装置
US20190391880A1 (en) Application backup and management
US10909000B2 (en) Tagging data for automatic transfer during backups
WO2011074284A1 (ja) 仮想計算機の移動方法、仮想計算機システム及びプログラムを格納した記憶媒体
JP6190468B2 (ja) 管理システム、プラン生成方法、およびプラン生成プログラム
US11256576B2 (en) Intelligent scheduling of backups
CN113391944A (zh) 计算系统中延期的服务器恢复方法和设备
US20140215258A1 (en) Cluster management in a shared nothing cluster
US11675674B2 (en) Instant recovery of databases
US20210224121A1 (en) Virtual machine-initiated workload management
JP5597293B2 (ja) 計算機システム及びプログラム
US20180287914A1 (en) System and method for management of services in a cloud environment
JP5684640B2 (ja) 仮想環境管理システム
JP5342660B2 (ja) 管理システム及びシステム管理方法及びプログラム
EP3382555A1 (en) System and method for management of services in a cloud environment
US11874851B2 (en) Contextual replication profile creation based on data criticality
US20230161733A1 (en) Change block tracking for transfer of data for backups
JP5993052B2 (ja) 複数の監視対象デバイスを有する計算機システムの管理を行う管理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120705

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120814

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120821

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121012

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121030

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121119

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151122

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees