JP2007293448A - ストレージシステム及びその電源制御方法 - Google Patents

ストレージシステム及びその電源制御方法 Download PDF

Info

Publication number
JP2007293448A
JP2007293448A JP2006118375A JP2006118375A JP2007293448A JP 2007293448 A JP2007293448 A JP 2007293448A JP 2006118375 A JP2006118375 A JP 2006118375A JP 2006118375 A JP2006118375 A JP 2006118375A JP 2007293448 A JP2007293448 A JP 2007293448A
Authority
JP
Japan
Prior art keywords
power
failure
storage system
control unit
unit
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
JP2006118375A
Other languages
English (en)
Inventor
Seiji Shima
誠二 島
Kimisaki Kanbayashi
公咲 神林
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 JP2006118375A priority Critical patent/JP2007293448A/ja
Priority to US11/472,410 priority patent/US7536576B2/en
Publication of JP2007293448A publication Critical patent/JP2007293448A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • 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/0727Error 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 storage system, e.g. in a DASD or network based storage system
    • 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/0748Error 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 remote unit communicating with a single-box computer node experiencing an error/fault
    • 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/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/0781Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
    • 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
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/20Driving; Starting; Stopping; Control thereof
    • G11B19/209Driving; Starting; Stopping; Control thereof in multiple disk arrays, e.g. spindle synchronisation in RAID systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】
本発明は、部位を再起動する際の操作性を格段的に向上させ得るストレージシステムを提案する。
【解決手段】
情報処理装置から送信されるデータを転送し、又は格納する複数の部位を有するストレージシステムにおいて、複数の部位のうち、障害が発生している部位を通知する障害通知部と、障害通知部により障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する電源切替指示部と、電源切替指示部の指示に従って、障害が発生している部位の電源をオフに切り替え、その後、オンに切り替える電源切替部とを備えるようにした。
【選択図】図6

Description

