JP2015114873A - 情報処理装置および監視方法 - Google Patents

情報処理装置および監視方法 Download PDF

Info

Publication number
JP2015114873A
JP2015114873A JP2013256858A JP2013256858A JP2015114873A JP 2015114873 A JP2015114873 A JP 2015114873A JP 2013256858 A JP2013256858 A JP 2013256858A JP 2013256858 A JP2013256858 A JP 2013256858A JP 2015114873 A JP2015114873 A JP 2015114873A
Authority
JP
Japan
Prior art keywords
storage device
information
data
monitoring
predetermined
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
JP2013256858A
Other languages
English (en)
Inventor
操 白須
Misao Shirasu
操 白須
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 JP2013256858A priority Critical patent/JP2015114873A/ja
Priority to US14/534,637 priority patent/US20150169221A1/en
Publication of JP2015114873A publication Critical patent/JP2015114873A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0661Format or protocol conversion arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】記憶装置の監視を容易に又は低コストで実現する。【解決手段】データを記憶する記憶装置2と、前記記憶装置2へのアクセスを行なう処理装置11と、前記処理装置11及び前記記憶装置2とを含むシステム1の状態に関する状態情報の管理を行なうシステム管理装置6と、所定のプロトコルに従って前記記憶装置2へのアクセス制御を行なう入出力制御部3と、前記入出力制御部3による前記記憶装置2へのアクセスに用いられるデータに含まれる所定の情報を検出すると、前記所定の情報に基づく前記記憶装置2の状態情報を前記システム管理装置6に通知する監視部7と、を有する。【選択図】図2

Description