本発明は、ホスト計算機から送信されるデータを転送し、又は格納する複数の部位を有するストレージシステムに適用して好適なものである。
近年、データの記憶領域をホスト計算機に提供するストレージシステムでは、非常に数多くの大容量物理ディスクを備えることが可能となり、記憶容量の大規模化が進んでいる。このようなストレージシステムでは、まず記憶デバイスから、RAID(Redundant Array of Independent Disks)構成されたディスクアレイを作成し、この物理的な記憶リソースを複数個集めて、ホスト計算機が要求する容量の記憶領域を論理ボリュームとして作成し、ホスト計算機に提供する。
例えば、特許文献1の記憶デバイス制御装置では、情報処理装置から送信されるファイル単位でのデータ入出力要求をネットワークを通じて受信するファイルアクセス処理部と、記憶デバイスに対するデータ入出力要求に対応するI/O要求を出力するI/Oプロセッサとが形成された回路基板を有するチャネル制御部と、I/Oプロセッサから送信されるI/O要求に応じて記憶デバイスに対するデータ入出力を実行するディスク制御部と含んで構成される記憶デバイス制御装置において、チャネル制御部が情報処理装置から送信されるチャネル制御部に対する論理ボリュームの割り当てが指定されたデータを受信してその割り当てを記憶するようになされている。
特開2004−227098号公報
ところで、特許文献1の記憶デバイス制御装置では、例えば、ストレージシステム内のチャネル制御部やディスク制御部等の所定の部位において障害が発生したときに、当該部位を再起動する場合には、当該部位の電源を物理的に直接オフにさせて、その後、電源を物理的に直接オンにさせるという煩雑な操作をユーザ(保守員)にさせなければならないという問題がある。
本発明は以上の点を考慮してなされたもので、部位を再起動する際の操作性を格段的に向上させ得るストレージシステム及びその電源制御方法を提案するものである。
かかる課題を解決するために本発明においては、情報処理装置から送信されるデータを転送し、又は格納する複数の部位を有するストレージシステムにおいて、複数の部位のうち、障害が発生している部位を通知する障害通知部と、障害通知部により障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する電源切替指示部と、電源切替指示部の指示に従って、障害が発生している部位の電源をオフに切り替え、その後、オンに切り替える電源切替部とを備えるようにした。
従って、障害が発生している部位の電源を物理的に直接オフにさせて、その後電源を物理的に直接オンにさせるという煩雑な操作をユーザ(保守員)にさせることなく、ユーザ(保守員)が電源切替指示部により指示するだけで、障害が発生している部位の電源をオフに切り替え、その後、電源をオンに切り替えて、障害が発生している部位を再起動することができる。
また、本発明においては、情報処理装置から送信されるデータを転送し、又は格納する複数の部位を有するストレージシステムの電源制御方法において、複数の部位のうち、障害が発生している部位を通知する第1のステップと、第1のステップにおいて障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する第2のステップと、第2のステップにおける指示に従って、障害が発生している部位の電源をオフに切り替え、その後、オンに切り替える第3のステップとを備えるようにした。
従って、障害が発生している部位の電源を物理的に直接オフにさせて、その後電源を物理的に直接オンにさせるという煩雑な操作をユーザ(保守員)にさせることなく、ユーザ(保守員)が電源切替指示部により指示するだけで、障害が発生している部位の電源をオフに切り替え、その後、電源をオンに切り替えて、障害が発生している部位を再起動することができる。
本発明によれば、複数の部位のうち、障害が発生している部位を通知し、障害が発生していると通知された部位の電源のオフ及びオンの切替を指示して、障害が発生している部位の電源をオフに切り替え、その後、オンに切り替えることにより、障害が発生している部位の電源を物理的に直接オフにさせて、その後電源を物理的に直接オンにさせるという煩雑な操作をユーザ(保守員)にさせることなく、ユーザ(保守員)が電源切替指示部により指示するだけで、障害が発生している部位の電源をオフに切り替え、その後、電源をオンに切り替えて、障害が発生している部位を再起動することができ、かくして、部位を再起動する際の操作性を格段的に向上させ得るストレージシステム及びその電源制御方法を実現できる。
以下、本発明の実施の形態について図面を用いて詳細に説明する。
(1)本実施の形態における記憶システムの全体構成
まず、図1は、本実施の形態に係る記憶システム100の全体構成を示すブロック図を示している。記憶システム100は、情報処理装置200、遠隔端末300及びストレージシステム400を備えている。情報処理装置200及び遠隔端末300は、LAN(Local Area Network)、SAN(Storage Area Network)等のネットワークを介してストレージシステム400と接続されている。
情報処理装置200は、CPU(Central Processing Unit)(図示せず)やメモリ(図示せず)、表示部(図示せず)等を備えたコンピュータである。情報処理装置200が備えているCPUは、各種プログラムを実行することにより、様々な機能を実現する。情報処理装置200は、例えば、パーソナルコンピュータやワークステーションであることもあるし、メインフレームコンピュータであることもある。
遠隔端末300は、同様に、CPU(Central Processing Unit)(図示せず)やメモリ(図示せず)、表示部(図示せず)等を備えたコンピュータである。遠隔端末300が備えているCPUは、各種プログラムを実行することにより、様々な機能を実現する。遠隔端末300は、例えば、パーソナルコンピュータやノート型パーソナルコンピュータであることもある。
ストレージシステム400は、記憶デバイス制御装置500及び記憶デバイス600を備えている。記憶デバイス制御装置500は、情報処理装置200から受信したコマンドに従って、記憶デバイス600に対する制御を行う。例えば、記憶デバイス制御装置500は、情報処理装置200からデータの入出力要求を受信して、記憶デバイス600に記憶されているデータの入出力のための処理を行う。データは、記憶デバイス600が備えているディスクドライブにより提供される物理的な記憶領域上に論理的に設定される記憶領域である論理ボリューム(Logical Unit)(以下、LUと記すこともある)に記憶されている。また記憶デバイス制御装置500は、情報処理装置200との間で、ストレージシステム400を管理するための各種コマンドの授受も行う。
図1において、情報処理装置1、2(200)は、LAN700を介して記憶デバイス制御装置500と接続されている。LAN700は、インターネットとすることもできるし、専用のネットワークとすることもできる。LAN700を介して行われる情報処理装置1、2(200)と記憶デバイス制御装置500との間の通信は、例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従って行われる。情報処理装置1、2(200)からは、ストレージシステム400に対して、ファイル名指定によるデータアクセス要求(ファイル単位でのデータ入出力要求。以下、ファイルアクセス要求と記す)が送信される。
記憶デバイス制御装置500は、チャネル制御部510、共通メモリ520、キャッシュメモリ530、ディスク制御部540、接続部550、冷却部560、管理端末570及び電源ユニット580を備えている。
記憶デバイス制御装置500は、チャネル制御部1、2(510)を備えている。記憶デバイス制御装置500は、チャネル制御部1、2(510)により、LAN700を介して情報処理装置1、2(200)との間の通信を行う。チャネル制御部1、2(510)は、以下、CHN510と記すこともある。
チャネル制御部1、2(510)は、情報処理装置1、2(200)からのファイルアクセス要求を個々に受け付ける。これにより、ストレージシステム400では、統括的な管理が可能となり、各種設定及び制御や、障害管理、バージョン管理といった保守業務の効率化が図られる。
なお、本実施の形態に係る記憶デバイス制御装置500のチャネル制御部1〜4(510)は、一体的にユニット化された回路基板上に形成されたハードウェア及びこのハードウェアにより実行されるオペレーティングシステム(以下、OSと記すこともある)や、このOS上で動作するアプリケーションプログラムなどのソフトウェアにより実現される。このように本実施例のストレージシステム400では、従来ハードウェアの一部として実装されてきた機能がソフトウェアにより実現されている。このため、本実施例のストレージシステム400では、柔軟性に富んだシステム運用が可能となり、多様で変化の激しいユーザニーズによりきめ細かなサービスを提供することが可能となる。
情報処理装置3(200)は、SAN800を介して記憶デバイス制御装置500と接続されている。SAN800は、記憶デバイス600が提供する記憶領域におけるデータの管理単位であるブロックを単位として情報処理装置3(200)との間でデータの授受を行うためのネットワークである。SAN800を介して行われる情報処理装置3(200)と記憶デバイス制御装置500との間の通信は、一般に、ファイバチャネルプロトコルに従って行われる。情報処理装置3(200)からは、ストレージシステム400に対して、ファイバチャネルプロトコルに従ってブロック単位のデータアクセス要求(以下、ブロックアクセス要求と記す)が送信される。
図2は、他のSAN対応のストレージシステムとの接続構成を示している。図2のように、SAN800には、SAN対応のバックアップデバイス(ストレージシステム420)が接続されている。SAN対応バックアップデバイスは、SAN800を介して記憶デバイス制御装置500との間で通信を行うことにより、記憶デバイス600に記憶されているデータのバックアップデータを記憶する。
記憶デバイス制御装置500は、チャネル制御部3(510)を備える。記憶デバイス制御装置500は、チャネル制御部3(510)により、SAN800を介して情報処理装置3(200)との間の通信を行う。チャネル制御部3(510)は、以下、CHF510と記すこともある。
情報処理装置4(200)は、LAN700やSAN800等のネットワークを介さずに記憶デバイス制御装置500と接続されている。情報処理装置4(200)は、例えば、メインフレームコンピュータである。情報処理装置4(200)と記憶デバイス制御装置500との間の通信は、例えばFICON(Fibre Connection)(登録商標)やESCON(Enterprise System Connection)(登録商標)、ACONARC(Advanced Connection Architecture)(登録商標)、FIBARC(Fibre Connection Architecture)(登録商標)、iSCSI(登録商標)などの通信プロトコルに従って行われる。情報処理装置4(200)からは、ストレージシステム400に対して、これらの通信プロトコルに従ってブロックアクセス要求が送信される。
記憶デバイス制御装置500は、チャネル制御部4(510)により、情報処理装置4(200)との間で通信を行う。チャネル制御部4(510)は、以下、CHA510と記すこともある。
図2のように、SAN800には、ストレージシステム400の設置場所(プライマリサイト)とは遠隔した場所(セカンダリサイト)に設置される他のストレージシステム510が接続している。ストレージシステム510は、後述するレプリケーション又はリモートコピーの機能におけるデータの複製先の装置として利用される。なお、ストレージシステム510は、SAN800以外にも、ATM(Asynchronous Transfer Mode)などの通信回線により、ストレージシステム400に接続していることもある。この場合には、ストレージシステム400では、例えば、チャネル制御部510として、この通信回線を利用するためのインタフェース(チャネルエクステンダ)を備えているチャネル制御部510が採用される。
本実施の形態のストレージシステム400では、CHN510、CHF510、CHA510を混在させて装着させることにより、異種ネットワークに接続されるストレージシステムを実現できる。具体的には、ストレージシステム400は、CHN510を用いてLAN700に接続し、かつCHF510を用いてSAN800に接続するという、SAN統合ストレージシステムである。
記憶デバイス600は、多数のディスクドライブ(物理ディスク)を備えており、情報処理装置200に対して記憶領域を提供する。データは、ディスクドライブにより提供される物理的な記憶領域上に論理的に設定される記憶領域であるLUに記憶されている。ディスクドライブとしては、例えばハードディスク装置やフレキシブルディスク装置、半導体記憶装置等様々なものを用いることができる。なお、記憶デバイス600は、例えば複数のディスクドライブにより、ディスクアレイを構成するようにすることもできる。この場合、情報処理装置200に対して提供される記憶領域は、RAID(Redundant Array of Independent Disks)により管理された複数のディスクドライブにより提供されるようにすることもできる。
記憶デバイス制御装置500と記憶デバイス600との間は、図1のように、直接に接続される形態とすることもできるし、ネットワークを介して接続するようにすることもできる。また、記憶デバイス600は、記憶デバイス制御装置500と一体として構成されることもできる。
記憶デバイス600に設定されるLUには、情報処理装置200からアクセス可能なユーザLUや、チャネル制御部510の制御のために使用されるシステムLU等がある。システムLUには、CHNで実行されるオペレーティングシステムが格納される。また、各LUには、各チャネル制御部510が対応付けられている。これにより、ストレージシステム400では、チャネル制御部510毎にアクセス可能なLUが割り当てられていることとなる。また、この対応付けは、複数のチャネル制御部510で、1つのLUを共有するようにすることもできる。なお、以下において、ユーザLUやシステムLUは、ユーザディスク又はシステムディスク等と記すこともある。また、複数のチャネル制御部510で共有されるLUは、共有LU又は共有ディスクと記すこともある。
チャネル制御部510は、情報処理装置200との間で通信を行うための通信インタフェースを備えており、情報処理装置200との間でデータ入出力コマンド等を授受する機能を備えている。
CHN510は、情報処理装置1、2(200)からのファイルアクセス要求を受け付ける。そして、CHN510は、ファイルの記憶アドレスやデータ長等を求めて、ファイルアクセス要求に対応するI/O(Input/Output)要求を出力することにより、記憶デバイス600へのアクセスを行う。これにより、ストレージシステム400は、NASとしてのサービスを情報処理装置1、2(200)に提供することができる。なお、I/O要求には、データの先頭アドレス、データ長、読み出し又は書き込み等のアクセスの種別が含まれている。また、データの書き込みの場合には、I/O要求には書き込みデータが含まれているようにすることもできる。
また、CHF510は、情報処理装置3(200)からのファイバチャネルプロトコルに従ったブロックアクセス要求を受け付ける。これにより、ストレージシステム400は、高速アクセス可能なデータ記憶サービスを情報処理装置3(200)に対して提供することができる。さらに、CHA510は、情報処理装置4(200)からのFICONやESCON、ACONARC、FIBARC等のプロトコルに従ったブロックアクセス要求を受け付ける。これにより、ストレージシステム400は、情報処理装置4(200)のようなメインフレームコンピュータに対してもデータ記憶サービスを提供することができる。
各チャネル制御部510は、管理端末570と内部LAN551で接続されている。これにより、ストレージシステム400は、チャネル制御部510に実行させるマイクロプログラム等を管理端末570から送信し、インストールすることが可能となっている。
接続部550は、チャネル制御部510、共有メモリ520、キャッシュメモリ530、ディスク制御部540を相互に接続する。チャネル制御部510、共有メモリ520、キャッシュメモリ530、ディスク制御部540間でのデータやコマンドの授受は、接続部550を介することにより行われる。接続部550は、例えば、高速スイッチングにより、データ伝送を行う超高速クロスバスイッチなどの高速バスで構成されている。これにより、ストレージシステム400では、チャネル制御部510同士が高速バスで接続されていることで、個々のコンピュータ上で動作するNASサーバがLANを通じて接続する従来の構成に比べてチャネル制御部510間の通信パフォーマンスを大幅に向上することができる。また、これにより、ストレージシステム400では、高速なファイル共有機能や高速フェイルオーバなどが可能となる。
共有メモリ520及びキャッシュメモリ530は、チャネル制御部510、ディスク制御部540により共有される記憶メモリである。共有メモリ520及びキャッシュメモリ530は、2重制御を行っていて、片側に障害が発生した場合や動作中での保守交換が可能となっている。共有メモリ520は、主に制御情報やコマンド等を記憶するために利用されるのに対し、キャッシュメモリ530は、主にデータを記憶するために利用される。
例えば、あるチャネル制御部510が情報処理装置200から受信したデータ入出力コマンドが書き込みコマンドであった場合には、当該チャネル制御部510は、書き込みコマンドを共有メモリ120に書き込むと共に、情報処理装置200から受信した書き込みデータをキャッシュメモリ530に書き込む。一方、ディスク制御部540は、共有メモリ120を監視しており、共有メモリ120に書き込みコマンドが書き込まれたことを検出すると、当該コマンドに従って、キャッシュメモリ530から書き込みデータを読み出して記憶デバイス600に書き込む。
また、あるチャネル制御部510が情報処理装置200から受信したデータ入出力コマンドが読み出しコマンドであった場合には、当該チャネル制御部510は、読み出しコマンドを共有メモリ120に書き込むと共に、読み出し対象となるデータがキャッシュメモリ530に存在するかどうかを調べる。ここで、キャッシュメモリ530に存在すれば、チャネル制御部510は、そのデータを情報処理装置200に送信する。一方、読みだし対象となるデータがキャッシュメモリ530に存在しない場合には、共有メモリ120を監視することにより、読み出しコマンドが共有メモリ120に書き込まれたことを検出したディスク制御部540は、記憶デバイス600から読みだし対象となるデータを読み出して、これをキャッシュメモリ530に書き込むと共に、その旨を共有メモリ120に書き込む。
そして、チャネル制御部510は、共有メモリ120を監視することにより、読み出し対象となるデータがキャッシュメモリ530に書き込まれたことを検出すると、そのデータを情報処理装置200に送信する。共有メモリ120及びキャッシュメモリ530は、全てのチャネル制御部510とディスク制御部540の共有空間であるが、共有空間を論理的に分割して、タスクを分割することもできる。
また、共通メモリ520には、図1のストレージシステム400の各部位(チャネル制御部510、共通メモリ520、キャッシュメモリ530、ディスク制御部540、冷却部560又は記憶デバイス600)の構成情報や、後述する図5の情報処理装置200から記憶デバイス600までのルート構成情報及び部位番号情報が格納されている。なお、この他、共通メモリ520に格納される、又は格納されている各種テーブル及びプログラムについては、後述する。またなお、共通メモリ520又はキャッシュメモリ530は、処理ボードを備えており、後述する様々な処理を実現することができる。
またなお、ストレージシステム400では、このようにチャネル制御部510からディスク制御部540に対するデータの書き込みや読み出しの指示を、共有メモリ120を介在させて間接に行う構成の他、例えばチャネル制御部510からディスク制御部540に対してデータの書き込みや読み出しの指示を、共有メモリ120を介さずに直接に行う構成とすることもできる。
ディスク制御部540は、記憶デバイス600の制御を行う。例えば、ディスク制御部540は、上述のように、チャネル制御部510が情報処理装置200から受信したデータ書き込みコマンドに従って、記憶デバイス600へデータの書き込みを行う。また、ディスク制御部540は、チャネル制御部510により送信された論理アドレス指定によるLUへのデータアクセス要求を、物理アドレス指定による物理ディスクへのデータアクセス要求に変換する。
また、ディスク制御部540は、記憶デバイス600における物理ディスクがRAIDにより管理されている場合には、RAID構成に従ったデータのアクセスを行う。さらに、ディスク制御部540は、記憶デバイス600に記憶されたデータの複製管理の制御やバックアップ制御を行う。さらに、ディスク制御部540は、災害発生時のデータ消失防止(ディザスタリカバリ)などを目的として、プライマリサイトのストレージシステム400のデータの複製をセカンダリサイトに設置された他のストレージシステム410にも記憶する制御(レプリケーション機能、又はリモートコピー機能)なども行う。
各ディスク制御部540は、管理端末570と内部LAN551で接続されており、相互に通信を行うことが可能である。これにより、ストレージシステム400は、ディスク制御部540に実行させるマイクロプログラム等を管理端末570から送信し、インストールすることが可能となっている。
本実施の形態のストレージシステム400では、共有メモリ120及びキャッシュメモリ530がチャネル制御部510及びディスク制御部540に対して独立に設けられていることについて記載したが、本発明はこの場合に限られるものでなく、共有メモリ120又はキャッシュメモリ530がチャネル制御部510及びディスク制御部540の各々に分散されて設けられることも好ましい。この場合、接続部150は、分散された共有メモリ120又はキャッシュメモリ530を有するチャネル制御部510及びディスク制御部540を相互に接続させることになる。
管理端末570は、CPU(Central Processing Unit)(図示せず)やメモリ(図示せず)、表示部(図示せず)等を備えたコンピュータである。管理端末570が備えているCPUは、各種プログラムを実行することにより、様々な機能を実現する。管理端末570は、ストレージシステム400を保守・管理するためのコンピュータである。ユーザ(保守員)は、管理端末570を操作することにより、例えば、記憶デバイス600内の物理ディスク構成の設定や、LUの設定、チャネル制御部510及びディスク制御部540において実行されるマイクロプログラムのインストール等を行うことができる。
ここで、記憶デバイス600内の物理ディスク構成の設定としては、例えば、物理ディスクの増設や減設、RAID構成の変更(RAID1からRAID5への変更等)等を行うことができる。さらに、管理端末570からは、ストレージシステム400の動作状態の確認や故障部位の特定、チャネル制御部510で実行されるオペレーティングシステムのインストール等の作業を行うこともできる。また、管理端末570は、LAN又は電話回線等で外部保守センタ(遠隔端末300等)と接続されており、管理端末570を利用して、ストレージシステム400の障害監視を行ったり、障害が発生した場合に迅速に対応したりすることも可能である。障害の発生は、例えば、OSやアプリケーションプログラム、ドライバソフトウエアなどから通知される。この通知は、HTTP(Hyper Text Transfer Protocol)プロトコルやSNMP(Simple Network Management Protocol)、電子メールなどにより行われる。これらの設定や制御は、管理端末570で動作するWebサーバが提供するWebページをユーザインタフェースとして、遠隔オペレータなどにより行われる。遠隔オペレータ等は、管理端末570を操作して障害監視する対象や内容の設定、障害通知先の設定などを行うこともできる。
管理端末570は、記憶デバイス制御装置500に内蔵されている形態とすることもできるし、外付けされている形態とすることもできる。また、管理端末570は、記憶デバイス制御装置500及び記憶デバイス600の保守・管理を専用に行うコンピュータとすることもできるし、汎用のコンピュータに保守・管理機能を持たせたものとすることもできる。なお、管理端末570に格納される、又は格納されている各種テーブル及びプログラムについては、後述する。
(2)本実施の形態における記憶システムの外観構成
次に、図3及び図4は、ストレージシステム400の外観構成を示している。図3及び図4に示すように、本実施の形態に係るストレージシステム400は、記憶デバイス制御装置500及び記憶デバイス600がそれぞれの筐体に納められた形態をしている。記憶デバイス制御装置500の筐体の両側には、記憶デバイス600の筐体が配置されている。
記憶デバイス制御装置500は、正面中央部に管理端末570が備えられている。なお、図3に示した管理端末570は、いわゆるノート型パーソナルコンピュータの形態をしているが、どのような形態とすることも可能である。
管理端末570の下部には、チャネル制御部510を装着するためのスロットが設けられている。各スロットには、チャネル制御部510のボードが装着される。本実施の形態に係るストレージシステム400には、スロットが8つあり、図1及び図4のように、4つのスロットにチャネル制御部510が装着された状態が示されている。各スロットには、チャネル制御部510を装着するためのガイドレールが設けられている。チャネル制御部510は、ガイドレールに沿ってスロットに挿入されることにより、記憶デバイス制御装置500に装着される。また、チャネル制御部510は、各スロットに装着されたチャネル制御部510は、ガイドレールに沿って手前方向に引き抜かれることにより、記憶デバイス制御装置500から取り外される。
また、各スロットの奥手方向正面部には、各チャネル制御部510を記憶デバイス制御装置500と電気的に接続するためのコネクタが設けられている。チャネル制御部510には、CHN510、CHF510、CHA510があるが、いずれのチャネル制御部510も、サイズやコネクタの位置、コネクタのピン配列等に互換性をもたせている。このため、8つのスロットには、いずれのチャネル制御部510も装着することが可能である。従って、記憶デバイス制御装置500は、ユーザのニーズにより、例えば、8つのスロット全てにCHN510を装着するようにすることもできる。また、記憶デバイス制御装置500は、4枚のCHN510と、2枚のCHF510と、2枚のCHA510とを装着するようにすることもできる。さらに、記憶デバイス制御装置500は、チャネル制御部510を装着しないスロットを設けるようにすることもできる。
なお、記憶デバイス制御装置500は、信頼性向上のため電源供給が2系統化されており、チャネル制御部510が装着される8つのスロットに対して、電源系統毎に4つずつに分けられている。そこで、記憶デバイス制御装置500は、クラスタを構成する場合には、両方の電源系統のチャネル制御部510を含むようにする。これにより、記憶デバイス制御装置500では、片方の電源系統に障害が発生して、電力の供給が停止しても、同一のクラスタを構成する他方の電源系統に属するチャネル制御部510への電源供給が継続されるため、当該チャネル制御部510に処理を引き継ぐ(フェイルオーバ)ことができる。
なお、上述したように、記憶デバイス制御装置500は、例えば、チャネル制御部510が各スロットに装着可能なボード、すなわち同一のユニットに形成された一つのユニットとして提供されているが、同一のユニットが複数枚数の基板から構成されているようにすることもできる。つまり、記憶デバイス制御装置500のスロットに対して一体的に装着できる場合は、複数枚数の基板から構成されていても、各基板が相互に接続されて一つのユニットとして構成され、同一の回路基板の概念に含まれる。
ディスク制御部540及び共有メモリ120等の、記憶デバイス制御装置500を構成する他の装置については、図3及び図4には示されていないが、記憶デバイス制御装置500の背面側等に装着されている。また、記憶デバイス制御装置500には、チャネル制御部510等から発生する熱を放出するための冷却部560が設けられている。冷却部560は、図3のように、記憶デバイス制御装置500の上面部に設けられる他、チャネル制御部510用スロットの上部にも設けられている。
ところで、筐体に収容されて構成される記憶デバイス制御装置500及び記憶デバイス600としては、例えば、SAN対応として製品化されている従来構成の装置を利用することができる。特に、記憶デバイス制御装置500は、上述のように、CHN510のコネクタ形状を従来構成の筐体に設けられているスロットにそのまま装着できる形状とすることで、従来構成の装置をより簡単に利用することができる。つまり、本実施の形態のストレージシステム400は、既存の製品を利用することで容易に構築することができる。
冷却部560には、ファンや熱電効果(トムソン効果、ペルチェ効果又はゼーベック効果等)素材を用いて、局所的に対象部位を冷却することができる。このとき、記憶デバイス制御装置500及び記憶デバイス600には、内部隅々に温度センサーが配置され、温度を管理する。図3及び図4では、上部に冷却部560が存在するが、実際は内部にも存在している。その冷却部560は、それぞれ独立して電力が供給されていて、その電力の調整で、冷却部560の回転速度を調整し、効率的な温度調整が可能となっている。例えば、記憶デバイス制御装置500及び記憶デバイス600は、チャネル制御部510、ディスク制御部540又は記憶デバイス600等が使用されていないか、又は電断状態等で、周辺温度が低い場合に、その周辺だけの冷却部560の温度を調整することができる。
そして、管理端末570では、図3及び図4のような外観構成図を表示して、各部位周辺の温度状態(図3及び図4が色分けされて温度状態を把握できる)や、電力供給状態などを表示することができる。また、この管理端末570に表示された図3及び図4のような外観構成図に基づいて、ユーザ(保守員)がマウス操作等により指示することによって、温度供給や電力供給の調整をすることができる。また、ユーザ(保守員)がマウス操作等により指示することによって、必要な時又は時点で、指定部位の電力を供給し、遮断し、調整することができる。
図5は、情報処理装置200から記憶デバイス600までのルート構成について示している。この場合、チャネル制御部510は、情報処理装置200と接続するためのポート(PORT)511〜518を備えている。チャネル制御部510のポート511〜518は、それぞれ独立して起動可能であり、処理可能となっている。図5のように、情報処理装置200は、LAN700又はSAN800の接続線900経由で、同時に複数のポート511〜518に接続することができる。チャネル制御部510−1〜4及びディスク制御部540−1〜4は、全てが接続部550と内部LAN551(図5においては図示せず)で接続されている。よって、あるチャネル制御部510は、すべてのディスク制御部540−1〜4とアクセスすることができるし、あるディスク制御部540は、すべてのチャネル制御部510−1〜4とアクセスすることができる。この制御は、共通メモリ520又はキャッシュメモリ530の処理ボードにより実行することもできる。
記憶デバイス600は、複数のディスク制御部540と接続されていて、各ディスク制御部540から記憶デバイス600にアクセスすることができる。例えば、記憶デバイス制御装置500は、図4のようなディスク制御部540の2重化により、ディスク制御部1(540−1)に障害が発生しても、交代ディスク制御部であるディスク制御部2(540−2)から記憶デバイス600(600−1、600−2、・・)にアクセスすることができる。
(3)本実施の形態による電源ユニットの構成
図6は、電源ユニット580の構成を示している。電源ユニット580は、電源制御管理部581、メモリ582、電源制御部583、電源供給部584、電源部585、バッテリ586を備えている。電源制御管理部581及び電源制御部583は、一体でも構わない。電源制御管理部581は、共通メモリ520から各部位の障害状態を取得することができる。また、電源制御管理部581及び共通メモリ520は、コマンドを処理し、指示し、又は取得することもできる。電源制御管理部581及び電源制御部583は、制御ライン587で接続されている。
図7は、電源制御コマンドフラグ(Flag)種類管理テーブル1000を示している。
電源制御コマンドフラグ種類管理テーブル1000は、メモリ582に格納されており、電源ON(オン)、電源OFF(オフ)、電力1%UP(アップ)、電力5%UP(アップ)、電力1%DOWN(ダウン)又は電力5%DOWN(ダウン)等の電源制御コマンドを管理する。電源制御管理部581は、電源制御部583側に対して、図7の電源制御コマンドフラグ種類管理テーブル1000の電源制御コマンドを指示することができる。
なお、電源制御管理部581は、各部位(チャネル制御部510、共通メモリ520、キャッシュメモリ530、ディスク制御部540、冷却部560又は記憶デバイス600)内部に電源制御部583を備えている場合には、電源制御コマンドを各部位(チャネル制御部510、共通メモリ520、キャッシュメモリ530、ディスク制御部540、冷却部560又は記憶デバイス600)内部の電源制御部583に指示することもできる。各部位に備えられた電源制御部583は、部位内部の局所的な範囲(例えば、ポート単位)で電源操作が可能となる。
電源制御部583と電源供給部584は、電力供給ライン588で接続されている。電力供給ライン589は、信頼性向上対策がされている。電源制御部583は、電源制御コマンドを処理することにより、電力供給ライン851からの電力を部位単位に供給し、遮断(供給を停止)し、又は調整することができる。電源供給部584は、2重化され、待機化された電源部585(又は、バッテリ586)を制御して、電力を供給し、遮断し、調整するようになされている。
管理端末570は、電源制御管理部581と制御ライン588で接続されている。管理端末570は、電源制御コマンドを電源制御管理部581側の対象部位レジスタに設定することで、電源制御コマンドを指示することができる。この処理については、後述する。あるいは、管理端末570は、共通メモリ520によって、対象部位位置とその部位内部位置を指定させることにより、電源制御コマンドを指示することもできる。
(4)本実施の形態による情報管理
図8は、電源状態管理テーブル1010を示している。電源状態管理テーブル1010は、メモリ582に格納されており、部位番号を主キーとして、電源状態、皮相電力、有効電力、力率、電流、電圧、要求フラグ(Flag)等の情報を管理する。電源制御管理部581は、図8の電源状態管理テーブル1010の情報をタイムリーに更新することにより、管理することができる。
管理端末570は、図8の電源状態管理テーブル1010の情報を電源制御管理部581からタイムリーに取得し、時系列での各部位番号に対応する各部位の電源状態を管理する。また、管理端末570は、電源制御管理部581から管理端末570に状態変更又は構成変更の通知があった時点で、図8の電源状態管理テーブル1010の情報を電源制御管理部581から取得する。また、管理端末570は、任意のタイミングや定期的なタイミングでも図8の電源状態管理テーブル1010の情報を取得することができる。
この場合、管理端末570は、電源制御管理部581から取得した図8の電源状態管理テーブル1010の情報から、部位ごとの電源状態の状態遷移を監視する部位別電源状態管理テーブル1020を作成して、管理端末570のメモリ(図示せず)に格納し、又は部位別電源状態管理テーブル1020を更新する。図9は、部位別電源状態管理テーブル1020を示している。部位別電源状態管理テーブル1020は、部位番号を主キーとして、図8の電源状態管理テーブル1010の情報を取得した時刻を示すタイムスタンプ(Time Stamp)並びに当該時刻の電源状態、力率、皮相電力、有効電力、変動率、電圧及び電流を管理する。これにより、管理端末570は、部位番号に対応する部位ごとの電力の変動率や部位癖を分析することができる。
図10は、部位別エラー種類管理テーブル1030を示している。部位別エラー種類管理テーブル1030は、管理端末570のメモリ(図示せず)に格納されており、部位識別子を主キーとして、エラー種類並びにエラー種類に対する監視間隔、エラーレベル及び閾値最大値のメタデータを管理する。管理端末570は、ユーザ(保守員)の操作により、このメタデータの各値(監視間隔、エラーレベル及び閾値最大値)を変更することができる。
図11は、部位別障害状態管理テーブル1040を示している。部位別障害状態管理テーブル1040は、共通メモリ520に格納されており、ソートに用いるための番号、部位番号、部位識別子、障害状態を管理する。管理端末570は、図11の部位別障害状態管理テーブル1040の情報を共通メモリ520から定期的に取得し、更新することにより、各部位識別子に対応する各部位ごとの障害状態の最新状態を把握することができる。また、管理端末570は、各部位内部で複数の障害可能性がある場合は、自動的に一番可能性の高い障害状態を把握することができる。さらに、管理端末570は、ある部位に障害が発生すると、その時点で図11の部位別障害状態管理テーブル1040の情報が通知される。また、共通メモリ520は、ある部位に障害が発生すると、その時点で図11の部位別障害状態管理テーブル1040の情報を更新する。
管理端末570は、図11の部位別障害状態管理テーブル1040の情報から、部位ごとの障害状態の情報の来歴を管理する部位別障害来歴管理テーブル1050を作成して、管理端末570のメモリ(図示せず)に格納し、又は部位別障害来歴管理テーブル1050を更新する。図12は、部位別障害来歴管理テーブル1050を示している。部位別障害来歴管理テーブル1050は、部位番号を主キーとして、障害種別並びに当該障害種別ごとの障害発生回数及び回復処理回数を管理する。
また、管理端末570は、図11の部位別障害状態管理テーブル1040の情報から、部位ごとの障害状態の情報の履歴を管理する部位別障害履歴管理テーブル1060を作成して、管理端末570のメモリ(図示せず)に格納し、又は部位別障害履歴管理テーブル1060を更新する。図13は、部位別障害履歴管理テーブル1060を示している。部位別障害履歴管理テーブル1060は、部位番号を主キーとして、図11の部位別障害状態管理テーブル1040の情報を取得した時刻を示すタイムスタンプ(Time Stamp)並びに当該時刻の部位識別子、障害状態及び回復処理を管理する。
これにより、管理端末570は、時系列で各部位の障害状態の履歴を管理することができるため、ユーザ(保守員)に、図13の部位別障害履歴管理テーブル1060から保守対応を分析させることができる。
さらに、管理端末570は、図1のストレージシステム400の各部位の構成情報、図5の情報処理装置200から記憶デバイス600までのルート構成情報及び部位番号情報並びに図11の部位別障害状態管理テーブル1040の情報から、ディスク制御部540及び接続可能な記憶デバイス600の関係を示すディスク制御部−記憶デバイス関係管理テーブル1070及びチャネル制御部510及び接続可能なディスク制御部540の関係を示すチャネル制御部−ディスク制御部関係管理テーブル1080を作成して、管理端末570のメモリ(図示せず)に格納し、又はチャネル制御部−ディスク制御部関係管理テーブル1080を更新する。
図14は、ディスク制御部−記憶デバイス関係管理テーブル1070を示している。ディスク制御部−記憶デバイス関係管理テーブル1070は、ディスク制御部を主キーとして、当該ディスク制御部の状態及び当該ディスク制御部に接続可能な記憶デバイスを管理する。図15は、チャネル制御部−ディスク制御部関係管理テーブル1080を示している。チャネル制御部−ディスク制御部関係管理テーブル1080は、チャネル制御部のポートを主キーとして、当該ポートの状態及び当該チャネル制御部に接続可能なディスク制御部を管理する。
管理端末570は、ユーザ(保守員)の操作により、ディスク制御部540に接続可能な記憶デバイス600や、チャネル制御部510に接続可能なディスク制御部540を設定し、変更することができる。ディスク制御部−記憶デバイス関係管理テーブル1070及びチャネル制御部−ディスク制御部関係管理テーブル1080は、正常状態を表す「状態」を「○」で表し、警告状態を表す「状態」を「△」で表し、異常(動作不可能)状態でI/O処理が不可能な状態を表す「状態」を「×」で表している。なお、正常状態を表す「○」は、図10の部位別エラー種類管理テーブル1030のエラーレベル「0」と対応し、警告状態を表す「△」は、エラーレベル「1〜8」と対応し、異常状態を表す「×」は、エラーレベル「9〜10」と対応する。
これにより、管理端末570は、図14のディスク制御部−記憶デバイス関係管理テーブル1070から、ディスク制御部540の障害状態及び接続可能な記憶デバイス600を認識することができる。例えば、管理端末570は、図14のディスク制御部−記憶デバイス関係管理テーブル1070により、ディスク制御部540の障害状態及び接続可能な記憶デバイス600を管理することで、記憶デバイス600−1にアクセスする場合のディスク制御部540−2を認識することができる。
これにより、管理端末570は、図15のチャネル制御部−ディスク制御部関係管理テーブル1080から、各ポート512〜518の障害状態及び接続可能なディスク制御部540を認識することができる。例えば、管理端末570は、図15のチャネル制御部−ディスク制御部関係管理テーブル1080により、各ポート512〜518の障害状態及び接続可能なディスク制御部540を管理することで、情報処理装置200−1が複数のポート511、512と接続されている場合、一方のポート512が障害状態でも、他方のポート512から記憶デバイス600−1にアクセス可能であることを認識することができる。
つまり、この場合、管理端末570は、ディスク制御部540−1及びポート512が障害状態であり、情報処理装置200−1が、ポート511及びディスク制御部540−2を経由して記憶デバイス600−1にアクセス(ルート設定)されていることを認識する。このようなルート設定は、ユーザ(保守員)からの指示や、突然の障害に対応して、自動的にルートを設定し、変更することができる。ルートとは、チャネル制御部510内のポート511〜518から記憶デバイス600までのデータ及びコマンドの流れ道を示している。ルートは、構成が複雑になれば重複ルートや複数のートが設定されることもある。ルートを管理するテーブルは、管理端末570のメモリ(図示せず)で管理され、定義されている。実際のデータ及びコマンドの処理は、その時点でのルートの状態及び構成で、障害のリスクを避け、適材適所かつ臨機応変に処理される。
この場合、管理端末570は、図5の情報処理装置200から記憶デバイス600までのルート構成情報及び部位番号情報、図14のディスク制御部−記憶デバイス関係管理テーブル1070並びに図15のチャネル制御部−ディスク制御部関係管理テーブル1080から、ルート管理テーブル1090を作成して、管理端末570のメモリ(図示せず)に格納し、又はルート管理テーブル1090を更新する。
図16は、ルート管理テーブル1090を示している。ルート管理テーブル1090は、管理端末570に格納されており、ルート番号を主キーとして、ポート番号、チャネル制御部、ディスク制御部、共有空間、記憶デバイスを管理する。例えば、ルート管理テーブル1090は、上述したポート511、512及び記憶デバイス600−1のデータ及びコマンドの流れ道をルート番号「1」で管理している。また、ルート管理テーブル1090は、その他のポート511〜518及び記憶デバイス600のデータ及びコマンドの流れ道も管理している。この場合、管理端末570は、ルート管理テーブル1090により、対象ルートに属するポート(交代ポートがあれば複数)、各ポートに属するチャネル制御部510、対象ルートにアクセス可能な記憶デバイス600、各記憶デバイス600を制御するディスク制御部540、対象ルートのI/O処理を制御する共有空間(共通メモリ520及びキャッシュメモリ530)内のキュー番号を管理する。
図17は、図5の情報処理装置200から記憶デバイス600までのルート構成情報及び部位番号情報、図14のディスク制御部−記憶デバイス関係管理テーブル1070並びに図15のチャネル制御部−ディスク制御部関係管理テーブル1080から、実際のデータ及びコマンドの流れ道を可視化して示している。ルート番号「1」のルートは、ポート512及びディスク制御部540−1が異常状態であるため、ポート511、ディスク制御部540−2を経由して記憶デバイス600−1にアクセスする「R1」となる。ルート番号「2」のルートは、ディスク制御部540−1が異常状態であるため、ポート513又はポート514、ディスク制御部540−2を経由して記憶デバイス600−1にアクセスする「R2」となる。ルート番号「3」のルートは、チャネル制御部510−3が異常状態であるため、ポート517又はポート518、ディスク制御部540−3又はディスク制御部540−4を経由して記憶デバイス600−4にアクセスする「R3」となる。このように、重複度が高いルートであっても、障害数の多いルートのI/O処理が圧迫されやすいこととなる。
図18は、共有空間における処理概要を示している。上述のように、チャネル制御部510及びディスク制御部540は、共有空間(共通メモリ520及びキャッシュメモリ530)を経由してI/O処理を実施している。具体的に、図18は、ある分割共有資源空間Q1でのI/O処理を示している。この場合、チャネル制御部510及びディスク制御部540は、情報処理装置200から送信されたコマンドを、共通メモリ520内のキューQ1に格納し、当該コマンドからリンクされたデータをキャッシュメモリ530内のキューQ1に格納する。コマンドは、キューQ1の番号「1」から空きを検索して、空きスタック(empty)に格納される。また、処理済みのコマンドは、空きスタック(empty)となる。キャッシュメモリ内は、同様に、適当な空きエリアにデータがステージングされ、処理が完了したらデステージングされる。コマンドには、ルート情報、コマンド種別、データ情報格納アドレス等が記録されている。ルート情報には、ルート構成とコマンド及びデータの受渡し先情報が記録されている。コマンド種別は、リード、ライト又は命令等の種別が記録されている。なお、命令コマンドは、特殊的な場合により、図6の電源制御部583に共通メモリ520経由で電源操作を指示することができる。
図19は、スタック管理テーブル1100を示している。スタック管理テーブル1100は、共通メモリ520に格納されており、スタック番号を主キーとして、コマンド単位の処理の処理番号、ルート番号、スタックイン(IN)タイム及びスタックアウト(OUT)タイムを管理する。共通メモリ520は、スタック管理テーブル1100により、キューごとに、スタック番号、処理された処理番号、スタックに格納されたスタックインタイム及びスタックから消えたスタックアウトタイムを管理する。
図20は、スタック処理時間管理テーブル1110を示している。スタック処理時間管理テーブル1110は、共通メモリ520に格納されており、ルート番号を主キーとして、処理番号及びアウト−イン(OUT-IN)差分値(標本値)を管理する。共通メモリ520は、スタック処理時間管理テーブル1110により、ルートごとに、処置番号及び対象ルートのスタックINからスタックOUTまでの差分時間を管理することにより、コマンド単位の処理時間を管理する。この場合、処理番号は、図19のスタック管理テーブル1100における処理番号と対応づけられている。障害状態の部位が多いルートは、処理を圧迫するため、アウト−イン差分値(標本値)が大きくなる(処理遅延する)可能性がある。
図21は、コマンド処理確率管理テーブル1120を示している。コマンド処理確率管理テーブル1120は、共通メモリ520に格納されており、ルート番号を主キーとして、
標本和(sample sum)、標本平均(sample mean)、標準偏差(standard deviation)、コマンド未処理数及びコマンド処理失敗数を管理する。共通メモリ520は、図20のスタック処理時間管理テーブル1110のアウト−イン差分値(標本値)を定期間隔的にサンプリングして、ルートごとに、標本和、標本平均、標準偏差を算出し、コマンド処理確率管理テーブル1120を更新する。コマンド未処理数とは、対象ルート内の「標本平均+3×標準偏差」を超えたコマンドの数とする。コマンド処理失敗数とは、対象ルート内のコマンド処理(標本)で失敗した数とする。共通メモリ520は、図21のコマンド処理確率管理テーブル1120の情報を、管理端末570に通知することができる。
次に、本実施の形態における記憶システム100のテーブル作成・更新処理について説明する。図22は、この記憶システム100におけるテーブル作成・更新処理に関するストレージシステム400の具体的な処理手順を示したフローチャートである。
管理端末570は、初期時、管理端末570のメモリ(図示せず)に格納されている、各種テーブルを作成・更新するプログラムであるテーブル作成・更新処理プログラムを実行することにより、図22に示すテーブル作成・更新処理手順RT1に従って、共通メモリ520及び電源制御管理部581から障害が通知されるのを待機モードで待ち受ける。
共通メモリ520又は電源制御管理部581は、ある部位に障害が発生すると、障害が発生した旨を管理端末570に通知する(S1、S2)。管理端末570は、共通メモリ520又は電源制御管理部581から障害が発生した旨を通知されると、図8の電源状態管理テーブル1010の情報を電源制御管理部581に要求する(S3)。電源制御管理部581は、管理端末570から要求されたテーブルの情報を管理端末570に送信する(S4)。
続いて、管理端末570は、図1のストレージシステム400の各部位の構成情報、図5の情報処理装置200から記憶デバイス600までのルート構成情報及び部位番号情報、図11の部位別障害状態管理テーブル1040の情報並びに図21のコマンド処理確率管理テーブル1120の情報を共通メモリ520に要求する(S5)。共通メモリ520は、管理端末570から要求されたテーブルの情報を管理端末570に送信する(S6)。
続いて、管理端末570は、共通メモリ520及び電源制御管理部581から送信された情報に基づいて、図9の部位別電源状態管理テーブル1020、図12の部位別障害来歴管理テーブル1050、図13の部位別障害履歴管理テーブル1060、図14のディスク制御部−記憶デバイス関係管理テーブル1070、図15のチャネル制御部−ディスク制御部関係管理テーブル1080、図16のルート管理テーブル1090、図27のルート障害重み関係管理テーブル1130及び図29の異常部位リスト管理テーブル1140をそれぞれのタイミングで作成し、又は更新する(S7)。
なお、管理端末570は、例えば、予め設定されている時間等の所定のタイミングで、ステップS3〜ステップS7の処理を実行することにより、定期的に各種テーブルを更新することもできる。
次に、本実施の形態における記憶システム100の電源制御処理について説明する。図23は、この記憶システム100における電源制御処理に関するストレージシステム400の具体的な処理手順を示したフローチャートである。
電源制御管理部581は、初期時、メモリ582に格納されている、所定の部位の電源を制御するプログラムである電源制御処理プログラムを実行することにより、図23に示す電源制御処理手順RT2に従って、管理端末570から部位を指定して、電源制御コマンドの指示が通知されるのを待機モードで待ち受ける(S11)。
電源制御管理部581は、管理端末570から部位を指定して、電源制御コマンドの指示が通知される(S11:YES)と、当該電源制御コマンドが図7の「“02”電源ON」コマンドであるか否かをチェックする(S12)。
そして、電源制御管理部581は、電源制御コマンドが図7の「“02”電源ON」コマンドであった場合(S12:YES)には、電源オン処理を実行する(RT3)。
ここで、本実施の形態における記憶システム100の電源オン処理について説明する。図24は、この記憶システム100における電源オン処理に関するストレージシステム400の具体的な処理手順を示したフローチャートである。
電源制御管理部581は、電源制御コマンドが図7の「“02”電源ON」コマンドであった場合(S12:YES)には、メモリ582に格納されている、所定の部位の電源をオンに切り替えるプログラムである電源オン処理プログラムを実行することにより、図24に示す電源オン処理手順RT3に従って、電源をオンにしてよいか否か(指定された部位に電力を供給してよいか否か)をチェックする(S21)。
そして、電源制御管理部581は、電源をオンにしてよい場合(S21;YES)には、指定された部位の電源をオンにする旨を電源制御部583に指示し、指定された部位の電源をオンに切り替える(S22)。やがて、電源制御管理部581は、指定された部位の電源をオンに切り替えた(S22)場合、又は電源をオンにしてはならない場合(S21:NO)には、この後、図24に示す電源オン処理手順RT3を終了する(S23)。
やがて、電源制御管理部581は、電源オン処理の実行を終了すると(RT3)、この後、図23に示す電源制御処理手順RT2を終了する(S18)。
図23に戻り、これに対して、電源制御管理部581は、電源制御コマンドが図7の「“02”電源ON」コマンドでない場合(S12:NO)には、当該電源制御コマンドが図7の「“10”電源OFF」コマンドであるか否かをチェックする(S13)。
そして、電源制御管理部581は、電源制御コマンドが図7の「“10”電源OFF」コマンドであった場合(S13:YES)には、後述する電断処理を実行する(RT4)。
ここで、本実施の形態における記憶システム100の電断処理について説明する。図24は、この記憶システム100における電断処理に関するストレージシステム400の具体的な処理手順を示したフローチャートである。
電源制御管理部581は、電源制御コマンドが図7の「“10”電源OFF」コマンドであった場合(S13:YES)には、メモリ582に格納されている、所定の部位の電源をオフに切り替えるプログラムである電断処理プログラムを実行することにより、図25に示す電断処理手順RT4に従って、電源をオフにしてよいか否か(指定された部位の電力の供給を停止してよいか否か)をチェックする(S31)。
そして、電源制御管理部581は、電源をオフにしてよい場合(S31;YES)には、指定された部位の電源をオフにする旨を電源制御部583に指示し、指定された部位の電源をオフに切り替える(S32)。やがて、電源制御管理部581は、指定された部位の電源をオフに切り替えた(S32)場合、又は電源をオフにしてはならない場合(S31:NO)には、この後、図25に示す電断処理手順RT4を終了する(S33)。
なお、電源をオフにしてはならない場合としては、例えば、情報処理装置200から指定された部位にコマンド又はデータが流れている場合、共通メモリ520内に指定された部位に対する未処理のコマンドが存在する場合、キャッシュメモリ530内に指定された部位に対する未処理のデータが存在する場合等が考えられる。また、電源制御管理部581は、複数の部位の電源をオフにする場合には、電源をオフにする順序があり、当該順序に従って、電源をオフにする。ただし、電源制御管理部581は、場合により、電源をオフにしてよいか否かを、電源をオフにする順序をチェックすることなく、強制的に電源をオフにすることもある。
やがて、電源制御管理部581は、電断処理の実行を終了すると(RT4)、この後、図23に示す電源制御処理手順RT2を終了する(S18)。
図23に戻り、これに対して、電源制御管理部581は、電源制御コマンドが図7の「“10”電源OFF」コマンドでない場合(S13:NO)には、当該電源制御コマンドが図7の「“11”電力1%UP、“21”電力5%UP」コマンドであるか否かをチェックする(S14)。
そして、電源制御管理部581は、電源制御コマンドが図7の「“11”電力1%UP、“21”電力5%UP」コマンドであった場合(S14:YES)には、指定されたパーセンテージ分指定された部位の電力をアップさせる(S15)。これに対して、電源制御管理部581は、電源制御コマンドが図7の「“11”電力1%UP、“21”電力5%UP」コマンドでない場合(S14:NO)には、当該電源制御コマンドが図7の「“22”電力1%DOWN、“23”電力5%DOWN」コマンドであるか否かをチェックする(S16)。
そして、電源制御管理部581は、電源制御コマンドが図7の「“22”電力1%DOWN、“23”電力5%DOWN」コマンドであった場合(S16:YES)には、指定されたパーセンテージ分指定された部位の電力をダウンさせる(S17)。これに対して、電源制御管理部581は、電源制御コマンドが図7の「“22”電力1%DOWN、“23”電力5%DOWN」コマンドでない場合(S16:NO)には、当該電源制御コマンドが図7の「“01”電源再起動」コマンドであるため、前述した電断処理を実行する(RT4)。
続いて、電源制御管理部581は、電断処理が終了すると、前述した電源オン処理を実行し(RT3)、この後、図23に示す電源制御処理手順RT2を終了する(S18)。
このようにして、ストレージシステム400では、ユーザ(保守員)が管理端末570を操作して、管理端末570から指示することにより、ユーザ(保守員)が指定した部位の電断処理を実行し、その後、電源オン処理を実行する。これにより、ストレージシステム400では、ユーザ(保守員)に各部位の電源を物理的に直接オフにさせて、その後電源を物理的に直接オンにさせるという煩雑な操作をさせることなく、ユーザ(保守員)が管理端末570から指示するだけで、電断処理を実行し、その後、電源オン処理を実行して、ユーザ(保守員)が指定した部位を再起動することができる。
この場合、ストレージシステム400では、部位の再起動(電源をオフにし、オンする)を実行するだけで障害が回復することが多いため、電断処理を実行し、その後、電源オン処理を実行することにより、障害が発生した部位内の制御不可能となった起動中のプログラムや、不要なデータを初期化することで、潜在的に存在する障害ポテンシャルを取り除き、障害が発生した部位を再起動して、回復することができる。
また、ストレージシステム400では、ユーザ(保守員)が管理端末570を操作して、管理端末570から指示することにより、ユーザ(保守員)が指定した部位の電力をアップさせたり、ダウンさせたりすることができる。
図26は、部位別の障害の重みの割合を示している。この場合、ストレージシステム400では、キャッシュメモリ530を最も障害の重みが重くなるように設定され、冷却部560を最も障害の重みが軽くなるように設定されている。この部位障害重みとは、本発明の電源制御の優先度を示し、例えば、同時にディスク制御部540及びチャネル制御部510が障害状態になったときには、ディスク制御部540に対して先に電源制御を実行することを示している。
共通メモリ520及びキャッシュメモリ530は、軽度の障害でもストレージシステム400全体に影響を与えることがあるため、他の部位より優先度が高く設定されている。続いて、共通メモリ120及びキャッシュメモリ130のコマンド処理及びデータ処理不可能数を減らす(圧迫を減らす)ために、下位部(ディスク制御部540側)の優先度が次に高く設定され、下位部(ディスク制御部540側)を正常にして、コマンド処理及びデータ処理の受領が可能となった状態で、上位部(チャネル制御部510)を回復する順番とするため、上位部(チャネル制御部510)の優先度が次に高く設定されている。記憶デバイス300及び冷却部170はストレージシステム400全体に影響を与えることがなく、共有度が最も低いため、優先度が低く設定されている。
図27は、ルート障害重み関係管理テーブル1130を示している。ルート障害重み関係管理テーブル1130は、ルート番号を主キーとして、障害部位数及びその重み係数、コマンド平均処理時間及びその重み係数、未処理コマンド数及びその重み係数並びにコマンド処理失敗数及びその重み係数を管理する。管理端末570は、図11の部位別障害状態管理テーブル1040の情報、図16のルート管理テーブル1090の情報及び図21のコマンド処理確率管理テーブル1120の情報から、ルート障害重み関係管理テーブル1130を作成して、管理端末570のメモリ(図示せず)に格納し、又はルート障害重み関係管理テーブル1130を更新する。この重み係数は、ルート障害の重み(ルート内の障害危険性の高さ)を意味している。これは、Ynに汎用的に新規コンテンツを追加してルート障害重みを調整する(又、重み係数の値をカスタマイズする)ことができるような拡張性を有する。
数1は、ルート障害重み量算出式を示している。管理端末570は、図27のルート障害重み関係管理テーブル1130から、ルート障害重み量算出式によって、ルート単位の障害重み量を算出する。管理端末570は、この式で算出された値が高い順にルート単位に電源制御を実行する。
管理端末570は、数1から、各ルートのルート障害重み量を算出する。
例えば、数1から、ルート番号「1」の障害重み量は、
(4/(4+5+1)×40)+(30/(30+50+10)×30)+(2/(2+1+0)×20)+(1/(1+3+0)×10)=41
と算出される。
また、例えば、数1から、ルート番号「2」の障害重み量は、
(5/(4+5+1)×40)+(50/(30+50+10)×30)+(1/(2+1+0)×20)+(3/(1+3+0)×10)=49
と算出される。
さらに、例えば、数1から、ルート番号「3」の障害重み量は、
(1/(4+5+1)×40)+(10/(30+50+10)×30)+(0/(2+1+0)×20)+(0/(1+3+0)×10)=7
と算出される。
従って、管理端末570は、ルート障害重み量が高い、ルート2→ルート1→ルート3の順に電源制御を実行する。
これにより、ストレージシステム400では、共通メモリ520及びキャッシュメモリ530のコマンド処理及びデータ処理速度を向上することができる。この場合、ルートは、重複数が多いと選択道(肢)が多くなり、コマンド及びデータが迅速に処理される。しかし、選択道(肢)が少ないルートや、多障害で選択道(肢)が少なくなったルートは、処理の待ち行列が多発し、性能が劣化する可能性が高くなる。また、障害の状態次第で制御不可能コマンド及び制御不可能データが共通メモリ520及びキャッシュメモリ530に常駐する(未処理となる)場合もある。
ストレージシステム400は、劣化したルートの処理劣化や常駐化などにより、共有空間(共通メモリ520及びキャッシュメモリ530側)自体のコマンド処理及びデータ処理を圧迫し、劣化したルートが健全なルートの処理にも影響を及ぼし、論理分割した共有空間でコマンド処理及びデータ処理していたとしても、ストレージシステム400全体の性能が劣化するおそれがある。よって、ストレージシステム400では、圧迫度の高いルートから電源制御を実行することで、ストレージシステム400全体の性能を迅速に改善することができる。
次に、本実施の形態における記憶システム100の障害部位回復処理について説明する。図28は、この記憶システム100における障害部位回復処理に関するストレージシステム400の具体的な処理手順を示したフローチャートである。
管理端末570は、初期時、管理端末570のメモリ(図示せず)に格納されている、障害部位を回復するプログラムである障害部位回復プログラムを実行することにより、図28に示す障害状態回復処理手順RT5に従って、各種テーブルを作成・更新するプログラムであるテーブル作成・更新処理プログラムを実行して、図22に示したテーブル作成・更新処理手順RT1を実行する(RT1)。
続いて、管理端末570は、図11の部位別障害状態管理テーブル1040から、障害状態が「正常」である部位を除外し、何らかの異常がある部位を抜粋することにより、異常部位リスト管理テーブル1140を作成し、管理端末570のメモリ(図示せず)に格納する(S41)。図29は、異常部位リスト管理テーブル1140を示している。異常部位リスト管理テーブル1140は、番号を主キーとして、部位番号、部位識別子及び障害状態を管理する。
続いて、管理端末570は、異常部位リスト管理テーブル1140が作成されると、当該異常部位リスト管理テーブル1140を調整する異常部位リスト管理テーブル調整処理を実行する(RT6)。
ここで、本実施の形態における記憶システム100の異常部位リスト管理テーブル調整処理について説明する。図30は、この記憶システム100における異常部位リスト管理テーブル調整処理に関するストレージシステム400の具体的な処理手順を示したフローチャートである。
管理端末570は、初期時、管理端末570のメモリ(図示せず)に格納されている、異常部位リスト管理テーブル1140を調整するプログラムである異常部位リスト管理テーブル調整処理プログラムを実行することにより、図30に示す異常部位リスト管理テーブル調整処理手順RT6に従って、図16のルート管理テーブル1090から、対応するルート番号を取得し、図10の部位別エラー種類管理テーブル1030から、対応するエラーレベルを取得して、異常部位リスト管理テーブル1140に追加する(S61)。
続いて、管理端末570は、ルートごとに、異常部位リストを固定すると共に、前述した図27のルート障害重み関係管理テーブル1130及び数1のルート障害重み量算出式に基づいて算出したルート障害重み量が高い、ルート2→ルート1→ルート3の順に異常部位リスト管理テーブル1140を入れ替える(S62)。この場合、管理端末570は、重複ルートについて、障害重み量の高いルートを優先して入れ替える。このとき、管理端末570は、番号「4」〜番号「6」について、ルート「1」及びルート「2」で使用されているが、ルート「2」の障害重み量が高いため、ルート「2」として扱う。
続いて、管理端末570は、ルートリストごとに、前述した図26の部位別の障害の重みの割合に基づいて、部位障害重みの高い順に異常部位リスト管理テーブル1140を入れ替える(S63)。このとき、管理端末570は、番号「5」及び番号「6」をリストの一番上に移動し、番号「2」を番号「4」の下に移動する。
続いて、管理端末570は、ルートリストの部位ごとに、エラーレベルの高い順に異常部位リスト管理テーブル1140を入れ替える(S64)。このとき、管理端末570は、番号「5」及び番号「6」を入れ替え、番号「3」及び番号「4」入れ替える。
続いて、管理端末570は、図12の部位別障害来歴管理テーブル1050から、対応する障害発生回数を取得して、異常部位リスト管理テーブル1140に追加し、ルートリストの部位の同エラーレベルごとに、障害発生回数を比較して、当該障害発生回数の多い順に部位障害重み順に異常部位リスト管理テーブル1140を入れ替える(S66)。このとき、管理端末570は、番号「11」及び番号「12」を入れ替える。
やがて、管理端末570は、この後、図30に示す異常部位リスト管理テーブル調整処理手順RT6を終了する(S66)。
このようにして、ストレージシステム400では、図30に示す異常部位リスト管理テーブル調整処理手順RT6を実行することにより、ストレージシステム400全体の性能の劣化を考慮して、障害状態の回復が最も必要な部位の順に、部位障害重み順に異常部位リスト管理テーブル1140を入れ替えることができる。
図28に戻り、続いて、管理端末570は、図30に示す異常部位リスト管理テーブル調整処理手順RT6を終了すると(RT6)、異常部位リスト管理テーブル1140の異常部位リストの高い順である、一番上に入れ替えられた異常部位から順に選択して、当該異常部位のエラーレベルが「10」であるか否かをチェックする(S42)。
そして、管理端末570は、当該異常部位のエラーレベルが「10」でない場合(S43:NO)には、図10の部位別エラー種類管理テーブル1030から、当該異常部位のエラー種別について、監視間隔が設定されているか否かをチェックする(S43)。
そして、管理端末570は、該異常部位のエラー種別について、監視間隔が設定されている場合(S43:YES)には、図10の部位別エラー種類管理テーブル1030を参照して、当該異常部位のエラー種別の監視間隔の時間について、当該異常部位の監視を実行する(S44)。
そして、管理端末570は、当該異常部位のエラー種別の監視間隔の時間について、当該異常部位の監視を実行した場合(S44)、又は当該異常部位のエラー種別について、監視間隔が設定されていない場合(S43:NO)には、当該異常部位を指定して、回復処理を電源制御管理部581に指示する(当該異常部位を指定して、「“01”電源再起動」コマンドを電源制御管理部581に送信する)(S45)。
ここで、本実施の形態における記憶システム100の指定障害部位回復処理について説明する。図31は、この記憶システム100における指定障害部位回復処理に関するストレージシステム400の具体的な処理手順を示したフローチャートである。
電源制御管理部581は、初期時、管理端末570から当該異常部位を指定して、回復処理を指示されると、メモリ582に格納されている、管理端末570から指定された障害部位を回復するプログラムである指定障害部位回復プログラムを実行することにより、図31に示す指定障害状態回復処理手順RT7に従って、共通メモリ520に格納されている、図11の部位別障害状態管理テーブル1040を参照して、指定された部位が障害部位であるか否かをチェック(再確認)する(S71)。
そして、電源制御管理部581は、指定された部位が障害部位である場合(S71:YES)には、当該障害部位がディスク制御部540、共通メモリ520又はキャッシュメモリ530であるか否かをチェックする(S72)。
そして、電源制御管理部581は、当該障害部位がディスク制御部540、共通メモリ520又はキャッシュメモリ530である場合(S72:YES)には、当該障害部位にI/O処理が実行されているか否かをチェックする(S73)。具体的に、I/O処理が実行されている場合とは、例えば、当該障害部位にコマンド又はデータが流れている場合等が考えられる。
そして、電源制御管理部581は、当該障害部位にI/O処理が実行されていない場合(S73:NO)には、当該障害部位の交代部位が正常であるか否かをチェックする(S74)。例えば、電源制御管理部581は、図14のディスク制御部−記憶デバイス関係管理テーブル1070に示すような状態のときに、ディスク制御部540−1について回復処理が実行されている場合には、交代部位としてディスク制御部540−2が存在し、動作していることから、当該障害部位の交代部位が正常であると判断する。なお、電源制御管理部581は、図14のディスク制御部−記憶デバイス関係管理テーブル1070のディスク制御部540−2が「△」であり、ワーニング状態であることから、ワーニング状態を交代部位不可能候補とする場合には、当該障害部位の交代部位が異常であると判断する。
これに対して、電源制御管理部581は、当該障害部位がディスク制御部540、共通メモリ520又はキャッシュメモリ530でない場合(S72:NO)には、当該障害部位がチャネル制御部510であるか否かをチェックする(S75)。
そして、電源制御管理部581は、当該障害部位がチャネル制御部510である場合(S75:YES)には、当該障害部位にI/O処理が実行されているか否かをチェックする(S76)。
そして、電源制御管理部581は、当該障害部位にI/O処理が実行されていない場合(S73:NO)には、当該障害部位の交代パスが正常であるか否かをチェックする(S77)。
そして、電源制御管理部581は、当該障害部位の交代パスが正常である場合(S77:YES)、当該障害部位(チャネル制御部510)にI/O処理が実行されている場合(S73:YES)、当該障害部位がチャネル制御部510でない場合(S75:NO)又は当該障害部位(ディスク制御部540、共通メモリ520又はキャッシュメモリ530)の交代部位が正常である場合(S74:YES)には、当該異常部位を閉塞する(S78)。なお、異常部位を閉塞するとは、異常部位の処理機能を完全に停止させ、必要に応じて図16のルート管理テーブル1090を更新することにより、ルート再設定を行うことをいう。
続いて、電源制御管理部581は、メモリ582に格納されている、所定の部位の電源を制御するプログラムである電源制御処理プログラムを実行することにより、図23に示す電源制御処理手順RT2に従って、電源制御処理を実行する(RT2)。なお、電源制御管理部581は、管理端末570から当該異常部位を指定して、「“01”電源再起動」コマンドを受信するため、当該異常部位の電断処理を実行し、その後、電源オン処理を実行する。
続いて、電源制御管理部581は、電源制御処理を実行した場合(RT2)、当該障害部位(チャネル制御部510)の交代パスが正常でない場合(S77:NO)、当該障害部位(ディスク制御部540、共通メモリ520又はキャッシュメモリ530)の交代部位が正常でない場合(S74:NO)、当該障害部位(ディスク制御部540、共通メモリ520又はキャッシュメモリ530)にI/O処理が実行されている場合(S73:YES)又は指定された部位が障害部位でない場合(S71:NO)には、それぞれの結果を記憶し、当該結果を管理端末570に送信する(S79)。
なお、電源制御管理部581は、当該障害部位(チャネル制御部510)の交代パスが正常でない場合(S77:NO)、当該障害部位(ディスク制御部540、共通メモリ520又はキャッシュメモリ530)の交代部位が正常でない場合(S74:NO)、当該障害部位(ディスク制御部540、共通メモリ520又はキャッシュメモリ530)にI/O処理が実行されている場合(S73:YES)又は指定された部位が障害部位でない場合(S71:NO)には、電源制御処理を実行せず、障害部位の回復処理を実行しない。
例えば、当該障害部位(ディスク制御部540)の交代部位が正常でない場合(S74:NO)として、図14のディスク制御部−記憶デバイス関係管理テーブル1070の「状態」が「×」である場合や、当該障害部位(チャネル制御部510)の交代パスが正常でない場合(S77:NO)として、図15のチャネル制御部−ディスク制御部関係管理テーブル1080の「状態」が「×」である場合が考えられる。
やがて、電源制御管理部581は、この後、図31に示す指定障害状態回復処理手順RT7を終了する(S80)。
このようにして、電源制御管理部581は、当該障害部位(ディスク制御部540)にI/O処理が実行されている場合(S73:YES)に、電源制御処理を実行せず、障害部位の回復処理を実行しないことにより、ディスク制御部540同士や他ストレージ装置との非同期動作等の制御矛盾を有効に防止することができる。
また、電源制御管理部581は、当該障害部位がメモリ系(共通メモリ520及びキャッシュメモリ530)の場合には、共有資源であり、他ルートの影響を考慮して、I/O処理が実行されている場合(S73:YES)に、電源制御処理を実行せず、障害部位の回復処理を実行しない。さらに、電源制御管理部581は、I/Oが流れていない場合でも交代部位(2重化された相手)側が正常でなければ、電源制御処理を実行せず、障害部位の回復処理を実行しない。メモリ系は、ストレージシステム400の心臓部と言っても過言でなく、重要な情報と処理をもっているので、回復処理は慎重に実行される。例えば、電源制御管理部581は、メモリ系の交代部位側が超過処理状態であったり、処理可能キャパシティが少なかった場合や、常駐(未処理)コマンド及び常駐(未処理)データが多発し、資源が圧迫された場合は、電源制御処理を実行せず、障害部位の回復処理を実行しない。
なお、電源制御管理部581は、当該障害部位(チャネル制御部510)の交代パスが正常でない場合(S77:NO)、当該障害部位(ディスク制御部540、共通メモリ520又はキャッシュメモリ530)の交代部位が正常でない場合(S74:NO)、当該障害部位(ディスク制御部540、共通メモリ520又はキャッシュメモリ530)にI/O処理が実行されている場合(S73:YES)には、ユーザ(保守員)により、電源制御処理を実行して、障害部位の回復処理を実行するか否かを選択させるようにしても良い。
図28に戻り、続いて、管理端末570は、図31に示す指定障害状態回復処理手順RT7を終了した場合(RT7)には、電源制御管理部581から送信された結果を受信し、ログに記憶し、ログ出力処理を実行する(S46)。なお、管理端末570は、当該異常部位のエラーレベルが「10」である場合(S43:YES)にも、絶対回復不可能として事前に認知されて扱われるので、当該異常部位を指定して、回復処理を電源制御管理部581に指示せずに、ログに記憶し、ログ出力処理を実行する(S46)。
続いて、管理端末570は、閾値のカウントアップ処理を実行する(S47)。この場合、管理端末570は、メモリ(図示せず)内でカウントしている図10の部位別エラー種類管理テーブル1030の当該異常部位のエラー種類の閾値を「1」カウントアップする。
続いて、管理端末570は、異常部位リスト管理テーブル1140のすべての異常部位について、ステップS42〜ステップS47の処理が終了したか否かをチェックする(S48)。そして、管理端末570は、異常部位リスト管理テーブル1140のすべての異常部位について、ステップS42〜ステップS47の処理が終了していない場合(S48:NO)には、ステップS42に戻り、処理した異常部位の次に異常部位リストの高い異常部位に対してエラーレベルが「10」であるか否かをチェックし(S42)、この後、同様の処理を実行する(S43〜S48、S42)。
これに対して、管理端末570は、異常部位リスト管理テーブル1140のすべての異常部位について、ステップS42〜ステップS47の処理が終了した場合(S48:YES)には、異常部位の回復が不可能であるか否かをチェックする(S49)。具体的に、管理端末570は、閾値判定と終了判定を行い、システム正常状態であり、又は閾値超過であり、回復不可能状態になった場合に処理を終了する。また、管理端末570は、システム異常状態で回復可能有状態であり、又は閾値未超過有である場合は、再度、全異常部位を把握からの処理を実施する。
そして、管理端末570は、異常部位の回復が不可能でない場合(S49:NO)には、ステップS42に戻り、テーブル作成・更新処理を実行し(RT1)、この後、同様の処理を実行する(S41〜S49、RT1)。
これに対して、管理端末570は、異常部位の回復が不可能である場合(S49:YES)には、この後、図28に示す障害状態回復処理手順RT5を終了する(S50)。
具体的に、管理端末570は、閾値判定と終了判定を行い、システム正常状態であり、又は閾値超過であり、回復不可能状態になった場合に処理を終了する。また、管理端末570は、システム異常状態で回復可能有状態であり、又は閾値未超過有である場合に、再度、全異常部位を把握からの処理を実施する。
図32は、管理端末570の表示部(図示せず)に表示されるヒューマンインタフェース(H/I)の一例であるメインインフォメーション(Main Information)1200を示している。メインインフォメーション1200は、メニュー1210、ツリー1220、部位情報表示リスト1230及びログ情報表示リスト1240を有している。メニュー1210は、Renew、View、Do、Plan及びDefineを有している。Renewは、任意のタイミングで各種テーブルの更新処理を行う(図22)。Viewは、状態又は情報(図3、4、8、9、11、12、13、14、15)の表示を順次切替える。Doは、障害部位回復処理を行う(図28)。Planは、自動化での属性設定を行う。Defineは、ディファインインフォメーション(Define Information)1250を表示する。
図33は、ディファインインフォメーション1250を示している。ディファインインフォメーション1250には、図10の部位別エラー種類管理テーブル1030が表示される。ディファインインフォメーション1250は、Change及びUndoを有している。Changeは、デフォルト値を変更する。Undoは、デフォルト値に戻す。
ツリー1220は、ストレージシステム400全体を把握できる表示枠である。なお、ツリー1220は、ツリー構造でなく、立体イメージであっても良い。ツリー1220は、図3のような立体イメージを表示して、立体イメージからのGUI(マウス)操作もできる。例えば、管理端末570は、ユーザ(保守員)が対象部分をマウスで選択することで、対象情報が部位情報表示リスト1230や、ログ情報表示リスト1240に、対象部分の情報を表示する。
部位情報表示リスト1230や、ログ情報表示リスト1240の各カラム属性は、必要に応じて追加又は削除することができ、また、任意の選択カラムのソート表示をすることもでき、さらに、カラムを入れ替えて、任意のキーで全体をソート表示もすることもできる。この場合、管理端末570は、ユーザ(保守員)が任意の部位番号をマウスで選択して、師弟障害部位回復処理(図31)を実行することもできる。
メインインフォメーション1200は、管理端末570で動作するWebサーバが提供するWebページとして、遠隔端末300などにより操作することもできる。また、遠隔端末300は、図32のメインインフォメーション1200を呼出し可能とした図34のストレージワールドインフォメーション1300がインストールされており、これにより図32のメインインフォメーション1200を操作することもできる。
ストレージワールドインフォメーション1300は、メニュー1310、ツリー1320、ストレージシステム情報表示リスト1330及びしてストレージ詳細ログ表示リスト1340を有している。ツリー1320は、SAN統合ストレージシステム全体を現すツリー構造か、図2のイメージ図を表示する。ツリー1320は、IPアドレスのブロードキャストやWebページのディスカバリで、SAN統合ストレージシステム内の全ストレージシステム400を認識して表示する。ストレージシステム情報表示リスト1330は、ストレージシステム400単位でストレージ番号、状態、障害レベル及び障害数を表示する。ストレージ詳細ログ表示リスト1340は、タイムスタンプ、部位識別子、部位番号、状態及び対応記録を表示する。メニュー1310は、Renew、View及びDetailを有している。Renewは、情報又は状態の更新を行い、Viewは、表示の切り替えを行い、Detailは、対象のストレージシステム400のメインインフォメーション1200を呼出して、表示する。これにより、SAN統合ストレージシステム全体を制御し、把握することができる記憶システム100となる。
このようにして、記憶システム100では、ユーザ(保守員)が遠隔端末300を操作して、遠隔端末300から指示することにより、ユーザ(保守員)が指定した部位の電断処理を実行し、その後、電源オン処理を実行する。これにより、記憶システム100では、ユーザ(保守員)がストレージシステム400の設置されているサイトに赴くことなく、ユーザ(保守員)が遠隔端末300から指示するだけで、電断処理を実行し、その後、電源オン処理を実行することができ、一段と操作性を向上することができる。
本実施の形態に係る記憶システムの全体構成を示すブロック図である。 本実施の形態に係る他のSAN対応のストレージシステムとの接続構成を示す略線図である。 本実施の形態に係る記憶デバイス制御装置の外観構成図である。 本実施の形態に係るストレージシステムの外観構成図である。 本実施の形態に係る情報処理装置から記憶デバイスまでのルート構成の説明に供する概念図である。 本実施の形態に係る電源ユニットの構成の説明に供する概念図である。 本実施の形態に係る電源制御コマンドフラグ種類の説明に供する概念図である。 本実施の形態に係る電源状態管理テーブルの説明に供する概念図である。 本実施の形態に係る部位別電源状態管理テーブルの説明に供する概念図である。 本実施の形態に係る部位別エラー種類管理テーブルの説明に供する概念図である。 本実施の形態に係る部位別障害状態管理テーブルの説明に供する概念図である。 本実施の形態に係る部位別障害来歴管理テーブルの説明に供する概念図である。 本実施の形態に係る部位別障害履歴管理テーブルの説明に供する概念図である。 本実施の形態に係るディスク制御部−記憶デバイス関係管理テーブルの説明に供する概念図である。 本実施の形態に係るチャネル制御部−ディスク制御部関係管理テーブルの説明に供する概念図である。 本実施の形態に係るルート管理テーブルの説明に供する概念図である。 本実施の形態に係る実際のデータ及びコマンドの流れ道の説明に供する概念図である。 本実施の形態に係る共有空間における処理概要の説明に供する概念図である。 本実施の形態に係るスタック管理テーブルの説明に供する概念図である。 本実施の形態に係るスタック処理時間管理テーブルの説明に供する概念図である。 本実施の形態に係るコマンド処理確率管理テーブルの説明に供する概念図である。 本実施の形態に係るテーブル作成・更新処理の説明に供するフローチャートである。 本実施の形態に係る電源制御処理の説明に供するフローチャートである。 本実施の形態に係る電源オン処理の説明に供するフローチャートである。 本実施の形態に係る電断処理の説明に供するフローチャートである。 本実施の形態に係る部位別の障害の重みの割合の説明に供する概念図である。 本実施の形態に係るルート障害重み関係管理テーブルの説明に供する概念図である。 本実施の形態に係る障害部位回復処理の説明に供するフローチャートである。 本実施の形態に係る異常部位リスト管理テーブルの説明に供する概念図である。 本実施の形態に係る異常部位リスト管理テーブル調整処理の説明に供するフローチャートである。 本実施の形態に係る指定障害部位回復処理の説明に供するフローチャートである。 本実施の形態に係るメインインフォメーションの説明に供する概念図である。 本実施の形態に係るディファインインフォメーションの説明に供する概念図である。 本実施の形態に係るストレージワールドインフォメーションの説明に供する概念図である。
符号の説明
100……記憶システム、200……情報処理装置、300……遠隔端末、400、410、420……ストレージシステム、500……記憶デバイス制御装置、510…チャネル制御部、520……共通メモリ、530……キャッシュメモリ、540……ディスク制御部、550……内部LAN、560……冷却部、570……管理端末、580……電源ユニット、581……電源制御管理部、582……メモリ、583……電源制御部、584……電源供給部、585……電源部、586……バッテリ、587……制御ライン、589……電力供給ライン、600……記憶デバイス、700……LAN、800……SAN、1000……電源制御コマンドフラグ種類、1010……電源状態管理テーブル、1020……部位別電源状態管理テーブル、1030……部位別エラー種類管理テーブル、1040……部位別障害状態管理テーブル、1050……部位別障害来歴管理テーブル、1060……部位別障害履歴管理テーブル、1070……ディスク制御部−記憶デバイス関係管理テーブル、1080……チャネル制御部−ディスク制御部関係管理テーブル、1090……ルート管理テーブル、1100……スタック管理テーブル、1110……スタック処理時間管理テーブル、1120……コマンド処理確率管理テーブル、1130……ルート障害重み関係管理テーブル、1140……異常部位リスト管理テーブル、1200……メインインフォメーション、1250……ディファインインフォメーション、1300……ストレージワールドインフォメーション

Claims (10)

  1. 情報処理装置から送信されるデータを転送し、又は格納する複数の部位を有するストレージシステムにおいて、
    前記複数の部位のうち、障害が発生している部位を通知する障害通知部と、
    前記障害通知部により障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する電源切替指示部と、
    前記電源切替指示部の指示に従って、前記障害が発生している部位の電源をオフに切り替え、その後、オンに切り替える電源切替部と
    を備えることを特徴とするストレージシステム。
  2. 前記電源切替指示部は、
    遠隔からの操作に基づいて、前期障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する
    ことを特徴とする請求項1に記載のストレージシステム。
  3. 前記電源切替指示部は、
    前記障害が発生していると通知された部位のうち、障害を回復する優先度の高い順に、前期障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する
    ことを特徴とする請求項1に記載のストレージシステム。
  4. 前記電源切替指示部は、
    前記情報処理装置から前記データを格納する部位までの部位のルートを複数設定し、ルート障害重み量算出式により算出されるルート障害重み量の高い順に、前期障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する
    ことを特徴とする請求項1に記載のストレージシステム。
  5. 前記電源切替指示部は、
    キャッシュメモリ、共有メモリ、ディスク制御部、チャネル制御部の順で、前期障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する
    ことを特徴とする請求項1に記載のストレージシステム。
  6. 情報処理装置から送信されるデータを転送し、又は格納する複数の部位を有するストレージシステムの電源制御方法において、
    前記複数の部位のうち、障害が発生している部位を通知する第1のステップと、
    前記第1のステップにおいて障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する第2のステップと、
    前記第2のステップにおける指示に従って、前記障害が発生している部位の電源をオフに切り替え、その後、オンに切り替える第3のステップと
    を備えることを特徴とするストレージシステムの電源制御方法。
  7. 前記第2のステップでは、
    遠隔からの操作に基づいて、前期障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する
    ことを特徴とする請求項6に記載のストレージシステムの電源制御方法。
  8. 前記第2のステップでは、
    前記障害が発生していると通知された部位のうち、障害を回復する優先度の高い順に、前期障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する
    ことを特徴とする請求項6に記載のストレージシステムの電源制御方法。
  9. 前記第2のステップでは、
    前記情報処理装置から前記データを格納する部位までの部位のルートを複数設定し、ルート障害重み量算出式により算出されるルート障害重み量の高い順に、前期障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する
    ことを特徴とする請求項6に記載のストレージシステムの電源制御方法。
  10. 前記第2のステップでは、
    キャッシュメモリ、共有メモリ、ディスク制御部、チャネル制御部の順で、前期障害が発生していると通知された部位の電源のオフ及びオンの切替を指示する
    ことを特徴とする請求項6に記載のストレージシステムの電源制御方法。