本件は、情報処理装置および監視方法に関する。
サーバやパーソナルコンピュータ等の情報処理装置では、搭載する各種デバイスのハードウェアを統合して監視するために、個々のデバイスに対応したエージェントが用いられる場合がある。
図8は、情報処理装置100の構成例を示す図である。情報処理装置100は、図8に示すように、Redundant Arrays of Inexpensive Disks(RAID)を構成するHard Disk Drive(HDD)やSolid State Drive(SSD)等の複数の記憶装置200をそなえる。記憶装置200は、Peripheral Component Interconnect Express(PCIe;登録商標)デバイスの一例である。図8の例では、ハードウェアRAIDが設定される記憶装置200は、Serial Attached Small Computer System Interface(SAS)/Serial Advanced Technology Attachment(SATA)インタフェースを介してRAIDコントローラ310に接続される。また、ソフトウェアRAIDが設定される記憶装置200は、PCIeインタフェースを介してPCIeコントローラ320に接続される。
情報処理装置100のOperating System(OS)900では、RAIDエージェント510やSSDエージェント520が、対応するPCIeデバイス200用のRAIDドライバ410やSSDドライバ420を経由してデバイスからハードウェア情報を取得する。なお、ハードウェア情報には、少なくともPCIeデバイス200が正常に動作しているか否か(故障の有無)を示す状態情報が含まれる。プラットフォームエージェント600は、各PCIeデバイス200のエージェント410,420からハードウェア情報を収集・集約し、イベントインジケータ700に渡す。例えば、プラットフォームエージェント600は、発生イベントをソフトウェア的にSoftware(S/W)イベントインジケータ720に渡す。或いは、プラットフォームエージェント600は、発生イベントをBaseboard Management Controller(BMC)/Management Board(MMB)800経由でHardware(H/W)イベントインジケータ710に渡す。なお、BMC又はMMB800は、情報処理装置100において発生したイベントを集約して管理する管理装置である。
H/Wイベントインジケータ710及びS/Wイベントインジケータ720は、それぞれ発生イベントに応じた処理を実行する。例えばH/Wイベントインジケータ710は、Simple Network Management Protocol(SNMP)トラップやE−mailの送信,ハードウェアログの生成,Light Emitting Diode(LED)の制御等を行なう。また、S/Wイベントインジケータ720は、OSログの生成,情報処理装置100のモニタ等の画面上へのポップアップメッセージの表示等を行なう。
なお、関連する技術として、ストレージ装置にサービスプロセッサ(Service Processor;SVP)を複数搭載し、複数の処理を複数のSVPに分散する技術が知られている(例えば、特許文献1参照)。これにより、各SVPの処理を単純化し信頼性の高い監視を行なうことができる。
特開2006−107080号公報 特表2007−515002号公報 特開2006−331392号公報
図8に示す情報処理装置100では、ハードウェア統合監視のために、PCIeデバイスごとに専用のエージェントが開発・検証されることになる。また、エージェントは、OSの種類ごと,版数ごとに開発・検証が行なわれることになる。従って、全体の開発コストが増大するという課題がある。
また、PCIeデバイス200のハードウェア,ファームウェア,ドライバ,及びエージェントの各モジュールには、高い互換依存関係があることが多い。いずれか一つのモジュールが新版に更新された場合、全体の互換性を保つために、当該PCIeデバイス200の全モジュールが更新されることになる。また、各PCIeデバイス200のエージェント510,520とプラットフォームエージェント600との間にも同様の依存関係があることが多い。結果として、一つのモジュールの改版により、情報処理装置100における監視モジュール全体の改版が行なわれることになり、管理者によるシステムメンテナンスの大きな負担となるという課題もある。
例えば、ハードウェア故障によりPCIeデバイス200が交換され、且つ、交換後のPCIeデバイス200が交換前のハードウェア・ファームウェアよりも新版である場合、互換問題の対策のために、速やかにシステム全体の更新が求められることになる。また、例えばOSのカーネル版数が更新される場合も同様に、ハードウェア・ファームウェアも含めた全体のモジュール更新が求められることになる。
なお、上述した外部ストレージにSVPを複数搭載する技術では、上記課題については考慮されていない。
このように、エージェントはOS(基本ソフト)の種類や版数,PCIeデバイス(記憶装置)のモジュールの版数等に依存するため、エージェントによる記憶装置の監視が困難になる、又は監視コストが増大するという課題がある。
1つの側面では、本発明は、記憶装置の監視を容易に又は低コストで実現することを目的とする。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。
本件の情報処理装置は、データを記憶する記憶装置と、前記記憶装置へのアクセスを行なう処理装置と、前記処理装置及び前記記憶装置とを含むシステムの状態に関する状態情報の管理を行なうシステム管理装置と、所定のプロトコルに従って前記記憶装置へのアクセス制御を行なう入出力制御部と、前記入出力制御部による前記記憶装置へのアクセスに用いられるデータに含まれる所定の情報を検出すると、前記所定の情報に基づく前記記憶装置の状態情報を前記システム管理装置に通知する監視部と、を有する。
一実施形態によれば、記憶装置の監視を容易に又は低コストで実現することができる。
一実施形態に係る情報処理装置のハードウェア構成例を示す図である。 図1に示す情報処理装置の機能構成例を示す図である。 DDFのデータ構造例を示す図である。 図1に示すレジスタが格納する監視データの一例を示す図である。 図1に示すスヌープ処理部によるPCIeデバイスの監視処理の一例を説明するフローチャートである。 図1に示すスヌープ処理部によるPCIeデバイスの監視処理の一例を説明するフローチャートである。 図1に示すスヌープ処理部によるPCIeデバイスの監視処理の一例を説明するフローチャートである。 情報処理装置の構成例を示す図である。 図8に示す情報処理装置のハードウェア構成例を示す図である。
以下、図面を参照して実施の形態を説明する。
〔1〕一実施形態
〔1−1〕情報処理装置の構成
以下、図1及び図2を参照して、一実施形態の一例としての情報処理装置1の構成について説明する。図1は、一実施形態に係る情報処理装置1のハードウェア構成例を示す図であり、図2は、図1に示す情報処理装置1の機能構成例を示す図である。
図1に示すように、サーバやパーソナルコンピュータ等の情報処理装置1は、ハードウェア構成として、1以上(図1では複数)の記憶装置2,RAIDコントローラ31,及びPCIeコントローラ32をそなえる。また、情報処理装置1は、ハードウェア構成として、Central Processing Unit(CPU)11,1以上(図1では複数)のメモリ12,H/Wイベントインジケータ51,BMC/MMB6,及びスヌープ処理部7をさらにそなえる。
記憶装置2は、例えばHDD等の磁気ディスク装置、SSD等の半導体ドライブ装置、又はフラッシュメモリ等の不揮発性メモリ等、種々のデータやプログラムを格納するハードウェアである。一実施形態に係る記憶装置2は、PCIeインタフェース(又は、PCIeインタフェース及びSAS/SATAインタフェース)を介して情報処理装置1に接続されるため、記憶装置2をPCIeデバイス2とも表記する。
RAIDコントローラ31は、複数のPCIeデバイス2を用いたRAID構成の管理・制御をハードウェアRAIDにより行なうスイッチ/コントローラであり、当該複数の記憶装置2をSAS又はSATAインタフェースを介して接続する。PCIeコントローラ32は、PCIe接続が可能なSSD等の記憶装置2をPCIeインタフェースを介して接続するスイッチ/コントローラである。なお、RAIDコントローラ31はPCIeインタフェースを介してPCIeコントローラ32と接続される。以下、RAIDコントローラ31及びPCIeコントローラ32を特に区別しない場合には、これらを総称してコントローラ3という。
コントローラ3は、RAIDドライバ41やSSDドライバ42(図2参照)からの要求に応じて、記憶装置2へのデータのライトや記憶装置2からのデータのリード等のアクセス制御を行なう。ここで、コントローラ3は、SAS/SATAプロトコルやPCIeプロトコル等のPCIeデバイス2に対応するプロトコルを用いてアクセス制御を行なう。すなわち、コントローラ3は、所定のプロトコルに従って記憶装置2へのアクセス制御を行なう入出力制御部の一例であるといえる。
CPU11は、メモリ12,PCIeコントローラ32,BMC/MMB6等と接続され、種々の制御や演算を行なう演算処理装置(処理装置)の一例である。CPU11は、メモリ12又は図示しないRead Only Memory(ROM)等に格納されたプログラムを実行することにより、情報処理装置1における種々の機能を実現する。なお、CPU11に限らず、処理装置としては、Micro Processing Unit(MPU)等の電子回路が用いられてもよい。
メモリ12は、種々のデータやプログラムを格納する記憶装置である。CPU11は、プログラムを実行する際に、メモリ12にデータやプログラムを格納し展開する。なお、メモリ12としては、例えばRandom Access Memory(RAM)等の揮発性メモリが挙げられる。
例えばCPU11は、図2に示すように、RAIDドライバ41,及びSSDドライバ42の機能を含むOS8を実行する。
RAIDドライバ41はRAIDコントローラ31又は/及びPCIeデバイス2のハードウェアを制御するソフトウェアであり、SSDドライバ42はSSD等のPCIeデバイス2のハードウェアを制御するソフトウェアである。以下、RAIDドライバ41及びSSDドライバ42を特に区別しない場合には、これらを総称してドライバ4という。ドライバ4は、上位装置(ホスト)であるCPU11に対して、アクセス対象であるPCIeデバイス2へのインタフェースを提供する。例えばドライバ4は、CPU11からの要求をPCIeデバイス2に対応するSAS,SATA,又はPCIe等の所定のプロトコルに従って変換し、PCIeデバイス2への指示(アクセス)を行なう。
なお、OS8は、複数のPCIeデバイス2を用いたRAID構成の管理・制御をソフトウェアRAIDにより行なう機能をそなえることができる。例えば図2に示す例では、OS8が実行するソフトウェアRAIDは、PCIeコントローラ32と直接接続されるSSDに対するRAID構成の管理・制御を行なう。すなわち、図2では、情報処理装置1がそなえる全てのPCIeデバイス2がRAIDを構成する例を示している。
H/Wイベントインジケータ51は、発生イベントに応じた処理を実行する。例えばH/Wイベントインジケータ51は、発生イベントに応じて、SNMPトラップやE−mailの送信,ハードウェアログの生成,LEDの制御等を行なう。なお、OS8は、図2に示すようにH/Wイベントインジケータ51の処理結果の管理等を行なうイベントインジケータ5の機能をそなえてもよい。
BMC/MMB6は、CPU11及びPCIeデバイス2とを含む情報処理装置1の制御、例えば情報処理装置1の状態に関する状態情報の管理を行なうシステム管理装置の一例である。例えば、BMC/MMB6は、Inter-Integrated Circuit(I2C;登録商標)等のバスを介してメモリ12やPCIeデバイス2等のベースボード上のコンポーネントと接続される。そして、BMC/MMB6は、バスを介して任意のコンポーネントからログ等の情報を収集(集約)し、情報処理装置1において発生(検出)したイベントをH/Wイベントインジケータ51へ通知することができる。従って、H/Wイベントインジケータ51は、BMC/MMB6から通知された情報処理装置(システム)1の状態に関する状態情報に応じて情報処理装置(システム)1の管理者に通知を行なう通知処理部の一例である。なお、BMC/MMB6は、情報処理装置1の電源制御等の各種制御を行なうことができる。
また、BMC/MMB6は、データ通信用のポートとは別にLocal Area Network(LAN)等の監視用のポートをそなえ、管理者等は、リモートでBMC/MMB6にアクセスをして、情報処理装置1の監視を行なうことができる。なお、BMC/MMB6は、CPU,MPU,Application Specific Integrated Circuit(ASIC),又はField Programmable Gate Array(FPGA)等の処理装置をそなえてもよい。そして、BMC/MMB6としての機能は、当該処理装置がBMC/MMB6の記憶装置に保持されたソフトウェア(ファームウェア)を実行することにより実現されてもよい。また、BMC/MMB6は、H/Wイベントインジケータ51による上記制御の少なくとも一部又は全部をBMC/MMB6上で動作するソフトウェアの機能により実現してもよい。例えばBMC/MMB6は、H/Wイベントインジケータ51におけるSNMPトラップやE−mailを、監視用のポートを介して送信することができる。
スヌープ処理部7は、コントローラ3とPCIeデバイス2との間でPCIe,SAS/SATAのプロトコルでやり取りされるデータ(データフレーム)やコマンド(コマンドフレーム)(以下、これらをまとめて転送データともいう)を監視する。そして、スヌープ処理部7は、転送データが所定の条件を満たす場合、BMC/MMB6に対してPCIeデバイス2の故障/正常を出力信号により通知する。このため、スヌープ処理部7は、図1及び図2に示すように、コントローラ3とPCIeデバイス2との間の任意の箇所と接続され、転送データを取得(スヌープ)できるようになっている。また、スヌープ処理部7は、BMC/MMB6と接続され、検出したPCIeデバイス2の状態情報を通知できるようになっている。なお、スヌープ処理部7としては、電子回路、例えばCPU,MPU,ASIC,又はFPGA等の集積回路が挙げられる。
すなわち、スヌープ処理部7は、コントローラ3によるPCIeデバイス2へのアクセスに用いられる転送データに含まれる所定の情報を検出すると、所定の情報に基づくPCIeデバイス2の状態情報をBMC/MMB6に通知する監視部の一例であるといえる。
〔1−2〕スヌープ処理部の構成例
以下、スヌープ処理部7の構成例を説明する。
なお、以下、スヌープ処理部7がRAID配下のPCIeデバイス2の監視を行なう場合を例に挙げて説明する。
スヌープ処理部7は、図2に示すように、レジスタ71(図1参照),フレーム監視部72,データ抽出部73,及び通知部74をそなえる。
レジスタ71は、スヌープ処理部7における監視データを格納する記憶素子(記憶回路)である。レジスタ71が格納する監視データについては後述する。
フレーム監視部72は、図1及び図2に示すように、コントローラ3と記憶装置2との間で送受信される転送データを監視するものである。フレーム監視部72は、例えばコントローラ3とPCIeデバイス2との間のバス,コントローラ3,又はPCIeデバイス2と接続され、転送データを取得(スヌープ)することができる。転送データの取得は既知の種々の手法により行なうことが可能であり、その詳細な説明は省略する。
具体的には、フレーム監視部72は、転送データの監視において、コントローラ3からPCIeデバイス2に送信される転送データにPCIeデバイス2の所定の記憶領域のデータに対するアクセス要求(書込又は読出コマンド)が含まれるか否かを監視する。そして、フレーム監視部72は、転送データに上記アクセス要求が含まれると判定した場合、読出コマンドに対するPCIeデバイス2からの応答データ(読出データ)又は書込コマンドに所定の情報が含まれるか否かを判定する。書込コマンド又は応答データに所定の情報が含まれると判定すると、フレーム監視部72は、処理をデータ抽出部73に渡す。
ここで、所定の記憶領域は、例えばPCIeデバイス2の構成に関する構成情報が格納される領域であって、異なる複数のPCIeデバイス2において共通に定義される領域である。また、所定の情報は、構成情報に含まれる情報であり、例えばPCIeデバイス2の故障の有無に関する情報が含まれる。さらに、構成情報は、PCIeデバイス2等の任意のモジュール(例えばハードウェア,ファームウェア,ドライバ等)又はOS8の種類/版数等に依存せず、これらの種類/版数等が変更(更新)されても仕様が変更されないデータであることが好ましい。例えば構成情報としては、PCIeデバイス2の冗長化処理(RAID)のための基本データであって、標準規格であるDisk Data Format(DDF)により定義されたデータが挙げられる。
以下、図3及び図4を参照して、フレーム監視部72のより具体的な構成例を説明する。図3は、DDFのデータ構造例を示す図であり、図4は、図1に示すレジスタ71が格納する監視データの一例を示す図である。
ここで、DDFは、近年、RAIDコントローラ等のRAID製品のベンダ各社が標準的に採用しRAID製品に実装している規格である。DDFでは、図3に示すように、HDD/SSD等のPCIeデバイス2の最終Logical Block Address(LBA)に、“DDF Header (Anchor)”(アンカーヘッダ)が記録される。このアンカーヘッダには、PCIeデバイス2の簡単な情報を含むRAID構成情報と、RAID構成詳細情報の格納LBAのオフセットとが記録される。
具体的には、アンカーヘッダには、実際のPCIeデバイス2の状態が記録される“DDF Header (Primary)”(プライマリヘッダ)のLBAが記録される(図3の矢印(i)参照)。RAID構成詳細情報は、図3に示すようにプライマリヘッダを含む所定のサイズの領域であり、RAID構成詳細情報にはPCIeデバイス2の故障の有無に関する情報(所定の情報)を含むPCIeデバイス2の詳細な情報が含まれる。なお、アンカーヘッダには、オプションで、プライマリヘッダの冗長データである“DDF Header (Secondary)”(セカンダリヘッダ)のLBAも記録される(図3の矢印(ii)参照)。
ところで、オープンシステムでは、各ハードウェアは開発ベンダが異なり、ベンダユニークの実装となっていることが多い。従って、ハードウェアのみでの監視は標準化されない限り困難である。或いは、標準化自体の長期化及び全PCIeデバイスベンダの標準規格の実装による長期化により標準化されるまでに長い時間を要する。このため、ハードウェア統合監視の機能を搭載した情報処理装置を短期間で開発することは困難である。
これに対し、一実施形態に係る情報処理装置1では、スヌープ処理部7が、異なる複数のPCIeデバイス2において共通に定義される所定の領域内に記憶されたPCIeデバイス2の故障の有無に関する情報を用いて、PCIeデバイス2の監視を行なう。従って、情報処理装置1のシステムベンダは、PCIeデバイス2等の各ハードウェアの開発ベンダに依らず単独でPCIeデバイス2の監視機構を実装することが可能となる。また、各開発ベンダはハードウェア監視のための追加実装を行なわなくて済む。結果として、システムベンダは、ハードウェア統合監視の機能を搭載した情報処理装置1を短期間で開発することができる。また、システムベンダ及び開発ベンダの双方においてPCIeデバイス2の監視に係るコストを低減させることができる。
以下、最終LBAからプライマリヘッダのLBAまでの領域(RAID構成情報とRAID構成詳細情報とを含む領域)が上記所定の領域であり、最終LBAからプライマリヘッダのLBAまでの領域に格納されたデータが上記構成情報であるものとする。
フレーム監視部72は、情報処理装置1の起動後、SAS/SATA/PCIeのデータトランザクションの監視を開始し、コントローラ3からのSCSI/ATAコマンドフレーム,PCIeコマンドフレームを検出する。そして、フレーム監視部72は、検出したコマンドのオペレーションコードがPCIeデバイス2の最終セクタの読出コマンドである場合、当該読出コマンドに対応するPCIeデバイス2からの応答データフレームを判別する。なお、PCIeデバイス2の最終セクタの読出コマンドとしては、SASの場合“Read Capacity Command (0x25)”が挙げられ、SATAの場合“READ NATIVE MAX ADDRESS (0xF8)”が挙げられる。
以下、コントローラ3のインタフェースがSASに対応するものであって、コントローラ3がPCIeデバイス2へSASコマンドを送信するものとして説明するが、インタフェース及びコマンドがSATA又はPCIeに対応するものであっても、同様である。
フレーム監視部72は、応答データフレームから、読出コマンドで要求された最終セクタのアドレスを示すデータを抽出し、レジスタ71に格納する。最終セクタのアドレスを示すデータとしては、例えば“RETURNED LOGICAL BLOCK ADDRESS”(4バイト)及び“LOGICAL BLOCK LENGTH IN BYTES”(4バイト)の計8バイトのデータが挙げられる(図4参照)。ここで、“RETURNED LOGICAL BLOCK ADDRESS”はアンカーヘッダのLBAを示し、“LOGICAL BLOCK LENGTH IN BYTES”はアンカーヘッダのブロックサイズを示す。なお、アンカーヘッダのブロックサイズは一般的に512バイトである場合が多いため、フレーム監視部72は“LOGICAL BLOCK LENGTH IN BYTES”の抽出を省略してもよい。
以下、“LOGICAL BLOCK LENGTH IN BYTES”は512バイトであるものとして説明する。
このようにして、フレーム監視部72は、PCIeデバイス2の最終アドレス、つまりアンカーヘッダのLBAを検出することができる。なお、CPU11又はコントローラ3は、情報処理装置1の起動後、はじめに各PCIeデバイス2の最終アドレスを認識するためにPCIeデバイス2へ最終セクタの読出コマンドを発行する。従って、フレーム監視部72は、CPU11又はコントローラ3の上記性質を利用して、確実にアンカーヘッダのLBAを検出することができる。
また、フレーム監視部72は、上記処理によりアンカーヘッダのLBAを検出すると、データトランザクションの監視においてコントローラ3からのSCSI/ATAコマンドフレーム,PCIeコマンドフレームを検出する。そして、フレーム監視部72は、検出したコマンドのオペレーションコードが書込又は読出コマンドであり、且つ、最終セクタ(アンカーヘッダ)へのアクセス要求であるか否かを判定する。
オペレーションコードが最終セクタへの読出コマンドである場合、フレーム監視部72は、当該読出コマンドに対するPCIeデバイス2からの応答データフレームを判別する。なお、フレーム監視部72は、オペレーションコードが最終セクタへの書込コマンドである場合は次の処理で書込データフレームを参照する。以下、書込データフレームと応答データフレームとをまとめて単にデータフレームという。
フレーム監視部72は、データフレームに含まれる最終セクタのデータオフセット“0x00”から4バイトの値が、DDFのフォーマットであることを示すシグニチャ(例えば“0xDE11DE11”)であることを検出する。これにより、フレーム監視部72は、PCIeデバイス2がDDFの規格に準拠していることを検出することができる。
なお、書込コマンドとしては“Write(10)-0x2A”,“Write(12)-0xAA”,“Write(16)-0x8A”...等が挙げられ、読出コマンドとしては“Read(10)-0x28”,“Read(12)-0xA8”,“Read(16)-0x88”...等が挙げられる(括弧内の数字はアドレス幅の違いを示す)。また、フレーム監視部72は、書込又は読出コマンドのCommand Descriptor Block(CDB)つまり制御領域を参照することで、当該コマンドが最終セクタへのアクセス要求であるか否かを判定することができる。具体的には、フレーム監視部72は、書込又は読出コマンドのCDB内のアクセスLBA及び転送ブロック数に基づき、データ転送先のLBAがレジスタ71に格納された“RETURNED LOGICAL BLOCK ADDRESS”と一致するか否か(又は含むか否か)を判定すればよい。
フレーム監視部72は、最終セクタへの又は最終セクタからの上記データフレームから、以下のデータをレジスタ71に格納する(図4参照)。なお、以下のオフセットは、アンカーヘッダの先頭アドレス(“DDF Header (primary)”)からのオフセットを示す。
・“DDF Header (Primary)”のLBA:例えばオフセット“0x60”から8バイト分の値。
・“Physical_Disk_Records_Section”:PCIeデバイス2の状態が格納される領域(図3の太枠内“Physical Disk Record”参照)のオフセット。例えばオフセット“0xC8”から4バイト分の値。
・“Physical_Disk_Records_Section_Length”:“Physical_Disk_Records_Section”のセクタ数。例えばオフセット“0xCC”から4バイト分の値。
このようにして、フレーム監視部72は、PCIeデバイス2の状態が格納される領域のアドレス、つまり“Physical_Disk_Records_Section”のオフセットを検出することができる。
以上の処理により、スヌープ処理部7は、PCIeデバイス2の状態を取得するために用いる監視データを取得することができる。
次に、フレーム監視部72は、監視データを用いてPCIeデバイス2の状態が含まれる転送データを監視・検出する。具体的には、フレーム監視部72は、データトランザクションの監視においてコントローラ3からのSCSI/ATAコマンドフレーム,PCIeコマンドフレームを検出する。そして、フレーム監視部72は、検出したコマンドのオペレーションコードが書込又は読出コマンドであり、且つ、プライマリヘッダへのアクセス要求であるか否かを判定する。
なお、フレーム監視部72は、書込又は読出コマンドのCDBを参照することで、当該コマンドがプライマリヘッダへのアクセス要求であるか否かを判定することができる。具体的には、フレーム監視部72は、書込又は読出コマンドのCDB内のアクセスLBA及び転送ブロック数に基づき、データ転送先のLBAがレジスタ71に格納された“DDF Header (Primary)”のLBAと一致するか否か(又は含むか否か)を判定すればよい。
オペレーションコードがプライマリヘッダへの読出コマンドである場合、フレーム監視部72は、当該読出コマンドに対するPCIeデバイス2からの応答データフレームを判別し、データ抽出部73に渡す。なお、フレーム監視部72は、オペレーションコードがプライマリヘッダへの書込コマンドである場合は当該書込データフレームをデータ抽出部73に渡す。
データ抽出部73は、フレーム監視部72により書込コマンド又は応答データに所定の情報が含まれると判定されると、書込コマンド又は応答データから当該所定の情報を抽出する。
具体的には、データ抽出部73は、書込又は応答データフレームに含まれるプライマリヘッダからのオフセット(レジスタ71に格納されたオフセット)“Physical_Disk_Records_Section”から先の転送データを監視する。このとき、データ抽出部73は、“Physical_Disk_Records_Section”からのオフセット“0x40”から先の転送データである“Physical_Disk_Entries”内の値を参照する。ここで、“Physical_Disk_Entries”には、例えば64バイトごとに各PCIeデバイス2の状態情報が格納される。具体的には、“Physical_Disk_Entries”のオフセット“0x1E”におけるビット1のデータが、PCIeデバイス2の故障の有無に関する情報(所定の情報)に対応する。つまり、データ抽出部73は、“Physical_Disk_Entries”において、64バイトごとに、オフセット“0x1E”におけるビット1のデータの値を参照することで、各PCIeデバイス2の故障の有無に関する情報を取得することができるのである。
なお、データ抽出部73は、取得した各PCIeデバイス2の故障の有無に関する情報をレジスタ71又は他の記憶装置に保存してもよい。
フレーム監視部72は、“Physical_Disk_Records_Section”からのデータ転送が“Physical_Disk_Records_Section_Length”のセクタ数分完了すると、再び転送データの監視に戻る。
すなわち、スヌープ処理部7は、上述した処理によってBMC/MMB6にステータス信号を出力した後、引き続き他の(又は同じ)PCIeデバイス2において所定の領域へのアクセスが発生するか否かを待ち受けることができる。そして、スヌープ処理部7は、所定の領域へのアクセスが発生する都度、上記“Physical_Disk_Entries”からの所定の情報の抽出及びステータス信号の出力を実行することができる。
なお、図4に示す例では、レジスタ71に1セットの監視データが格納されることを示している。この監視データは複数のPCIeデバイス2で共通に用いられてもよいし、複数のPCIeデバイス2の記憶容量が互いに異なるような場合にはLBAも異なるため、フレーム監視部72は、PCIeデバイス2ごとにレジスタ71に監視データを格納してもよい。
このように、“Physical_Disk_Entries”がPCIeデバイス2ごとに64バイトの情報を含むため、データ抽出部73は、1つのPCIeデバイス2の“Physical_Disk_Entries”を参照することで全てのPCIeデバイス2の状態を取得することができる。これにより、スヌープ処理部7は、コマンドフレームが所定の領域に対するアクセスである場合にデータフレームから所定の情報を取得すればよいので、監視の負荷を低減させることができる。
通知部74は、データ抽出部73が取得した各PCIeデバイス2の状態に基づいて、PCIeデバイス2のステータス信号(状態情報)をBMC/MMB6に通知する。例えば通知部74は、“Physical_Disk_Entries”内の64バイトごとのオフセット“0x1E”におけるビット1のデータが全て“0”(正常)であれば、BMC/MMB6への出力を“Low”(PCIeデバイス2が正常)とする。一方、通知部74は、当該ビット1のデータのうち、1つでも“1”(故障,異常)であれば、BMC/MMB6への出力を“High”(PCIeデバイス2が故障,異常)とする。
このように、通知部74は、“Physical_Disk_Entries”内の所定の情報の値に応じてPCIeデバイス2のステータス信号をBMC/MMB6に通知する。なお、通知部74は、故障したPCIeデバイス2を特定する情報をBMC/MMB6に通知してもよい。
通知部74からPCIeデバイス2のステータス信号の通知を受けたBMC/MMB6は、当該PCIeデバイス2を含む情報処理装置1の各モジュールの状態情報を集約してH/Wイベントインジケータ51へ通知する。そして、H/Wイベントインジケータ51は、BMC/MMB6から通知された状態情報に応じて、管理者等へ通知を行なう。
以上のように、スヌープ処理部7は、フレームの監視を行ない、少なくとも監視に用いる情報をレジスタ71に格納し、監視するフレームが所定の条件に該当した場合にPCIeデバイス2のステータス信号をBMC/MMB6に出力する。
具体的には、スヌープ処理部7は、PCIe,SAS/SATA経由でやり取りされるDDFデータ(所定の領域)へのデータ参照又は更新の内容、つまりデバイス制御データトランザクションをスヌープする。そして、スヌープ処理部7は、スヌープにより取得したデータを本来のデータトランザクションの目的ではない冗長部品(PCIeデバイス2)の故障検知やハードウェア情報の表示に利用することで、PCIeデバイス2の故障等の監視(状態監視)を実現する。
ハードウェアの監視においては、監視制御を行なうBMC/MMB自体,又はその上位層であるエージェント(プラットフォームエージェント)で統合監視を行なうのが一般的である。図9は図8に示す情報処理装置100のハードウェア構成例を示す図である。例えば図9に示すように、従来の手法では、BMC/MMB900又はCPU1100(OS900)が、RAIDコントローラ310,PCIeコントローラ320,メモリ1200等で検出された故障の情報を収集して統合監視する。
これに対し、BMC/MMB6は、スヌープ処理部7により、図1に示すように、コントローラ3で検出されたPCIeデバイス2の故障の情報を、コントローラ3よりも下位層であるコントローラ3とPCIeデバイス2との間で収集することができる。
従って、情報処理装置1は、図8に示すようなRAIDエージェント510,SSDエージェント520,及びプラットフォームエージェント600や、S/Wイベントインジケータ720の構成を省略することができる。このようなハードウェア・ファームウェアによるエージェントレスの監視により、一実施形態に係る情報処理装置1によれば、ハードウェア統合監視のために、PCIeデバイス2ごとに専用のエージェントの開発・検証が不要となる。つまり、OS8の種類や版数,PCIeデバイス2のモジュールの版数等を考慮しなくてよく、PCIeコントローラ32の監視コストを低減させることができる。また、PCIeデバイス2の各モジュールの互換依存関係を考慮しなくてよいため、管理者によるシステムメンテナンスの負担を低減させることができる。さらに、OS8上で動作するエージェントを省略できるため、OS8の処理負荷を低減させることができるという効果も奏することができる。
また、スヌープ処理部7は、任意の記録媒体に記録されたデータではなく、コントローラ3とPCIeデバイス2との間でインターフェース転送中のデータを利用(取得)し、所定の情報を抽出する。従って、コントローラ3がPCIeデバイス2の故障を検出してから短時間で検出することができる。
さらに、スヌープ処理部7は、コントローラ3とPCIeデバイス2との間で送受信される転送データの監視を通じて、所定の領域における所定の情報が格納される位置(オフセット)を特定する。従って、複数のPCIeデバイス2の記憶容量が互いに異なっていても、適応的に所定の情報が格納される位置を特定することができる。
以上のように、一実施形態に係る情報処理装置1によれば、PCIeデバイス2のの監視を容易に又は低コストで実現することができる。
〔1−3〕動作例
次に、図5〜図7を参照して、上述の如く構成された一実施形態の一例としての情報処理装置1(スヌープ処理部7)の動作例を説明する。
図5〜図7は、それぞれ図1に示すスヌープ処理部7によるPCIeデバイス2の監視処理の一例を説明するフローチャートである。
以下、コントローラ3のインタフェースがSASに対応するものであって、コントローラ3がPCIeデバイス2へSASコマンドを送信するものとして説明する。また、PCIeデバイス2の最終セクタのサイズ“LOGICAL BLOCK LENGTH IN BYTES”が一般的な512バイトであるものとして説明する。さらに、書込/読出コマンドが一般的な“Write (10)”/“Read (10)”コマンドであるものとして説明する。
はじめに、図5に示すように、情報処理装置1の電源がオンになると、スヌープ処理部7のフレーム監視部72により、SAS/SATA/PCIeのデータトランザクションの監視が開始される(ステップS1)。データトランザクションの監視では、フレーム監視部72は、例えばSCSI/ATAコマンドフレームを待ち続ける。
次いで、フレーム監視部72により、SCSI/ATAコマンドフレームが検出されると、当該コマンドのオペレーションコードが、最終セクタ読出コマンドであるか否かが判断される(ステップS2)。当該コマンドのオペレーションコードが最終セクタ読出コマンドではない場合(ステップS2のNoルート)、最終セクタ読出コマンドが受信されるまでステップS2の処理がループする。一方、当該コマンドのオペレーションコードが最終セクタ読出コマンドである場合(ステップS2のYesルート)、フレーム監視部72により、最終セクタ読出コマンドに該当する応答データフレームが判別される。そして、フレーム監視部72により、最終セクタのアドレスに該当する8バイトのデータ(“RETURNED LOGICAL BLOCK ADDRESS”,“LOGICAL BLOCK LENGTH IN BYTES”)がレジスタ71に格納され(ステップS3)、処理が図6に遷移する。
次に、図6に示すように、フレーム監視部72により、データトランザクションの監視が続けられる。このとき、フレーム監視部72は、コマンドフレームを待ち続ける。
フレーム監視部72により、コマンドフレームが検出されると、当該コマンドのオペレーションコードが、アンカーヘッダへの書込又は読出コマンドであるか否かが判定される(ステップS4)。このとき、フレーム監視部72は、書込/読出コマンドのCDB内のアクセスLBA及び転送ブロック数により、データ転送LBAがレジスタ71に格納された“RETURNED LOGICAL BLOCK ADDRESS”と一致するか否か(又は含まれるか否か)を判断する。アンカーヘッダへの書込又は読出コマンドではない場合(ステップS4のNoルート)、アンカーヘッダへの書込又は読出コマンドが受信されるまでステップS4の処理がループする。一方、アンカーヘッダへの書込又は読出コマンドである場合(ステップS4のYesルート)、フレーム監視部72により、ステップS5の処理が実行される。
ステップS5では、フレーム監視部72により、書込/読出コマンドに該当するデータフレームが検出され、最終セクタのデータオフセット“0x00”から4バイトの値がDDFであることを示すシグニチャであるか否かが判定される。例えばフレーム監視部72は、最終セクタのデータオフセット“0x00”から4バイトの値が“0xDE11DE11”であるか否かを判断する。上記4バイトの値がDDFを示すものでない場合(ステップS5のNoルート)、処理がステップS4に移行する。一方、上記4バイトの値がDDFを示すものである場合(ステップS5のYesルート)、フレーム監視部72により、ステップS6の処理が実行される。
ステップS6では、フレーム監視部72により、最終セクタへの又は最終セクタからのデータフレームから以下のデータが抽出されて、レジスタ71に格納され、処理が図7に遷移する。なお、以下のオフセットは、アンカーヘッダの先頭アドレスである“DDF Header (primary)”からのオフセットを示す。
・“DDF Header (Primary)”のLBA
・“Physical_Disk_Records_Section”(オフセット)
・“Physical_Disk_Records_Section_Length”(オフセット)
次に、図7に示すように、フレーム監視部72により、データトランザクションの監視が続けられる。このとき、フレーム監視部72は、コマンドフレームを待ち続ける。
フレーム監視部72により、コマンドフレームが検出されると、当該コマンドのオペレーションコードが、プライマリヘッダへの書込又は読出コマンドであるか否かが判定される(ステップS7)。このとき、フレーム監視部72は、書込/読出コマンドのCDB内のアクセスLBA及び転送ブロック数により、データ転送LBAがレジスタ71に格納された“DDF Header (Primary)”のLBAと一致するか否か(又は含まれるか否か)を判断する。プライマリヘッダへの書込又は読出コマンドではない場合(ステップS7のNoルート)、プライマリヘッダへの書込又は読出コマンドが受信されるまでステップS7の処理がループする。一方、プライマリヘッダへの書込又は読出コマンドである場合(ステップS7のYesルート)、データ抽出部73によりステップS8の処理が実行される。
ステップS8では、データ抽出部73により、データフレームに含まれるプライマリヘッダからのオフセット(レジスタ71に格納されたオフセット)“Physical_Disk_Records_Section”から先の転送データが監視される。このとき、データ抽出部73により、“Physical_Disk_Records_Section”からのオフセット“0x40”から先の転送データである“Physical_Disk_Entries”内の値が参照される。そして、データ抽出部73により、“Physical_Disk_Entries”において、64バイトごとに、オフセット“0x1E”におけるビット1のデータの値が取得される。
そして、通知部74により、“Physical_Disk_Entries”内の64バイトごとのオフセット“0x1E”におけるビット1のデータが全て“0”(正常)であるか否かが判定される。全て“0”の場合(ステップS8のYesルート)、通知部74により、スヌープ処理部7の出力が“Low”に設定され、BMC/MMB6にPCIeデバイス2の状態が正常である旨が通知され(ステップS9)、処理がステップS11に移行する。一方、当該ビット1のデータのうち、1つでも“1”(故障,異常)の場合(ステップS8のNoルート)、通知部74により、スヌープ処理部7の出力が“High”に設定される。また、通知部74により、BMC/MMB6にPCIeデバイス2の状態が故障,異常である旨が通知され(ステップS10)、処理がステップS11に移行する。
ステップS11では、フレーム監視部72により、“Physical_Disk_Records_Section”から“Physical_Disk_Records_Section_Length”のセクタ数分のデータ転送完了が確認され、処理がステップS7に移行する。このように、スヌープ処理部7は、ステップS1〜S6において監視データを生成しているため、2回目以降の“Physical_Disk_Entries”の取得は、ステップS7〜S11の処理を繰り返せばよい。
〔2〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
例えば、上述した記憶装置2では、PCIe,SAS/SATA等のインタフェースをが用いられるものとして説明したが、これに限定されるものではなく、スヌープ処理部7によるスヌープが可能な他のインタフェースが用いられてもよい。
また、上述したフレーム監視部72は、コントローラ3とPCIeデバイス2との間でやり取りされるデータを監視するものとして説明したが、これに限定されるものではない。例えばフレーム監視部72を含むスヌープ処理部7の少なくとも一部の構成がコントローラ3にそなえられてもよい。この場合、フレーム監視部72はコントローラ3がPCIeデバイス2へ送信及び受信するデータを監視すればよい。
さらに、上述した情報処理装置1のハードウェア構成例は例示である。例えば、各コントローラ3,BMC/MMB6,H/Wイベントインジケータ51,及びスヌープ処理部7間での構成(ハードウェア又はソフトウェア(ファームウェア))の増減や分割、任意の組み合わせでの統合等は、適宜行なわれてもよい。
また、上述したスヌープ処理部7は、RAID配下のPCIeデバイス2の監視を行なうものとして説明したが、これに限定されるものではない。例えばRAIDを構成しないPCIeデバイス2であっても、PCIeデバイス2の故障の有無に関する情報が記録される領域が既知である(望ましくは標準化された仕様を採用する)PCIeデバイス2であれば、上述した制御を適用することが可能である。
〔3〕付記
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
データを記憶する記憶装置と、
前記記憶装置へのアクセスを行なう処理装置と、
前記処理装置及び前記記憶装置とを含むシステムの状態に関する状態情報の管理を行なうシステム管理装置と、
所定のプロトコルに従って前記記憶装置へのアクセス制御を行なう入出力制御部と、
前記入出力制御部による前記記憶装置へのアクセスに用いられるデータに含まれる所定の情報を検出すると、前記所定の情報に基づく前記記憶装置の状態情報を前記システム管理装置に通知する監視部と、を有する
ことを特徴とする、情報処理装置。
(付記2)
前記監視部は、前記入出力制御部と前記記憶装置との間で送受信されるデータを監視し、前記入出力制御部から前記記憶装置に送信されるデータに前記記憶装置の所定の記憶領域のデータに対するアクセス要求が含まれる場合、当該アクセス要求又は当該アクセス要求に対する前記記憶装置からの応答データに前記所定の情報が含まれるか否かを判定する
ことを特徴とする、付記1記載の情報処理装置。
(付記3)
前記所定の記憶領域は、前記記憶装置を含む複数の記憶装置において共通に定義された領域であって前記記憶装置の構成に関する構成情報が格納される領域であり、
前記所定の情報は、前記構成情報に含まれる前記記憶装置の故障の有無に関する情報である
ことを特徴とする、付記2記載の情報処理装置。
(付記4)
前記監視部は、前記入出力制御部と前記記憶装置との間で送受信されるデータの監視を通じて、前記所定の領域における前記所定の情報が格納される位置を特定する
ことを特徴とする、付記2又は付記3記載の情報処理装置。
(付記5)
前記監視部は、前記入出力装置と前記記憶装置との間で転送中のデータを取得し、取得したデータに含まれる所定の情報を検出すると、前記所定の情報に基づく前記記憶装置の状態情報を前記システム管理装置に通知する
ことを特徴とする、付記1〜4のいずれか1項記載の情報処理装置。
(付記6)
前記システム管理装置から通知された前記システムの状態情報に応じて前記システムの管理者に通知を行なう通知処理部をさらにそなえ、
前記システム管理装置は、前記監視部から通知された前記記憶装置の状態情報を前記システムの状態情報に集約して前記通知処理部へ通知する
ことを特徴とする、付記1〜5のいずれか1項記載の情報処理装置。
(付記7)
データを記憶する記憶装置と、前記記憶装置へのアクセスを行なう処理装置と、前記記憶装置の監視を行なう監視部と、をそなえる情報処理装置における監視方法であって、
前記監視部において、
所定のプロトコルに従って前記記憶装置へのアクセス制御を行なう入出力制御部による前記記憶装置へのアクセスに用いられるデータに含まれる所定の情報を検出し、
前記所定の情報に基づく前記記憶装置の状態に関する状態情報を、前記処理装置及び前記記憶装置とを含むシステムの状態情報の管理を行なうシステム管理装置に通知する
ことを特徴とする、監視方法。
(付記8)
前記監視部において、
前記入出力制御部と前記記憶装置との間で送受信されるデータを監視し、
前記入出力制御部から前記記憶装置に送信されるデータに前記記憶装置の所定の記憶領域のデータに対するアクセス要求が含まれる場合、当該アクセス要求又は当該アクセス要求に対する前記記憶装置からの応答データに前記所定の情報が含まれるか否かを判定する
ことを特徴とする、付記7記載の監視方法。
(付記9)
前記所定の記憶領域は、前記記憶装置を含む複数の記憶装置において共通に定義された領域であって前記記憶装置の構成に関する構成情報が格納される領域であり、
前記所定の情報は、前記構成情報に含まれる前記記憶装置の故障の有無に関する情報である
ことを特徴とする、付記8記載の監視方法。
(付記10)
前記監視部において、
前記入出力制御部と前記記憶装置との間で送受信されるデータの監視を通じて、前記所定の領域における前記所定の情報が格納される位置を特定する
ことを特徴とする、付記8又は付記9記載の監視方法。
(付記11)
前記監視部において、
前記入出力装置と前記記憶装置との間で転送中のデータを取得し、
取得したデータに含まれる所定の情報を検出すると、前記所定の情報に基づく前記記憶装置の状態情報を前記システム管理装置に通知する
ことを特徴とする、付記7〜10のいずれか1項記載の監視方法。
(付記12)
前記システム管理装置において、
前記監視部から通知された前記記憶装置の状態情報を前記システムの状態情報に集約し、
前記システムの状態情報に応じて前記システムの管理者に通知を行なう通知処理部に、前記集約した前記システムの状態情報を通知する
ことを特徴とする、付記7〜11のいずれか1項記載の監視方法。
1 情報処理装置(システム)
11 CPU(処理装置)
12,1200 メモリ
100 情報処理装置
1100 CPU
2,200 PCIeデバイス(記憶装置)
3 コントローラ(入出力制御部)
31,310 RAIDコントローラ
32,320 PCIeコントローラ
4 ドライバ
41,410 RAIDドライバ
42,420 SSDドライバ
5,700 イベントインジケータ
51 H/Wイベントインジケータ(通知処理部)
510 RAIDエージェント
520 SSDエージェント
6 BMC/MMB(システム監視装置)
600 プラットフォームエージェント
7 スヌープ処理部(監視部)
71 レジスタ
72 フレーム監視部
73 データ抽出部
74 通知部
710 H/Wイベントインジケータ
720 S/Wイベントインジケータ
8,900 OS
800 BMC/MMB

Claims (7)

  1. データを記憶する記憶装置と、
    前記記憶装置へのアクセスを行なう処理装置と、
    前記処理装置及び前記記憶装置とを含むシステムの状態に関する状態情報の管理を行なうシステム管理装置と、
    所定のプロトコルに従って前記記憶装置へのアクセス制御を行なう入出力制御部と、
    前記入出力制御部による前記記憶装置へのアクセスに用いられるデータに含まれる所定の情報を検出すると、前記所定の情報に基づく前記記憶装置の状態情報を前記システム管理装置に通知する監視部と、を有する
    ことを特徴とする、情報処理装置。
  2. 前記監視部は、前記入出力制御部と前記記憶装置との間で送受信されるデータを監視し、前記入出力制御部から前記記憶装置に送信されるデータに前記記憶装置の所定の記憶領域のデータに対するアクセス要求が含まれる場合、当該アクセス要求又は当該アクセス要求に対する前記記憶装置からの応答データに前記所定の情報が含まれるか否かを判定する
    ことを特徴とする、請求項1記載の情報処理装置。
  3. 前記所定の記憶領域は、前記記憶装置を含む複数の記憶装置において共通に定義された領域であって前記記憶装置の構成に関する構成情報が格納される領域であり、
    前記所定の情報は、前記構成情報に含まれる前記記憶装置の故障の有無に関する情報である
    ことを特徴とする、請求項2記載の情報処理装置。
  4. 前記監視部は、前記入出力制御部と前記記憶装置との間で送受信されるデータの監視を通じて、前記所定の領域における前記所定の情報が格納される位置を特定する
    ことを特徴とする、請求項2又は請求項3記載の情報処理装置。
  5. 前記監視部は、前記入出力装置と前記記憶装置との間で転送中のデータを取得し、取得したデータに含まれる所定の情報を検出すると、前記所定の情報に基づく前記記憶装置の状態情報を前記システム管理装置に通知する
    ことを特徴とする、請求項1〜4のいずれか1項記載の情報処理装置。
  6. 前記システム管理装置から通知された前記システムの状態情報に応じて前記システムの管理者に通知を行なう通知処理部をさらにそなえ、
    前記システム管理装置は、前記監視部から通知された前記記憶装置の状態情報を前記システムの状態情報に集約して前記通知処理部へ通知する
    ことを特徴とする、請求項1〜5のいずれか1項記載の情報処理装置。
  7. データを記憶する記憶装置と、前記記憶装置へのアクセスを行なう処理装置と、前記記憶装置の監視を行なう監視部と、をそなえる情報処理装置における監視方法であって、
    前記監視部において、
    所定のプロトコルに従って前記記憶装置へのアクセス制御を行なう入出力制御部による前記記憶装置へのアクセスに用いられるデータに含まれる所定の情報を検出し、
    前記所定の情報に基づく前記記憶装置の状態に関する状態情報を、前記処理装置及び前記記憶装置とを含むシステムの状態情報の管理を行なうシステム管理装置に通知する
    ことを特徴とする、監視方法。