JP2006118375A 2006-04-21 2006-04-21 ストレージシステム及びその電源制御方法 Pending JP2007293448A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006118375A JP2007293448A (ja) 2006-04-21 2006-04-21 ストレージシステム及びその電源制御方法
US11/472,410 US7536576B2 (en) 2006-04-21 2006-06-22 Storage apparatus and power supply control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006118375A JP2007293448A (ja) 2006-04-21 2006-04-21 ストレージシステム及びその電源制御方法

Publications (1)

Publication Number Publication Date
JP2007293448A true JP2007293448A (ja) 2007-11-08

Family

ID=38620844

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006118375A Pending JP2007293448A (ja) 2006-04-21 2006-04-21 ストレージシステム及びその電源制御方法

Country Status (2)

Country Link
US (1) US7536576B2 (ja)
JP (1) JP2007293448A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010128985A (ja) * 2008-11-28 2010-06-10 Hitachi Ltd ストレージ管理サーバ、ストレージ構成の再配置方法
US7962781B2 (en) 2008-06-17 2011-06-14 Fujitsu Limited Control method for information storage apparatus, information storage apparatus and computer readable information recording medium
WO2012081071A1 (ja) * 2010-12-13 2012-06-21 株式会社 日立製作所 ストレージ装置及びストレージ装置の電源障害検出方法
US8572428B2 (en) 2010-12-20 2013-10-29 Fujitsu Limited Storage apparatus and control method for storage apparatus
WO2014132373A1 (ja) * 2013-02-28 2014-09-04 株式会社 日立製作所 ストレージシステム及び記憶デバイス障害回復方法
US9244773B2 (en) 2012-09-28 2016-01-26 Fujitsu Limited Apparatus and method for handling abnormalities occurring during startup

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8237447B2 (en) * 2007-05-11 2012-08-07 Panasonic Ev Energy Co., Ltd. Apparatus for detecting state of storage device
JP4819778B2 (ja) * 2007-11-05 2011-11-24 株式会社バッファロー ネットワーク接続型デバイスおよびプログラム
JP5379988B2 (ja) * 2008-03-28 2013-12-25 株式会社日立製作所 ストレージシステム
JP4802207B2 (ja) * 2008-04-23 2011-10-26 株式会社日立製作所 情報処理システムの制御方法、情報処理システム、およびプログラム
US8205116B2 (en) * 2009-02-18 2012-06-19 At&T Intellectual Property I, L.P. Common chronics resolution management
JP4806084B1 (ja) * 2010-05-28 2011-11-02 株式会社東芝 情報処理装置
US8392756B2 (en) * 2010-06-17 2013-03-05 Hitachi, Ltd. Storage apparatus and method of detecting power failure in storage apparatus
JP5545108B2 (ja) * 2010-08-04 2014-07-09 富士通株式会社 ストレージシステム、制御装置および制御方法
US8468385B1 (en) * 2010-10-27 2013-06-18 Netapp, Inc. Method and system for handling error events
US8566637B1 (en) * 2010-12-23 2013-10-22 Emc Corporation Analyzing drive errors in data storage systems
US9026629B2 (en) * 2010-12-30 2015-05-05 Broadcom Corporation Graceful out-of-band power control of remotely-managed computer systems
US8738583B2 (en) * 2011-02-09 2014-05-27 Cisco Technology, Inc. Efficiently delivering event messages using compiled indexing and paginated reporting
FR2974647B1 (fr) * 2011-04-26 2013-04-26 Bull Sas Dispositif de reperage pour reperer une armoire informatique parmi une pluralite d'armoires informatiques
US9965365B2 (en) * 2013-12-31 2018-05-08 Lite-On, Inc. Power supply failover system and method
US20160092310A1 (en) * 2014-09-30 2016-03-31 Vivint, Inc. Systems and methods for managing globally distributed remote storage devices
JP6787239B2 (ja) * 2017-04-25 2020-11-18 横河電機株式会社 制御装置、制御方法、及び制御プログラム
US11336509B2 (en) * 2018-10-31 2022-05-17 EMC IP Holding Company LLC Detecting single points of failure on a storage system
US20210349782A1 (en) * 2020-05-11 2021-11-11 Samsung Electronics Co., Ltd. Systems, methods, and devices for fault resilient storage
US12014637B2 (en) * 2022-05-20 2024-06-18 The Boeing Company Prioritizing crew alerts

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69925104T2 (de) * 1998-08-28 2005-09-22 Matsushita Electric Industrial Co., Ltd., Kadoma Schaltregler und lsi-system
US6959399B2 (en) * 2001-09-24 2005-10-25 International Business Machines Corporation Selective automated power cycling of faulty disk in intelligent disk array enclosure for error recovery
US7035972B2 (en) * 2002-09-03 2006-04-25 Copan Systems, Inc. Method and apparatus for power-efficient high-capacity scalable storage system
JP2004227098A (ja) 2003-01-20 2004-08-12 Hitachi Ltd 記憶デバイス制御装置の制御方法、及び記憶デバイス制御装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7962781B2 (en) 2008-06-17 2011-06-14 Fujitsu Limited Control method for information storage apparatus, information storage apparatus and computer readable information recording medium
JP2010128985A (ja) * 2008-11-28 2010-06-10 Hitachi Ltd ストレージ管理サーバ、ストレージ構成の再配置方法
WO2012081071A1 (ja) * 2010-12-13 2012-06-21 株式会社 日立製作所 ストレージ装置及びストレージ装置の電源障害検出方法
US8677181B2 (en) 2010-12-13 2014-03-18 Hitachi, Ltd. Storage apparatus and method of detecting power failure in storage apparatus
JP5634528B2 (ja) * 2010-12-13 2014-12-03 株式会社日立製作所 ストレージ装置及びストレージ装置の電源障害検出方法
US8572428B2 (en) 2010-12-20 2013-10-29 Fujitsu Limited Storage apparatus and control method for storage apparatus
US9244773B2 (en) 2012-09-28 2016-01-26 Fujitsu Limited Apparatus and method for handling abnormalities occurring during startup
WO2014132373A1 (ja) * 2013-02-28 2014-09-04 株式会社 日立製作所 ストレージシステム及び記憶デバイス障害回復方法

Also Published As

Publication number Publication date
US7536576B2 (en) 2009-05-19
US20070250723A1 (en) 2007-10-25

Similar Documents

Publication Publication Date Title
JP2007293448A (ja) ストレージシステム及びその電源制御方法
JP4165747B2 (ja) 記憶システム、制御装置及び制御装置のプログラム
JP4900784B2 (ja) ストレージシステム及びストレージシステムのデータ移行方法
JP3964212B2 (ja) 記憶装置システム
US7360047B2 (en) Storage system, redundancy control method, and program
JP4786312B2 (ja) 記憶制御装置及び記憶制御装置のエラー情報管理方法
US7809983B2 (en) Storage system that finds occurrence of power source failure
JP5179031B2 (ja) 空きポートを有効に活用したストレージシステム
US7865767B2 (en) Storage system and method for copying data to plurality of sites
EP1662392A2 (en) Identifying the extent that a fault on a storage device has to a replication process involving said device
JP4920979B2 (ja) ストレージ装置及びその制御方法
JP2005157521A (ja) 遠隔記憶装置の状態情報監視方法および記憶サブシステム
JP2006178811A (ja) ストレージシステム及びストレージシステムのパス制御方法
JP2006107151A (ja) ストレージシステム及びストレージシステムの通信パス制御方法
JP2004234558A (ja) 記憶デバイス制御装置、及びプログラム
JP2006107080A (ja) ストレージ装置システム
JP2004234555A (ja) ストレージシステムの制御方法、ストレージシステム、及びプログラム
US7886186B2 (en) Storage system and management method for the same
JP2005267111A (ja) 記憶制御システム及び記憶制御システムの制御方法
JP6810341B2 (ja) 管理装置、情報処理システムおよび管理プログラム
WO2017081748A1 (ja) ストレージシステム、及び、ストレージ管理方法
JP2012128573A (ja) 二重化システムおよびそのシステムを用いたビル管理システム
CN101889269A (zh) 独立的驱动器功率控制器
JP2004227096A (ja) 記憶デバイス制御装置、及び記憶デバイス制御装置用回路基板
JP2008033967A (ja) 外部記憶装置及び外部記憶装置のデータ回復方法並びにプログラム