JP2013256858A 2013-12-12 2013-12-12 情報処理装置および監視方法 Pending JP2015114873A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013256858A JP2015114873A (ja) 2013-12-12 2013-12-12 情報処理装置および監視方法
US14/534,637 US20150169221A1 (en) 2013-12-12 2014-11-06 Information processing apparatus and method for monitoring the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013256858A JP2015114873A (ja) 2013-12-12 2013-12-12 情報処理装置および監視方法

Publications (1)

Publication Number Publication Date
JP2015114873A true JP2015114873A (ja) 2015-06-22

Family

ID=53368465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013256858A Pending JP2015114873A (ja) 2013-12-12 2013-12-12 情報処理装置および監視方法

Country Status (2)

Country Link
US (1) US20150169221A1 (ja)
JP (1) JP2015114873A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017204269A (ja) * 2016-05-12 2017-11-16 廣達電腦股▲ふん▼有限公司 フレキシブルなnvmeドライブ管理ソリューション

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6264879B2 (ja) * 2013-12-25 2018-01-24 富士通株式会社 情報処理装置、監視プログラム及び監視方法
WO2016151845A1 (ja) * 2015-03-26 2016-09-29 富士通株式会社 情報処理装置
US10423487B2 (en) * 2016-08-19 2019-09-24 Samsung Electronics Co., Ltd. Data protection offloads using SSD peering
US9946552B2 (en) * 2016-09-21 2018-04-17 American Megatrends, Inc. System and method for detecting redundant array of independent disks (RAID) controller state from baseboard management controller (BMC)
US10545664B2 (en) * 2017-04-11 2020-01-28 Samsung Electronics Co., Ltd. System and method for identifying SSDs with lowest tail latencies
US10481834B2 (en) * 2018-01-24 2019-11-19 Samsung Electronics Co., Ltd. Erasure code data protection across multiple NVME over fabrics storage devices
CN109086081B (zh) * 2018-06-29 2020-11-03 深圳市同泰怡信息技术有限公司 一种即时提示SATA和NVMe设备在位变化的方法、系统及介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6725394B1 (en) * 2000-10-02 2004-04-20 Quantum Corporation Media library with failover capability
US20050091449A1 (en) * 2003-10-23 2005-04-28 Dell Products L.P. System, method and software for faster parity based raid creation
JP4886209B2 (ja) * 2005-04-15 2012-02-29 株式会社東芝 アレイコントローラ、当該アレイコントローラを含む情報処理装置及びディスクアレイ制御方法
US8527807B2 (en) * 2009-11-25 2013-09-03 Cleversafe, Inc. Localized dispersed storage memory system
US8406096B1 (en) * 2011-09-30 2013-03-26 Oracle International Corporation Methods for predicting tape drive and media failures
JP5835040B2 (ja) * 2012-03-19 2015-12-24 富士通株式会社 情報処理システムおよびデータ記録制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017204269A (ja) * 2016-05-12 2017-11-16 廣達電腦股▲ふん▼有限公司 フレキシブルなnvmeドライブ管理ソリューション
CN107368401A (zh) * 2016-05-12 2017-11-21 广达电脑股份有限公司 管理系统与管理方法
CN107368401B (zh) * 2016-05-12 2020-12-25 广达电脑股份有限公司 管理系统与管理方法

Also Published As

Publication number Publication date
US20150169221A1 (en) 2015-06-18

Similar Documents

Publication Publication Date Title
JP2015114873A (ja) 情報処理装置および監視方法
TWI584196B (zh) 基本輸入輸出系統回復管理系統、電腦程式產品 以及基本輸入輸出系統回復方法
TWI578233B (zh) 統一韌體管理系統、非揮發電腦可讀取媒體以及統一韌體管理方法
US10606725B2 (en) Monitor peripheral device based on imported data
JP6034990B2 (ja) サーバ制御方法及びサーバ制御装置
US10114688B2 (en) System and method for peripheral bus device failure management
US10846159B2 (en) System and method for managing, resetting and diagnosing failures of a device management bus
TWI512490B (zh) 擷取控制台訊息的系統及其方法及非暫態電腦可讀媒體
US20170139605A1 (en) Control device and control method
US10275330B2 (en) Computer readable non-transitory recording medium storing pseudo failure generation program, generation method, and generation apparatus
US8095820B2 (en) Storage system and control methods for the same
US11137918B1 (en) Administration of control information in a storage system
JP2007025933A (ja) ストレージシステム及びそのファームウェア自動更新方法
CN114600088A (zh) 使用基板管理控制器的服务器状态监测系统和方法
US8732531B2 (en) Information processing apparatus, method of controlling information processing apparatus, and control program
JP5689783B2 (ja) コンピュータ、コンピュータシステム、および障害情報管理方法
JP6358389B2 (ja) 情報処理装置
US10579275B2 (en) Storage system and storage control method
WO2017072904A1 (ja) 計算機システム、及び、障害検知方法
TWI777628B (zh) 電腦系統及其專用崩潰轉存硬體裝置與記錄錯誤資料之方法
TWI756007B (zh) 用以進行全快閃記憶體陣列伺服器的高可用性管理的方法與設備
US9454452B2 (en) Information processing apparatus and method for monitoring device by use of first and second communication protocols
TW202414229A (zh) 用於致動一毀損記憶碟之視覺指示器的系統及方法
US11074144B2 (en) Active firmware replacement in storage system and in storage controller, and computer-readable recording medium having stored therein program for active firmware replacement in controlling storage
US10977107B2 (en) Apparatus and method to control a storage device