JP4483947B2 - 入出力制御装置 - Google Patents

入出力制御装置 Download PDF

Info

Publication number
JP4483947B2
JP4483947B2 JP2008007618A JP2008007618A JP4483947B2 JP 4483947 B2 JP4483947 B2 JP 4483947B2 JP 2008007618 A JP2008007618 A JP 2008007618A JP 2008007618 A JP2008007618 A JP 2008007618A JP 4483947 B2 JP4483947 B2 JP 4483947B2
Authority
JP
Japan
Prior art keywords
input
output unit
state
adapter
data
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.)
Expired - Fee Related
Application number
JP2008007618A
Other languages
English (en)
Other versions
JP2009169708A (ja
Inventor
一也 本間
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2008007618A priority Critical patent/JP4483947B2/ja
Priority to US12/354,636 priority patent/US8151049B2/en
Publication of JP2009169708A publication Critical patent/JP2009169708A/ja
Application granted granted Critical
Publication of JP4483947B2 publication Critical patent/JP4483947B2/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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • G06F11/2092Techniques of failing over between control units
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • G06F11/201Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media between storage system components

Landscapes

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

Description

本発明は、外部装置との間でデータを授受する入出力ユニットを複数備える入出力制御装置に関する。
ホスト装置と、ディスクアレイユニットと、に接続される入出力制御装置(例えば、ディスクアレイユニットを制御するディスクアレイコントローラ)が知られている。この入出力制御装置は、ホスト装置と接続されることによりホスト装置との間でデータを授受する第1の入出力ユニットと、ディスクアレイユニットと接続されることによりディスクアレイユニットとの間でデータを授受する第2の入出力ユニットと、を備える。
このような構成により、入出力制御装置は、ホスト装置及びディスクアレイユニットの一方からのデータを受け取り、受け取ったデータをホスト装置及びディスクアレイユニットの他方へ送る。更に、この種の入出力制御装置の一つとして、特許文献1に記載の入出力制御装置は、ホスト装置との間でデータを授受するためにホスト装置と接続された第3の入出力ユニットと、ディスクアレイユニットとの間でデータを授受するためにディスクアレイユニットと接続された第4の入出力ユニットと、を更に備える(例えば、特許文献1を参照)。
特開2005−4791号公報
従って、この入出力制御装置によれば、第1の入出力ユニットが異常状態になった(障害が発生した)場合であっても、第3の入出力ユニットを用いることによりホスト装置との間でデータを授受することができる。また、第2の入出力ユニットが異常状態になった場合であっても、第4の入出力ユニットを用いることによりディスクアレイユニットとの間でデータを授受することができる。このように、この入出力制御装置によれば、第1の入出力ユニット及び第2の入出力ユニットのいずれが異常状態になった場合であっても、ホスト装置との間のデータの授受及びディスク装置との間のデータの授受の双方を維持する(冗長性を確保する)ことができる。
しかしながら、上記入出力制御装置によれば、冗長性を確保するためには、少なくとも2つの予備の入出力ユニットを用意する必要があった。従って、入出力制御装置が備える入出力ユニットの数が過度に多いという問題があった。
このため、本発明の目的は、上述した課題である「冗長性を確保するための入出力ユニットの数が過度に多くなること」を解決することが可能な入出力制御装置を提供することにある。
かかる目的を達成するため本発明の一形態である入出力制御装置は、
第1の外部装置及び第2の外部装置の一方からのデータを受け取るとともにその受け取ったデータを当該第1の外部装置及び当該第2の外部装置の他方へ送る装置である。
更に、この入出力制御装置は、
上記第1の外部装置との間で上記データを授受する第1の入出力ユニットと、
上記第2の外部装置との間で上記データを授受する第2の入出力ユニットと、
上記第1の外部装置との間で上記データを授受する第1の作動状態と、上記第2の外部装置との間で上記データを授受する第2の作動状態と、を含む複数の作動状態のうちの1つに作動状態を設定可能な第3の入出力ユニットと、
上記第1の入出力ユニット又は上記第2の入出力ユニットが異常状態にあることを検出する異常状態検出手段と、
上記第1の入出力ユニットが異常状態にあることが上記異常状態検出手段により検出された場合に上記第3の入出力ユニットの作動状態を上記第1の作動状態に設定し、一方、上記第2の入出力ユニットが異常状態にあることが上記異常状態検出手段により検出された場合に当該第3の入出力ユニットの作動状態を上記第2の作動状態に設定する作動状態設定手段と、を備える。
また、本発明の他の形態であるディスクアレイ装置は、
書込データを記憶するとともに、当該記憶している書込データを読込データとして出力するディスクアレイユニットを備えるとともに、
上記書込データを出力し且つ上記読込データを入力するホスト装置及び上記ディスクアレイユニットの一方からの上記書込データ又は上記読込データであるデータを受け取るとともにその受け取ったデータを当該ホスト装置及び当該ディスクアレイユニットの他方へ送る装置である。
更に、このディスクアレイ装置は、
上記ディスクアレイユニットとの間で上記データを授受する第1の入出力ユニットと、
上記ホスト装置との間で上記データを授受する第2の入出力ユニットと、
上記ディスクアレイユニットとの間で上記データを授受する第1の作動状態と、上記ホスト装置との間で上記データを授受する第2の作動状態と、を含む複数の作動状態のうちの1つに作動状態を設定可能な第3の入出力ユニットと、
上記第1の入出力ユニット又は上記第2の入出力ユニットが異常状態にあることを検出する異常状態検出手段と、
上記第1の入出力ユニットが異常状態にあることが上記異常状態検出手段により検出された場合に上記第3の入出力ユニットの作動状態を上記第1の作動状態に設定し、一方、上記第2の入出力ユニットが異常状態にあることが上記異常状態検出手段により検出された場合に当該第3の入出力ユニットの作動状態を上記第2の作動状態に設定する作動状態設定手段と、を備える。
また、本発明の他の形態である入出力制御方法は、
第1の外部装置との間でデータを授受する第1の入出力ユニットと、第2の外部装置との間でデータを授受する第2の入出力ユニットと、を備えるとともに、前記第1の外部装置及び前記第2の外部装置の一方からのデータを受け取るとともにその受け取ったデータを当該第1の外部装置及び当該第2の外部装置の他方へ送る入出力制御装置を制御するための方法である。
更に、この入出力制御方法は、
前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることを検出する異常状態検出工程と、
前記第1の入出力ユニットが異常状態にあることが前記異常状態検出工程により検出された場合に第3の入出力ユニットの作動状態を前記第1の外部装置との間で前記データを授受する第1の作動状態に設定し、一方、前記第2の入出力ユニットが異常状態にあることが前記異常状態検出工程により検出された場合に当該第3の入出力ユニットの作動状態を前記第2の外部装置との間で前記データを授受する第2の作動状態に設定する作動状態設定工程と、を含む。
本発明は、以上のように構成されることにより、冗長性を確保するための入出力ユニットの数を少なくすることができる。
本発明の一形態である入出力制御装置は、
第1の外部装置及び第2の外部装置の一方からのデータを受け取るとともにその受け取ったデータを当該第1の外部装置及び当該第2の外部装置の他方へ送る装置である。
更に、この入出力制御装置は、
上記第1の外部装置との間で上記データを授受する第1の入出力ユニットと、
上記第2の外部装置との間で上記データを授受する第2の入出力ユニットと、
上記第1の外部装置との間で上記データを授受する第1の作動状態と、上記第2の外部装置との間で上記データを授受する第2の作動状態と、を含む複数の作動状態のうちの1つに作動状態を設定可能な第3の入出力ユニットと、
上記第1の入出力ユニット又は上記第2の入出力ユニットが異常状態にあることを検出する異常状態検出手段と、
上記第1の入出力ユニットが異常状態にあることが上記異常状態検出手段により検出された場合に上記第3の入出力ユニットの作動状態を上記第1の作動状態に設定し、一方、上記第2の入出力ユニットが異常状態にあることが上記異常状態検出手段により検出された場合に当該第3の入出力ユニットの作動状態を上記第2の作動状態に設定する作動状態設定手段と、を備える。
これによれば、第1の入出力ユニットが異常状態になった場合、第3の入出力ユニットの作動状態が、第1の外部装置との間でデータを授受する第1の作動状態に設定される。一方、第2の入出力ユニットが異常状態になった場合、第3の入出力ユニットの作動状態が、第2の外部装置との間でデータを授受する第2の作動状態に設定される。
これにより、第3の入出力ユニットは、異常状態になった入出力ユニットとの間でデータを授受していた外部装置との間でデータを授受することができる。この結果、入出力ユニットが異常状態になってから、入出力制御装置が第1の外部装置及び第2の外部装置の双方との間でデータを正常に授受できるようになるまでの時間を十分に短くすることができる。
更に、第1の外部装置との間でデータを授受するための予備の入出力ユニットと、第2の外部装置との間でデータを授受するための予備の入出力ユニットと、の2つの入出力ユニットを用意する場合よりも、予備の(即ち、冗長性を確保するための)入出力ユニットの数を少なくすることもできる。
この場合、上記複数の作動状態は、上記第1の入出力ユニット又は上記第2の入出力ユニットが異常状態にあることを検出する第3の作動状態を含み、
上記異常状態検出手段は、上記第3の作動状態にて作動する上記第3の入出力ユニットからなることが好適である。
これによれば、第3の入出力ユニットが第3の作動状態にて作動している間に、第3の入出力ユニットは、第1の入出力ユニット又は第2の入出力ユニットが異常状態にあることを検出する。従って、第1の入出力ユニット又は第2の入出力ユニットが異常状態にあることを検出する装置を別途設ける必要がないので、入出力制御装置の製造コストを低減することができる。
更に、この場合、上記作動状態設定手段は、
上記第3の入出力ユニットと上記第1の外部装置とを接続する第1の接続状態と、当該第3の入出力ユニットと上記第2の外部装置とを接続する第2の接続状態と、を含む複数の接続状態の1つに接続状態を設定可能な切替器を含むとともに、
上記切替器の接続状態を上記第1の接続状態に設定することにより上記第3の入出力ユニットの作動状態を上記第1の作動状態に設定し、一方、当該切替器の接続状態を上記第2の接続状態に設定することにより当該第3の入出力ユニットの作動状態を上記第2の作動状態に設定するように構成されることが好適である。
加えて、この場合、上記作動状態設定手段は、上記第3の入出力ユニットが起動時に実行する処理を変更することにより当該第3の入出力ユニットの上記作動状態を変更するように構成され、且つ、上記第1の入出力ユニット又は上記第2の入出力ユニットが異常状態にある場合に当該第3の入出力ユニットを再起動するように構成されることが好適である。
更に、この場合、
上記第1の入出力ユニットは、上記切替器を介して上記第1の外部装置と接続されることにより当該第1の外部装置との間で上記データを授受するように構成され、
上記第2の入出力ユニットは、上記切替器を介して上記第2の外部装置と接続されることにより当該第2の外部装置との間で上記データを授受するように構成され、
上記第1の接続状態は、上記第1の入出力ユニットと上記第1の外部装置との接続を解除し、且つ、上記第3の入出力ユニットと当該第1の外部装置とを接続する状態であり、
上記第2の接続状態は、上記第2の入出力ユニットと上記第2の外部装置との接続を解除し、且つ、上記第3の入出力ユニットと当該第2の外部装置とを接続する状態であることが好適である。
これによれば、第1の入出力ユニットが異常状態となった場合には第1の入出力ユニットと第1の外部装置との間の接続が解除され、一方、第2の入出力ユニットが異常状態となった場合には第2の入出力ユニットと第2の外部装置との間の接続が解除される。従って、新たに接続された第3の入出力ユニットと外部装置(第1の外部装置又は第2の外部装置)との間のデータの授受をより確実に行うことができる。
加えて、この場合、
上記作動状態設定手段は、上記切替器を複数含むとともに、
上記切替器の1つである使用切替器が異常状態にあることを検出する切替器異常状態検出手段と、
上記使用切替器が異常状態にあることが上記切替器異常状態検出手段により検出された場合、当該使用切替器を介して接続されている上記入出力ユニット及び上記外部装置を、上記複数の切替器のうちの当該使用切替器以外の切替器を介して接続する切替器変更手段と、を備えることが好適である。
これによれば、使用切替器が異常状態になった場合であっても、その他の切替器を介して入出力ユニットと外部装置とが接続される。これにより、入出力ユニットと外部装置との間でデータを授受することができる。この結果、使用切替器が異常状態になってから、第1の外部装置及び第2の外部装置の双方との間でデータを正常に授受できるようになるまでの時間を十分に短くすることができる。
更に、この場合、
上記第1の外部装置は、上記データとしての書込データを上記第2の外部装置へ送るとともに当該第2の外部装置からの上記データとしての読込データを受け取るホスト装置であり、
上記第2の外部装置は、上記第1の外部装置からの上記書込データを記憶するとともに、当該記憶している書込データを上記読込データとして当該第1の外部装置へ送るディスクアレイユニットであることが好適である。
互いにデータを授受するディスクアレイユニット及びホスト装置は、稼働され続けることが多い。従って、上述した入出力制御装置を、ディスクアレイユニット及びホスト装置の間のデータの授受を制御する装置として用いることにより、ディスクアレイユニット及びホスト装置の間のデータの授受を確実に行うことができる。
また、本発明の他の形態であるディスクアレイ装置は、
書込データを記憶するとともに、当該記憶している書込データを読込データとして出力するディスクアレイユニットを備えるとともに、
上記書込データを出力し且つ上記読込データを入力するホスト装置及び上記ディスクアレイユニットの一方からの上記書込データ又は上記読込データであるデータを受け取るとともにその受け取ったデータを当該ホスト装置及び当該ディスクアレイユニットの他方へ送る装置である。
更に、このディスクアレイ装置は、
上記ディスクアレイユニットとの間で上記データを授受する第1の入出力ユニットと、
上記ホスト装置との間で上記データを授受する第2の入出力ユニットと、
上記ディスクアレイユニットとの間で上記データを授受する第1の作動状態と、上記ホスト装置との間で上記データを授受する第2の作動状態と、を含む複数の作動状態のうちの1つに作動状態を設定可能な第3の入出力ユニットと、
上記第1の入出力ユニット又は上記第2の入出力ユニットが異常状態にあることを検出する異常状態検出手段と、
上記第1の入出力ユニットが異常状態にあることが上記異常状態検出手段により検出された場合に上記第3の入出力ユニットの作動状態を上記第1の作動状態に設定し、一方、上記第2の入出力ユニットが異常状態にあることが上記異常状態検出手段により検出された場合に当該第3の入出力ユニットの作動状態を上記第2の作動状態に設定する作動状態設定手段と、を備える。
この場合、上記複数の作動状態は、上記第1の入出力ユニット又は上記第2の入出力ユニットが異常状態にあることを検出する第3の作動状態を含み、
上記異常状態検出手段は、上記第3の作動状態にて作動する上記第3の入出力ユニットからなることが好適である。
更に、この場合、上記作動状態設定手段は、
上記第3の入出力ユニットと上記ディスクアレイユニットとを接続する第1の接続状態と、当該第3の入出力ユニットと上記ホスト装置とを接続する第2の接続状態と、を含む複数の接続状態の1つに接続状態を設定可能な切替器を含むとともに、
上記切替器の接続状態を上記第1の接続状態に設定することにより上記第3の入出力ユニットの作動状態を上記第1の作動状態に設定し、一方、当該切替器の接続状態を上記第2の接続状態に設定することにより当該第3の入出力ユニットの作動状態を上記第2の作動状態に設定するように構成されることが好適である。
加えて、この場合、上記作動状態設定手段は、上記第3の入出力ユニットが起動時に実行するプログラムを変更することにより当該第3の入出力ユニットの上記作動状態を変更するように構成され、且つ、上記第1の入出力ユニット又は上記第2の入出力ユニットが異常状態にある場合に当該第3の入出力ユニットを再起動するように構成されることが好適である。
また、本発明の他の形態である入出力制御方法は、
第1の外部装置との間でデータを授受する第1の入出力ユニットと、第2の外部装置との間でデータを授受する第2の入出力ユニットと、を備えるとともに、前記第1の外部装置及び前記第2の外部装置の一方からのデータを受け取るとともにその受け取ったデータを当該第1の外部装置及び当該第2の外部装置の他方へ送る入出力制御装置を制御するための方法である。
更に、この入出力制御方法は、
前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることを検出する異常状態検出工程と、
前記第1の入出力ユニットが異常状態にあることが前記異常状態検出工程により検出された場合に第3の入出力ユニットの作動状態を前記第1の外部装置との間で前記データを授受する第1の作動状態に設定し、一方、前記第2の入出力ユニットが異常状態にあることが前記異常状態検出工程により検出された場合に当該第3の入出力ユニットの作動状態を前記第2の外部装置との間で前記データを授受する第2の作動状態に設定する作動状態設定工程と、を含む。
この場合、上記作動状態設定工程は、上記第3の入出力ユニットを、上記第1の入出力ユニット又は上記第2の入出力ユニットが異常状態にあることを検出する第3の作動状態に設定する工程を含むことが好適である。
上述した構成を有するディスクアレイ装置及び入出力制御方法の発明であっても、上記入出力制御装置と同様の作用を有するために、上述した本発明の目的を達成することができる。
以下、本発明に係る、入出力制御方法を用いる入出力制御装置及びディスクアレイ装置の各実施形態について図1〜図20を参照しながら説明する。
<第1実施形態>
図1に示したように、第1実施形態に係るディスクアレイ装置1は、ホスト装置(第1の外部装置)2と接続されている。
ホスト装置2は、図示しないバスを介して互いに接続された中央処理装置(本例では、CPU)、記憶装置(本例では、メモリ)、通信装置及びインターフェース部を含む。通信装置は、図示しない通信回線を介して複数の端末装置と接続されていて、それらの端末装置との間でデータを授受する。インターフェース部は、ディスクアレイ装置1(後述する入出力制御装置20)との間でデータを授受するための、第1ポート2a及び第2ポート2bを含む。
ホスト装置2は、端末装置からのデータに基づいて書込データを生成し、生成した書込データを含む書込要求情報をディスクアレイ装置1へ送る(出力する)。更に、書込要求情報は、書込データに加えて、ファイルシステム内の書込ファイル(例えば、ルートディレクトリからのパスを含むファイル名)を表す書込ファイル情報と、書込データをその書込ファイルに書き込む(書き出す)ことを要求する旨を表す要求情報と、を含む。
一方、ホスト装置2は、端末装置からのデータに基づいて読込要求情報をディスクアレイ装置1へ送る。ここで、読込要求情報は、ファイルシステム内の読込ファイル(例えば、ルートディレクトリからのパスを含むファイル名)を表す読込ファイル情報と、その読込ファイル内のデータを読み込む(読み出す)ことを要求する旨を表す要求情報と、を含む。更に、ホスト装置2は、読込要求情報に応じてディスクアレイ装置1から送られてくる情報であって読込データを含む情報である読込完了情報を受け取る(入力する)。
ディスクアレイ装置1は、RAID(Redundant Arrays of Inexpensive Disks)を構成する装置である。ディスクアレイ装置1は、ディスクアレイユニット(第2の外部装置)10と、入出力制御装置20と、を備える。
ディスクアレイユニット10は、入出力制御装置20との間でデータを授受するための、第1ポート10a及び第2ポート10bを含むインターフェース部を備える。更に、ディスクアレイユニット10は、複数(本例では、16個)のハードディスク装置(HDD)10c1〜10c16を有する。各HDD10c1〜10c16は、第1ポート10a及び第2ポート10bのそれぞれと接続されている。
ディスクアレイユニット10は、第1ポート10a又は第2ポート10bを介して入出力制御装置20から書込指示情報を受け取る。ここで、書込指示情報は、HDD10c1〜10c16毎の書込領域(セクタ等)を表すディスク毎書込領域情報と、各HDD10c1〜10c16用のディスク毎書込データと、を含む。
ディスクアレイユニット10は、受け取った書込指示情報に基づいて各HDD10c1〜10c16にデータを記憶させる。具体的には、ディスクアレイユニット10は、ディスク毎書込領域情報が表すHDD10c1〜10c16毎の書込領域にて、そのHDD10c1〜10c16用のディスク毎書込データをそのHDD10c1〜10c16に記憶させる(格納する、書き込む)。
ディスクアレイユニット10は、第1ポート10a又は第2ポート10bを介して入出力制御装置20から読込指示情報を受け取る。ここで、読込指示情報は、HDD10c1〜10c16毎の読込領域(セクタ等)を表すディスク毎読込領域情報を含む。
ディスクアレイユニット10は、受け取った読込指示情報に基づいて各HDD10c1〜10c16からディスク毎読込データを読み込む(読み出す)。具体的には、ディスクアレイユニット10は、ディスク毎読込領域情報が表すHDD10c1〜10c16毎の読込領域にて、そのHDD10c1〜10c16に記憶(格納)されているディスク毎書込データをディスク毎読込データとして読み込む。
ディスクアレイユニット10は、各HDD10c1〜10c16から読み込んだディスク毎読込データを含むディスク毎読込完了情報を入出力制御装置20へ送る(出力する)。
入出力制御装置20は、第1ホスト側ポート20a1と、第1ディスク側ポート20b1と、第2ホスト側ポート20a2と、第2ディスク側ポート20b2と、を含むインターフェース部を備える。第1ホスト側ポート20a1は、ホスト装置2の第1ポート2aと接続されている。第2ホスト側ポート20a2は、ホスト装置2の第2ポート2bと接続されている。第1ディスク側ポート20b1は、ディスクアレイユニット10の第1ポート10aと接続されている。第2ディスク側ポート20b2は、ディスクアレイユニット10の第2ポート10bと接続されている。
インターフェース部は、第1ホスト側ポート20a1又は第2ホスト側ポート20a2を介してホスト装置2との間でデータを授受する。更に、インターフェース部は、第1ディスク側ポート20b1又は第2ディスク側ポート20b2を介してディスクアレイユニット10との間でデータを授受する。
更に、入出力制御装置20は、第1切替器21と、第2切替器22と、複数(本例では、6つ)のアダプタ(入出力ユニット)23A〜23Fと、共有メモリ24と、を備える。
第1切替器21は、複数(本例では、5つ)の端子21a1〜21a5を有する。第1切替器21は、アダプタ23A〜23Cからの接続指示信号に応答して、端子21a1〜21a5のうちの任意の2つの端子を電気的に接続する。一方、第1切替器21は、アダプタ23A〜23Cからの解除指示信号に応答して、接続されている2つの端子間の接続を解除(遮断)する。
加えて、第2切替器22も、第1切替器21と同様に複数(本例では、5つ)の端子22a1〜22a5を有する。第2切替器22も、第1切替器21と同様に、接続指示信号に応答して2つの端子を接続するとともに、解除指示信号に応答して接続されている2つの端子間の接続を解除する。
図2に示したように、アダプタ23Aは、バスを介して互いに接続された中央処理装置(本例では、CPU)23A1、記憶装置(本例では、メモリ)23A2及びインターフェース部23A3を備える。
メモリ23A2には、後述する図3,5〜9に示した各プログラムからなる、起動用プログラムP1、ホストモード用プログラムP2、ディスクモード用プログラムP3、及び、スペアモード用プログラムP4、が予め記憶(格納)されている。
インターフェース部23A3は、第1切替器21の端子21a3及び共有メモリ24のそれぞれと接続されている。これにより、インターフェース部23A3は、第1切替器21の端子21a3及び共有メモリ24のそれぞれとの間でデータ(指示信号、要求情報及び指示情報等を含む)を授受する。
また、インターフェース部23A3は、状態確認信号及び状態応答信号を授受できるように、アダプタ23B及びアダプタ23Cのそれぞれと接続されている。
更に、アダプタ23Aは、アダプタ23B又はアダプタ23Cから状態確認信号(本例では、制御命令を含む信号)を受信すると、その状態確認信号の送信元のアダプタへ直ちに状態応答信号を送信する。
アダプタ23B〜アダプタ23Fのそれぞれも、アダプタ23Aと同様の構成を有している。アダプタ23Bは、データを授受できるように、第1切替器21の端子21a4及び共有メモリ24のそれぞれと接続されている。また、アダプタ23Bは、状態確認信号及び状態応答信号を授受できるように、アダプタ23A及びアダプタ23Cのそれぞれと接続されている。
同様に、アダプタ23Cは、データを授受できるように、第1切替器21の端子21a5及び共有メモリ24のそれぞれと接続されている。また、アダプタ23Cは、状態確認信号及び状態応答信号を授受できるように、アダプタ23A及びアダプタ23Bのそれぞれと接続されている。
同様に、アダプタ23Dは、データを授受できるように、第2切替器22の端子22a3及び共有メモリ24のそれぞれと接続されている。また、アダプタ23Dは、状態確認信号及び状態応答信号を授受できるように、アダプタ23E及びアダプタ23Fのそれぞれと接続されている。
同様に、アダプタ23Eは、データを授受できるように、第2切替器22の端子22a4及び共有メモリ24のそれぞれと接続されている。また、アダプタ23Eは、状態確認信号及び状態応答信号を授受できるように、アダプタ23D及びアダプタ23Fのそれぞれと接続されている。
同様に、アダプタ23Fは、データを授受できるように、第2切替器22の端子22a5及び共有メモリ24のそれぞれと接続されている。また、アダプタ23Fは、状態確認信号及び状態応答信号を授受できるように、アダプタ23D及びアダプタ23Eのそれぞれと接続されている。
なお、アダプタ23A〜23Fのそれぞれには、アダプタを識別する情報としてのアダプタID「#1」〜「#6」がこの順に付されている。
また、共有メモリ24は、各アダプタ23A〜23Fからのデータを記憶するとともに、記憶しているデータを各アダプタ23A〜23Fへ送る。
なお、第1ホスト側ポート20a1、第1切替器21、アダプタ23A〜23C及び第1ディスク側ポート20b1は、第1クラスタCL1を構成している。また、第2ホスト側ポート20a2、第2切替器22、アダプタ23D〜23F及び第2ディスク側ポート20b2は、第2クラスタCL2を構成している。更に、第1クラスタCL1にはクラスタを識別する情報としてのクラスタID「#1」が付され、第2クラスタCL2にはクラスタID「#2」が付されている。
次に、上述したディスクアレイ装置1の作動の概要について説明する。
先ず、ディスクアレイ装置1は、第1ホスト側ポート20a1とアダプタ23Aとを接続するとともに、第1ディスク側ポート20b1とアダプタ23Bとを接続する接続状態に、第1切替器21の接続状態を設定する。更に、ディスクアレイ装置1は、アダプタ23Aをホストモードにより作動させるとともに、アダプタ23Bをディスクモードにより作動させる。
そして、ホスト装置2は、第1ポート2aを介してディスクアレイ装置1へ書込データを送る。ディスクアレイ装置1は、ホスト装置2からの書込データを、アダプタ23A、共有メモリ24及びアダプタ23Bをこの順に経由させてディスクアレイユニット10へ送る。そして、ディスクアレイユニット10は、受け取った書込データを記憶する。一方、ディスクアレイユニット10は、ホスト装置2からの要求に応じて、記憶している書込データを読込データとして、アダプタ23B、共有メモリ24及びアダプタ23Aをこの順に経由させてホスト装置2へ送る。
更に、ディスクアレイ装置1は、アダプタ23Cをスペアモードにより作動させる。アダプタ23Cは、アダプタ23A又はアダプタ23Bが異常状態にあることを検出するようになっている。
アダプタ23Aが異常状態にあることをアダプタ23Cが検出した場合、ディスクアレイ装置1は、第1ホスト側ポート20a1とアダプタ23Aとの接続を解除するとともに、第1ホスト側ポート20a1とアダプタ23Cとを接続する接続状態に、第1切替器21の接続状態を設定する。更に、ディスクアレイ装置1は、アダプタ23Cをホストモードにより作動させる。
一方、アダプタ23Bが異常状態にあることをアダプタ23Cが検出した場合、ディスクアレイ装置1は、第1ディスク側ポート20b1とアダプタ23Bとの接続を解除するとともに、第1ディスク側ポート20b1とアダプタ23Cとを接続する接続状態に、第1切替器21の接続状態を設定する。更に、ディスクアレイ装置1は、アダプタ23Cをディスクモードにより作動させる。
これにより、アダプタ23Cは、異常状態になったアダプタとの間でデータを授受していた外部装置(ホスト装置2又はディスクアレイユニット10)との間でデータを授受することができる。
なお、第2クラスタCL2は、ホスト装置2が第2ポート2bを介してディスクアレイ装置1へデータを送る場合に使用される。また、第2クラスタCL2も、第1クラスタCL1と同様に作動する。
次に、上述したディスクアレイ装置1の作動の詳細について説明する。
アダプタ23Aが起動される(アダプタ23Aへ電源が供給され始める)と、アダプタ23AのCPU23A1は、図3にフローチャートにより示した起動プログラムを起動用プログラムP1として実行するようになっている。なお、他のアダプタ23B〜23Fもアダプタ23Aと同様にこの起動プログラムを実行する。また、図3のプログラムの処理が実行されることは、作動状態設定手段(作動状態設定工程)の機能の一部が達成されることに対応している。
具体的に述べると、CPU23A1は、ステップ305にて、アダプタ属性情報テーブルを共有メモリ24から読み込む。このアダプタ属性情報テーブルは、アダプタ毎にそのアダプタが所属する(そのアダプタを含む)クラスタとそのアダプタの作動モードとを規定する情報であって、アダプタIDと作動モードとクラスタIDとからなる情報であるアダプタ属性情報を複数含む。このアダプタ属性情報テーブルは、予め共有メモリ24に記憶されている。
いま、このアダプタ属性情報テーブルが、図4に示したように設定されている場合を想定して説明を続ける。即ち、このアダプタ属性情報テーブルにおいては、アダプタ23A〜23C(即ち、アダプタID「#1」〜「#3」のアダプタ)が第1クラスタCL1(即ち、クラスタID「#1」のクラスタ)に所属し、且つ、アダプタ23D〜23F(即ち、アダプタID「#4」〜「#6」のアダプタ)が第2クラスタCL2(即ち、クラスタID「#2」のクラスタ)に所属することが規定されている。
加えて、このアダプタ属性情報テーブルにおいては、アダプタ23A及びアダプタ23Dの作動モードがホストモードであり、アダプタ23B及びアダプタ23Eの作動モードがディスクモードであり、アダプタ23C及びアダプタ23Fの作動モードがスペアモードであることが規定されている。
そして、CPU23A1は、ステップ310にて、上記ステップ305にて読み込んだアダプタ属性情報テーブルと、アダプタ23A(自アダプタ)のアダプタIDと、に基づいて自アダプタ23Aの作動モード及び自アダプタ23Aが所属するクラスタ(自クラスタ)のクラスタIDを取得する。ここで、自アダプタのアダプタIDは、入出力制御装置20から別途通知される。
上記仮定に従えば、CPU23A1は、自アダプタ23Aの作動モードとしてホストモードを取得するとともに、自アダプタ23Aが所属するクラスタ(自クラスタ)のクラスタIDとして「#1」を取得する。
次いで、CPU23A1は、ステップ315にて、取得した作動モードがホストモードであるか否かを判定する。そして、CPU23A1は、「Yes」と判定してステップ320に進む。
そして、CPU23A1は、自クラスタ(クラスタID「#1」のクラスタ、即ち、第1クラスタCL1)内のホスト側ポート(第1ホスト側ポート20a1)が接続された端子21a1と、自アダプタ23Aが接続された端子21a3と、を接続させるための接続指示信号を自クラスタ内の切替器(第1切替器21)へ送る。これにより、第1切替器21の接続状態は、ホスト装置2とアダプタ23Aとを接続する接続状態に設定される。
次いで、CPU23A1は、ステップ325にて、ホストモード用プログラムP2をこの起動プログラムの実行に係るプロセスに独立したプロセスとして実行する。そして、CPU23A1は、ステップ399に進んでこの起動プログラムの実行を一旦終了する。即ち、この状態においては、アダプタ23Aは、第1切替器21を介してホスト装置2と接続されることによりホスト装置2との間でデータを授受する第1の入出力ユニットを構成している。
一方、アダプタ23BのCPU23B1は、この起動プログラムの実行を開始してステップ310に進んだとき、自アダプタ23Bの作動モードとしてディスクモードを取得する。
従って、CPU23B1は、ステップ315にて「No」と判定してステップ330に進み、取得した作動モードがディスクモードであるか否かを判定する。そして、CPU23B1は、「Yes」と判定してステップ335に進む。
次いで、CPU23B1は、自クラスタ(第1クラスタCL1)内のディスク側ポート(第1ディスク側ポート20b1)が接続された端子21a2と、自アダプタ23Bが接続された端子21a4と、を接続させるための接続指示信号を自クラスタ内の切替器(第1切替器21)へ送る。これにより、第1切替器21の接続状態は、ディスクアレイユニット10とアダプタ23Bとを接続する接続状態に設定される。即ち、第1切替器21の接続状態は、ホスト装置2とアダプタ23Aとを接続し、且つ、ディスクアレイユニット10とアダプタ23Bとを接続する接続状態に設定される。
その後、CPU23B1は、ステップ340にて、ディスクモード用プログラムP3をこの起動プログラムの実行に係るプロセスに独立したプロセスとして実行する。そして、CPU23B1は、ステップ399に進んでこの起動プログラムの実行を一旦終了する。即ち、この状態においては、アダプタ23Bは、第1切替器21を介してディスクアレイユニット10と接続されることによりディスクアレイユニット10との間でデータを授受する第2の入出力ユニットを構成している。
また、アダプタ23CのCPU23C1は、この起動プログラムの実行を開始してステップ310に進んだとき、自アダプタ23Cの作動モードとしてスペアモードを取得する。
従って、CPU23C1は、ステップ315及びステップ330にて「No」と判定してステップ345に進み、スペアモード用プログラムP4をこの起動プログラムの実行に係るプロセスに独立したプロセスとして実行する。そして、CPU23C1は、ステップ399に進んでこの起動プログラムの実行を一旦終了する。即ち、この状態においては、アダプタ23Cは、第3の入出力ユニットを構成している。
上述したように、アダプタ23AのCPU23A1がステップ325にてホストモード用プログラムP2を実行することにより、CPU23A1は、ホストモード用プログラムP2の一部を構成する書込要求受信プログラムを実行する。この書込要求受信プログラムは、図5にフローチャートにより示したプログラムである。
具体的に述べると、CPU23A1は、ステップ505にて、ホスト装置2から書込要求情報を受信するまで待機する。
そして、ホスト装置2が第1ポート2aを介して書込要求情報をディスクアレイ装置1へ送ると、CPU23A1は、「Yes」と判定してステップ510に進み、受信した書込要求情報を共有メモリ24に格納する。そして、CPU23A1は、ステップ505に戻り、再び、ホスト装置2から書込要求情報を受信するまで待機する。
一方、アダプタ23BのCPU23B1がステップ340にてディスクモード用プログラムP3を実行することにより、CPU23B1は、ディスクモード用プログラムP3の一部を構成する書込指示送信プログラムを実行する。この書込指示送信プログラムは、図6にフローチャートにより示したプログラムである。
具体的に述べると、CPU23B1は、ステップ605にて、共有メモリ24に書込要求情報が格納されるまで待機する。この状態においては、アダプタ23Aにより共有メモリ24に書込要求情報が格納されている。
従って、CPU23B1は、「Yes」と判定してステップ610に進み、共有メモリ24に格納されている書込要求情報を取得するとともに、その書込要求情報を共有メモリ24から消去する。更に、CPU23B1は、取得した書込要求情報に基づいて書込指示情報を生成する。
そして、CPU23B1は、ステップ615にて、生成した書込指示情報をディスクアレイユニット10へ送る。これにより、ディスクアレイユニット10は、受け取った書込指示情報に基づいて各HDD10c1〜10c16にディスク毎書込データを記憶させる。そして、CPU23B1は、ステップ605に戻り、再び、共有メモリ24に書込要求情報が格納されるまで待機する。
このようにして、ホスト装置2は、書込データをディスクアレイユニット10へ送り、ディスクアレイユニット10は、ホスト装置2から受け取った書込データを記憶する。
加えて、アダプタ23AのCPU23A1は、ホストモード用プログラムP2の一部を構成する読込要求受信プログラムを実行する。この読込要求受信プログラムは、図7にフローチャートにより示したプログラムである。
具体的に述べると、CPU23A1は、ステップ705にて、ホスト装置2から読込要求情報を受信するまで待機する。
ホスト装置2が第1ポート2aを介して読込要求情報をディスクアレイ装置1へ送ると、CPU23A1は、「Yes」と判定してステップ710に進み、受信した読込要求情報を共有メモリ24に格納する。
次いで、CPU23A1は、ステップ715にて、共有メモリ24にディスク毎読込完了情報が格納されるまで待機する。
一方、アダプタ23BのCPU23B1がステップ340にてディスクモード用プログラムP3を実行することにより、CPU23B1は、ディスクモード用プログラムP3の一部を構成する読込指示送信プログラムを実行する。この読込指示送信プログラムは、図8にフローチャートにより示したプログラムである。
具体的に述べると、CPU23B1は、ステップ805にて、共有メモリ24に読込要求情報が格納されるまで待機する。この状態においては、アダプタ23Aにより共有メモリ24に読込要求情報が格納されている。
従って、CPU23B1は、「Yes」と判定してステップ810に進み、共有メモリ24に格納されている読込要求情報を取得するとともに、その読込要求情報を共有メモリ24から消去する。更に、CPU23B1は、取得した読込要求情報に基づいて読込指示情報を生成する。
そして、CPU23B1は、ステップ815にて、生成した読込指示情報をディスクアレイユニット10へ送る。次いで、CPU23B1は、ステップ820にて、ディスクアレイユニット10からディスク毎読込完了情報を受信する(ディスク毎読込完了情報の受信が完了する)まで待機する。
一方、ディスクアレイユニット10は、読込指示情報を受け取ると、受け取った読込指示情報に基づいて各HDD10c1〜10c16からディスク毎読込データを読み込む。そして、ディスクアレイユニット10は、各HDD10c1〜10c16から読み込んだディスク毎読込データを含むディスク毎読込完了情報をアダプタ23Bへ送る。
そして、アダプタ23BのCPU23B1は、ディスクアレイユニット10からのディスク毎読込完了情報の受信が完了すると、ステップ820にて「Yes」と判定してステップ825に進み、受信したディスク毎読込完了情報を共有メモリ24に格納する。そして、CPU23B1は、ステップ805に戻り、再び、共有メモリ24に読込要求情報が格納されるまで待機する。
一方、アダプタ23AのCPU23A1は、共有メモリ24にディスク毎読込完了情報が格納されると、ステップ715にて「Yes」と判定してステップ720に進む。そして、CPU23A1は、共有メモリ24に格納されているディスク毎読込完了情報を取得するとともに、そのディスク毎読込完了情報を共有メモリ24から消去する。
そして、CPU23A1は、取得したディスク毎読込完了情報に基づいて読込完了情報を生成する。ここで、読込完了情報は、ディスク毎読込完了情報に含まれるディスク毎読込データを連結した読込データを含む情報である。
次いで、CPU23A1は、ステップ725にて、生成した読込完了情報をホスト装置2へ送る。そして、CPU23A1は、ステップ705に戻り、再び、ホスト装置2から読込要求情報を受信するまで待機する。
このようにして、ディスクアレイユニット10は、ホスト装置2からの要求に応じて、記憶している書込データを読込データとしてホスト装置2へ送り、ホスト装置2は、ディスクアレイユニット10からの読込データを受け取る。
一方、アダプタ23CのCPU23C1がステップ345にてスペアモード用プログラムP4を実行することにより、CPU23C1は、スペアモード用プログラムP4を構成する自クラスタ用作動状態変更プログラムを所定のアダプタ監視周期(本例では、5秒)が経過する毎に実行する。この自クラスタ用作動状態変更プログラムは、図9にフローチャートにより示したプログラムである。
具体的に述べると、CPU23C1は、ステップ905にて、上記ステップ305にて読み込んだアダプタ属性情報テーブルと、上記ステップ310にて取得した自クラスタのクラスタID(ここでは、「#1」)と、に基づいて自クラスタ内のアダプタのアダプタIDのリストを作成する。即ち、作成されるリストは、「#1」、「#2」及び「#3」からなる。
次いで、CPU23C1は、ステップ910にて、リスト内にアダプタIDが存在しているか否かを判定する。この時点では、CPU23C1は、「Yes」と判定してステップ915に進み、リストからアダプタIDを1つ取得するとともに、取得したアダプタIDをリストから削除(消去)する。ここでは、CPU23C1は、アダプタID「#1」を取得する。
そして、CPU23C1は、ステップ920にて、取得したアダプタIDのアダプタ(ここでは、アダプタ23A)へ状態確認信号を送信する。
次いで、CPU23C1は、ステップ925にて、状態確認信号を送信してから所定の待機時間が経過するまでの間に上記アダプタ23Aから上記状態確認信号に応じた状態応答信号を受信したか否か(即ち、アダプタ23Aが正常に作動しているか否か)を判定する。
なお、取得したアダプタIDと自アダプタのアダプタIDとが一致している場合(この例では、取得したアダプタIDが「#3」である場合)には、CPU23C1は、状態確認信号を送信することなく、自己診断用の処理を実行することにより、自アダプタ23Cが正常に作動しているか否かを判定してもよい。
また、ステップ920及びステップ925の処理が実行されることは、異常状態検出手段(異常状態検出工程)の機能が達成されることに対応している。
いま、アダプタ23A、アダプタ23B及びアダプタ23Cのいずれもが正常に作動している(異常状態となっていない)場合を想定して説明を続ける。
この場合、アダプタ23Aは、状態確認信号を受信すると、その状態確認信号の送信元のアダプタ23Cへ直ちに状態応答信号を送信する。従って、CPU23C1は、状態確認信号を送信してから上記待機時間が経過するまでの間にアダプタ23Aから上記状態応答信号を受信する。従って、CPU23C1は、ステップ925にて「Yes」と判定してステップ910に戻り、リスト内にアダプタIDが存在しなくなるまで、ステップ910〜925の処理を繰り返し実行する。
即ち、CPU23C1は、アダプタID「#2」のアダプタ23B及びアダプタID「#3」のアダプタ23Cのそれぞれも正常に作動している(即ち、状態確認信号に応じて状態応答信号を送信する)ことを確認する。
その後、CPU23C1がステップ910に進んだとき、CPU23C1は、ステップ910にて「No」と判定してステップ999に直接進み、この自クラスタ用作動状態変更プログラムの実行を一旦終了する。
即ち、この状態においては、アダプタ23Cは、アダプタ23A又はアダプタ23Bが異常状態にあることを検出する第3の作動状態にて作動する。
次に、アダプタ23B及びアダプタ23Cのいずれもが正常に作動している状態においてアダプタ23Aが状態確認信号を受信しても状態応答信号を送信できない状態となった(異常状態となった)場合について説明を続ける。
この場合、アダプタ23CのCPU23C1がステップ925に進んだとき、CPU23C1は、アダプタ23Aへ状態確認信号を送信してから上記待機時間が経過するまでの間にアダプタ23Aから上記状態応答信号を受信しない。
従って、CPU23C1は、「No」と判定してステップ930に進み、上記ステップ915にて取得したアダプタID(ここでは、「#1」)と、自アダプタのアダプタID(ここでは、「#3」)と、が相違しているか否かを判定する。
この状態においては、CPU23C1は、「Yes」と判定してステップ935に進む。そして、CPU23C1は、第1ホスト側ポート20a1が接続された端子21a1と、上記ステップ915にて取得したアダプタID(ここでは、「#1」)のアダプタ23Aが接続された端子21a3と、の間の接続を解除する(端子21a1と端子21a3とを遮断する)ための解除指示信号を第1切替器21へ送る。これにより、第1切替器21の接続状態は、ホスト装置2とアダプタ23Aとの間の接続を解除した接続状態に設定される。
そして、CPU23C1は、ステップ940にて、アダプタ23Aが異常状態となっている旨を表すエラー情報を出力する(本例では、共有メモリ24内のログファイルに書き出す)。
次いで、CPU23C1は、ステップ945にて、共有メモリ24に格納されているアダプタ属性情報テーブルの、上記ステップ915にて取得したアダプタID(ここでは、「#1」)に係る作動モード(即ち、アダプタID「#1」を含むアダプタ属性情報に含まれる作動モード、ここでは、ホストモード)と、自アダプタのアダプタID(ここでは、「#3」)に係る作動モード(ここでは、スペアモード)と、を交換した更新用テーブル(図10を参照)を生成する。更に、CPU23C1は、共有メモリ24に格納されているアダプタ属性情報テーブルを、生成した更新用テーブルに置換する。これにより、アダプタ23Cを再起動させた際に、アダプタ23Cが起動時に実行する図3のプログラムの処理が変更される。
次いで、CPU23C1は、ステップ950にて、自アダプタ23Cを再起動させる。なお、ステップ935〜ステップ950の処理が実行されることは、作動状態設定手段(作動状態設定工程)の機能の一部が達成されることに対応している。
これにより、CPU23C1は、図3の起動プログラムを実行する。そして、CPU23C1は、ステップ305にて、図10に示したアダプタ属性情報テーブルを読み込む。次いで、CPU23C1は、ステップ310にて、自アダプタ23Cの作動モードとしてホストモードを取得する。
その後、CPU23C1は、ステップ315〜ステップ325の処理を実行する。これにより、第1切替器21の接続状態は、第1ホスト側ポート20a1(即ち、ホスト装置2)とアダプタ23Aとの間の接続を解除し、且つ、第1ホスト側ポート20a1(即ち、ホスト装置2)とアダプタ23Cとを接続する接続状態(第1の接続状態)に設定される。即ち、この状態においては、図11に示したように、第1ホスト側ポート20a1とアダプタ23Cとが接続され、且つ、第1ディスク側ポート20b1とアダプタ23Bとが接続される。
更に、CPU23C1は、ホストモード用プログラムP2(図5及び図7を参照)を実行する。
このようにして、アダプタ23Cは、異常状態となったアダプタ23Aの代わりに、ホストモードにより作動する。即ち、この状態においては、アダプタ23Cは、ホスト装置2との間でデータを授受する第1の作動状態にて作動する。
これにより、アダプタ23Cは、異常状態になったアダプタ23Aとの間でデータを授受していたホスト装置2との間でデータを授受することができる。この結果、アダプタ23Aが異常状態になってから、入出力制御装置20がホスト装置2との間でデータを正常に授受できるようになるまでの時間を十分に短くすることができる。
また、アダプタ23A及びアダプタ23Cのいずれもが正常に作動している状態においてアダプタ23Bが状態確認信号を受信しても状態応答信号を送信できない状態となった(異常状態となった)場合について説明する。
この場合、アダプタ23CのCPU23C1がステップ925に進んだとき、CPU23C1は、アダプタ23Bへ状態確認信号を送信してから上記待機時間が経過するまでの間にアダプタ23Bから上記状態応答信号を受信しない。
従って、CPU23C1は、「No」と判定してステップ930に進み、上記ステップ915にて取得したアダプタID(ここでは、「#2」)と、自アダプタのアダプタID(ここでは、「#3」)と、が相違しているか否かを判定する。
この状態においては、CPU23C1は、「Yes」と判定してステップ935に進む。そして、CPU23C1は、第1ディスク側ポート20b1が接続された端子21a2と、上記ステップ915にて取得したアダプタID(ここでは、「#2」)のアダプタ23Bが接続された端子21a4と、の間の接続を解除する(端子21a2と端子21a4とを遮断する)ための解除指示信号を第1切替器21へ送る。これにより、第1切替器21の接続状態は、ディスクアレイユニット10とアダプタ23Bとの間の接続を解除した接続状態に設定される。
そして、CPU23C1は、ステップ940にて、アダプタ23Bが異常状態となっている旨を表すエラー情報を出力する(本例では、共有メモリ24内のログファイルに書き出す)。
次いで、CPU23C1は、ステップ945にて、共有メモリ24に格納されているアダプタ属性情報テーブルの、上記ステップ915にて取得したアダプタID(ここでは、「#2」)に係る作動モード(ここでは、ディスクモード)と、自アダプタのアダプタID(ここでは、「#3」)に係る作動モード(ここでは、スペアモード)と、を交換した更新用テーブル(図12を参照)を生成する。更に、CPU23C1は、共有メモリ24に格納されているアダプタ属性情報テーブルを、生成した更新用テーブルに置換する。
次いで、CPU23C1は、ステップ950にて、自アダプタ23Cを再起動させる。
これにより、CPU23C1は、図3の起動プログラムを実行する。そして、CPU23C1は、ステップ305にて、図12に示したアダプタ属性情報テーブルを読み込む。次いで、CPU23C1は、ステップ310にて、自アダプタ23Cの作動モードとしてディスクモードを取得する。
その後、CPU23C1は、ステップ330〜ステップ340の処理を実行する。これにより、第1切替器21の接続状態は、第1ディスク側ポート20b1(即ち、ディスクアレイユニット10)とアダプタ23Bとの間の接続を解除し、且つ、第1ディスク側ポート20b1(即ち、ディスクアレイユニット10)とアダプタ23Cとを接続する接続状態(第2の接続状態)に設定される。即ち、この状態においては、図13に示したように、第1ホスト側ポート20a1とアダプタ23Aとが接続され、且つ、第1ディスク側ポート20b1とアダプタ23Cとが接続される。
更に、CPU23C1は、ディスクモード用プログラムP3(図6及び図8を参照)を実行する。
このようにして、アダプタ23Cは、異常状態となったアダプタ23Bの代わりに、ディスクモードにより作動する。即ち、この状態においては、アダプタ23Cは、ディスクアレイユニット10との間でデータを授受する第2の作動状態にて作動する。
これにより、アダプタ23Cは、異常状態になったアダプタ23Bとの間でデータを授受していたディスクアレイユニット10との間でデータを授受することができる。この結果、アダプタ23Bが異常状態になってから、入出力制御装置20がディスクアレイユニット10との間でデータを正常に授受できるようになるまでの時間を十分に短くすることができる。
一方、アダプタ23A及びアダプタ23Bのいずれもが正常に作動している状態においてアダプタ23Cが状態確認信号を受信しても状態応答信号を送信できない状態となった(異常状態となった)場合について説明する。
この場合、アダプタ23CのCPU23C1がステップ925に進んだとき、CPU23C1は、アダプタ23C(自アダプタ)へ状態確認信号を送信してから上記待機時間が経過するまでの間にアダプタ23Cから上記状態応答信号を受信しない。
従って、CPU23C1は、「No」と判定してステップ930に進み、上記ステップ915にて取得したアダプタID(ここでは、「#3」)と、自アダプタのアダプタID(ここでは、「#3」)と、が相違しているか否かを判定する。
この状態においては、取得したアダプタIDと自アダプタのアダプタIDとが一致している。従って、CPU23C1は、「No」と判定してステップ955に進み、アダプタ23Cが異常状態となっている旨を表すエラー情報を出力する(本例では、共有メモリ24内のログファイルに書き出す)。
次いで、CPU23C1は、ステップ960にて、自アダプタ23Cを停止させる。
以上、説明したように、上記第1実施形態によれば、アダプタ23A又はアダプタ23Bが異常状態になってから、入出力制御装置20がホスト装置2及びディスクアレイユニット10の双方との間でデータを正常に授受できるようになるまでの時間を十分に短くすることができる。
更に、ホスト装置2との間でデータを授受するための予備のアダプタ(入出力ユニット)と、ディスクアレイユニット10との間でデータを授受するための予備のアダプタと、の2つのアダプタを用意する場合よりも、予備の(即ち、冗長性を確保するための)アダプタの数を少なくすることもできる。
加えて、上記第1実施形態においては、スペアモードにより作動するアダプタ23Cが、ホストモードにより作動するアダプタ23A又はディスクモードにより作動するアダプタ23Bが異常状態にあることを検出する。従って、アダプタ23A又はアダプタ23Bが異常状態にあることを検出する装置を別途設ける必要がないので、入出力制御装置の製造コストを低減することができる。
更に、上記第1実施形態においては、アダプタ23Aが異常状態となった場合にはアダプタ23Aとホスト装置2との間の接続が解除され、一方、アダプタ23Bが異常状態となった場合にはアダプタ23Bとディスクアレイユニット10との間の接続が解除される。従って、新たに接続されたアダプタ23Cと外部装置(ホスト装置2又はディスクアレイユニット10)との間のデータの授受をより確実に行うことができる。
次に、本発明の第2実施形態に係る入出力制御装置について説明する。第2実施形態に係る入出力制御装置は、上記第1実施形態に係る入出力制御装置に対して、第1切替器又は第2切替器が異常状態にあることを検出するとともに、第1切替器及び第2切替器の2つの切替器のうちの一方が異常状態にあることが検出された場合にその切替器を介して接続されているアダプタ及び外部装置を、他方の切替器を介して接続するように構成されている点のみにおいて相違している。従って、以下、かかる相違点を中心として説明する。
図14に示したように、第2実施形態に係る入出力制御装置20Aは、上記第1実施形態に係る第1切替器21及び第2切替器22に代えて、第1切替器25及び第2切替器26を備える。
第1切替器25は、複数(本例では、10個)の端子25a1〜25a10を有する。第1切替器25は、アダプタ23A〜23Fからの接続指示信号に応答して、端子25a1〜25a10のうちの任意の2つの端子を電気的に接続する。一方、第1切替器25は、アダプタ23A〜23Fからの解除指示信号に応答して、接続されている2つの端子間の接続を解除(遮断)する。更に、第1切替器25は、アダプタ23A〜23Fから状態確認信号(本例では、制御命令を含む信号)を受信すると、その状態確認信号の送信元のアダプタへ直ちに状態応答信号を送信する。
加えて、第2切替器26は、第1切替器25と同様に複数(本例では、10個)の端子26a1〜26a10を有する。第2切替器26は、第1切替器25と同様に、接続指示信号に応答して2つの端子を接続するとともに、解除指示信号に応答して接続されている2つの端子間の接続を解除する。更に、第2切替器26は、第1切替器25と同様に、状態確認信号に応答して状態応答信号を送信する。
更に、第1切替器25には切替器を識別する情報としての切替器ID「#1」が付され、第2切替器26には切替器ID「#2」が付されている。
第1ホスト側ポート20a1は、第1切替器25の端子25a1及び第2切替器26の端子26a2のそれぞれと接続されている。第2ホスト側ポート20a2は、第1切替器25の端子25a2及び第2切替器26の端子26a1のそれぞれと接続されている。
第1ディスク側ポート20b1は、第1切替器25の端子25a3及び第2切替器26の端子26a4のそれぞれと接続されている。第2ディスク側ポート20b2は、第1切替器25の端子25a4及び第2切替器26の端子26a3のそれぞれと接続されている。
アダプタ23Aは、第1切替器25の端子25a5、第2切替器26の端子26a5及び共有メモリ24のそれぞれと接続されている。これにより、アダプタ23Aは、第1切替器25の端子25a5、第2切替器26の端子26a5及び共有メモリ24のそれぞれとの間でデータを授受する。
同様に、アダプタ23Bは、データを授受できるように、第1切替器25の端子25a7、第2切替器26の端子26a7及び共有メモリ24のそれぞれと接続されている。また、アダプタ23Cは、データを授受できるように、第1切替器25の端子25a9、第2切替器26の端子26a9及び共有メモリ24のそれぞれと接続されている。
更に、アダプタ23Dは、データを授受できるように、第1切替器25の端子25a6、第2切替器26の端子26a6及び共有メモリ24のそれぞれと接続されている。加えて、アダプタ23Eは、データを授受できるように、第1切替器25の端子25a8、第2切替器26の端子26a8及び共有メモリ24のそれぞれと接続されている。更に、アダプタ23Fは、データを授受できるように、第1切替器25の端子25a10、第2切替器26の端子26a10及び共有メモリ24のそれぞれと接続されている。
次に、上記のように構成された入出力制御装置20Aの作動について説明する。
入出力制御装置20Aの共有メモリ24には、各クラスタにおいて使用する切替器を特定する情報であって、クラスタIDと切替器IDとからなる情報である使用切替器情報を複数(本例では、2つ)含む使用切替器情報テーブルが予め格納されている。
上記第1実施形態においては、入出力制御装置20のアダプタ23A〜23Fのそれぞれは、図3のステップ320及びステップ335における上記接続指示信号の送信先として自クラスタ内の切替器を採用していた。ところで、この第2実施形態においては、入出力制御装置20Aのアダプタ23A〜23Fのそれぞれは、その接続指示信号の送信先として、共有メモリ24に格納されている使用切替器情報テーブルと自クラスタIDとに基づいて特定される切替器を採用する。
一方、入出力制御装置20Aのアダプタ23A〜23Fのうちの、作動モードがホストモード又はディスクモードに設定されたアダプタは、図5〜図8のプログラムに加えて、図15にフローチャートにより示した切替器変更プログラムを所定の切替器監視周期(本例では、1秒)が経過する毎に繰り返し実行する。
いま、図4に示したアダプタ属性情報テーブルが共有メモリ24に格納されている状態において各アダプタ23A〜23Fが起動された場合であって、第1切替器25及び第2切替器26のいずれもが正常に作動している(異常状態となっていない)場合を想定して説明を続ける。なお、この状態においては、共有メモリ24に格納されている使用切替器情報テーブルは、クラスタID「#1」と切替器ID「#1」とからなる使用切替器情報と、クラスタID「#2」と切替器ID「#2」とからなる使用切替器情報と、からなる。
この場合、アダプタ23AのCPU23A1は、ステップ1505にて、上記ステップ310にて取得した自クラスタのクラスタID(ここでは、「#1」)に基づいて自クラスタ内の切替器(ここでは、第1切替器25)へ状態確認信号を送る(送信する)。
次いで、CPU23A1は、ステップ1510にて、状態確認信号を送信してから所定の待機時間が経過するまでの間に第1切替器25から上記状態確認信号に応じた状態応答信号を受信したか否か(即ち、第1切替器25が正常に作動しているか否か)を判定する。なお、ステップ1505及びステップ1510の処理が実行されることは、切替器異常状態検出手段の機能が達成されることに対応している。
この状態においては、第1切替器25は、状態確認信号を受信すると、その状態確認信号の送信元のアダプタ23Aへ直ちに状態応答信号を送信する。従って、CPU23A1は、状態確認信号を送信してから上記待機時間が経過するまでの間に第1切替器25から上記状態応答信号を受信する。
従って、CPU23A1は、ステップ1510にて「Yes」と判定してステップ1515に進み、自アダプタ23Aが自クラスタの切替器(第1切替器25)を介して外部装置(ホスト装置2)と接続されているか否かを判定する。
この状態においては、アダプタ23Aは、第1切替器25を介してホスト装置2と接続されている。従って、CPU23A1は、「Yes」と判定してステップ1599に直接進み、この切替器変更プログラムの実行を一旦終了する。
一方、アダプタ23B、アダプタ23D及びアダプタ23Eのそれぞれも、この切替器変更プログラムの実行を開始する。この状態においては、各アダプタ23B,23D,23Eは、アダプタ23Aの場合と同様にステップ1505〜ステップ1515の処理を順に実行してこの切替器変更プログラムの実行を一旦終了する。
次に、第2切替器26が正常に作動している状態において第1切替器25が状態確認信号を受信しても状態応答信号を送信できない状態となった(異常状態となった)場合について説明する。
この場合、アダプタ23AのCPU23A1がステップ1510に進んだとき、CPU23A1は、第1切替器25へ状態確認信号を送信してから上記待機時間が経過するまでの間に第1切替器25から上記状態応答信号を受信しない。
従って、CPU23A1は、「No」と判定してステップ1520に進み、上記ステップ310にて取得した自クラスタのクラスタID(ここでは、「#1」)に基づいて自クラスタ以外のクラスタ(他クラスタ)内の切替器(即ち、第2切替器26)へ状態確認信号を送る。
次いで、CPU23A1は、ステップ1525にて、状態確認信号を送信してから所定の待機時間が経過するまでの間に第2切替器26から上記状態確認信号に応じた状態応答信号を受信したか否か(即ち、第2切替器26が正常に作動しているか否か)を判定する。
この状態においては、第2切替器26は、状態確認信号を受信すると、その状態確認信号の送信元のアダプタ23Aへ直ちに状態応答信号を送信する。従って、CPU23A1は、状態確認信号を送信してから上記待機時間が経過するまでの間に第2切替器26から上記状態応答信号を受信する。
従って、CPU23A1は、ステップ1525にて「Yes」と判定してステップ1530に進み、自アダプタ23Aが自クラスタの切替器(第1切替器25)を介してホスト装置2と接続されているか否かを判定する。
この状態においては、アダプタ23Aは、第1切替器25を介してホスト装置2と接続されている。従って、CPU23A1は、「Yes」と判定してステップ1535に進む。
そして、CPU23A1は、第1切替器25へ、第1ホスト側ポート20a1が接続された端子25a1と、自アダプタ23Aが接続された端子25a5と、の間の接続を解除するための解除指示信号を送る。これにより、第1切替器25の接続状態は、ホスト装置2とアダプタ23Aとの間の接続を解除した接続状態に設定される。
更に、CPU23A1は、第2切替器26へ、第1ホスト側ポート20a1が接続された端子26a2と、自アダプタ23Aが接続された端子26a5と、を接続するための接続指示信号を送る。これにより、第2切替器26の接続状態は、ホスト装置2とアダプタ23Aとを接続する接続状態に設定される。
このようにして、使用切替器(第1切替器25)が異常状態にあることが検出された場合、使用切替器を介して接続されているアダプタ23A及びホスト装置2は、使用切替器以外の切替器(第2切替器26)を介して接続される。
加えて、CPU23A1は、共有メモリ24に格納されている使用切替器情報テーブル内の使用切替器情報であってクラスタIDとして自クラスタ(第1クラスタCL1)のクラスタID「#1」を含む使用切替器情報に含まれる切替器ID(ここでは、「#1」)を他クラスタ(第2クラスタCL2)内の切替器の切替器ID(「#2」)に変更する。
そして、CPU23A1は、ステップ1599に進んでこの切替器変更プログラムの実行を一旦終了する。なお、ステップ1520〜ステップ1535の処理が実行されることは、切替器変更手段の機能が達成されることに対応している。
更に、アダプタ23Bも、アダプタ23Aの場合と同様にステップ1520〜ステップ1535の処理を順に実行する。これにより、第1切替器25の接続状態は、ディスクアレイユニット10とアダプタ23Bとの間の接続を解除した接続状態に設定される。更に、第2切替器26の接続状態は、ディスクアレイユニット10とアダプタ23Bとを接続する接続状態に設定される。
即ち、この状態においては、図16に示したように、アダプタ23Aは、第2切替器26及び第1ホスト側ポート20a1をこの順に経由してホスト装置2と接続される。更に、アダプタ23Bは、第2切替器26及び第1ディスク側ポート20b1をこの順に経由してディスクアレイユニット10と接続される。
従って、この状態において、アダプタ23AのCPU23A1が図15の切替器変更プログラムの実行を開始してステップ1530に進んだとき、CPU23A1は、「No」と判定してステップ1599に直接進み、この切替器変更プログラムの実行を一旦終了する。
その後、第1切替器25に加えて第2切替器26も、状態確認信号を受信しても状態応答信号を送信できない状態となった(異常状態となった)場合について説明を続ける。
この場合、アダプタ23AのCPU23A1が図15の切替器変更プログラムの実行を開始してステップ1525に進んだとき、CPU23A1は、第2切替器26へ状態確認信号を送信してから上記待機時間が経過するまでの間に第2切替器26から上記状態応答信号を受信しない。
従って、CPU23A1は、「No」と判定してステップ1540に進み、第1切替器25及び第2切替器26のいずれもが異常状態となっている旨を表すエラー情報を出力する(本例では、共有メモリ24内のログファイルに書き出す)。そして、CPU23A1は、ステップ1599に進んでこの切替器変更プログラムの実行を一旦終了する。
一方、第1切替器25が一旦異常状態となった後に、正常に作動する(状態確認信号を受信すると状態応答信号を送信する)状態に戻った場合について説明する。
この場合、アダプタ23AのCPU23A1が図15の切替器変更プログラムの実行を開始してステップ1510に進んだとき、CPU23A1は、「Yes」と判定してステップ1515に進む。
この状態においては、アダプタ23Aは、自クラスタ以外のクラスタの切替器(第2切替器26)を介してホスト装置2と接続されている。従って、CPU23A1は、ステップ1515にて「No」と判定してステップ1545に進む。
そして、CPU23A1は、第2切替器26へ、第1ホスト側ポート20a1が接続された端子26a2と、自アダプタ23Aが接続された端子26a5と、の間の接続を解除するための解除指示信号を送る。これにより、第2切替器26の接続状態は、ホスト装置2とアダプタ23Aとの間の接続を解除した接続状態に設定される。
更に、CPU23A1は、第1切替器25へ、第1ホスト側ポート20a1が接続された端子25a1と、自アダプタ23Aが接続された端子25a5と、を接続するための接続指示信号を送る。これにより、第1切替器25の接続状態は、ホスト装置2とアダプタ23Aとを接続する接続状態に設定される。
加えて、CPU23A1は、共有メモリ24に格納されている使用切替器情報テーブル内の使用切替器情報であってクラスタIDとして自クラスタ(第1クラスタCL1)のクラスタID「#1」を含む使用切替器情報に含まれる切替器ID(ここでは、「#2」)を自クラスタ内の切替器の切替器ID(「#1」)に変更する。
そして、CPU23A1は、ステップ1599に進んでこの切替器変更プログラムの実行を一旦終了する。
更に、アダプタ23Bも、アダプタ23Aの場合と同様にステップ1545の処理を実行する。これにより、第1切替器25の接続状態は、ディスクアレイユニット10とアダプタ23Bとを接続する接続状態に設定される。更に、第2切替器26の接続状態は、ディスクアレイユニット10とアダプタ23Bとの間の接続を解除した接続状態に設定される。
即ち、この状態においては、図14に示したように、アダプタ23Aは、第1切替器25及び第1ホスト側ポート20a1をこの順に経由してホスト装置2と接続される。更に、アダプタ23Bは、第1切替器25及び第1ディスク側ポート20b1をこの順に経由してディスクアレイユニット10と接続される。
以上、説明したように、本発明による入出力制御装置の第2実施形態によれば、使用切替器が異常状態になった場合であっても、その他の切替器を介してアダプタと外部装置(ホスト装置2又はディスクアレイユニット10)とが接続される。これにより、アダプタと外部装置との間でデータを授受することができる。この結果、使用切替器が異常状態になってから、ホスト装置2及びディスクアレイユニット10の双方との間でデータを正常に授受できるようになるまでの時間を十分に短くすることができる。
更に、上記第2実施形態によれば、上記第1実施形態と同様の効果が奏される。
次に、本発明の第3実施形態に係る入出力制御装置について説明する。第3実施形態に係る入出力制御装置は、上記第2実施形態に係る入出力制御装置に対して、スペアモードにより作動するアダプタが、他クラスタ内のアダプタが異常状態にあることを検出するとともに、他クラスタ内のアダプタが異常状態にあることが検出された場合にその異常状態にあるアダプタに代わって他クラスタにおけるデータの授受を行うように構成されている点のみにおいて相違している。従って、以下、かかる相違点を中心として説明する。
図17に示したように、第3実施形態に係る入出力制御装置20Bが備えるアダプタ23A〜23Fのそれぞれは、すべてのアダプタとの間で状態確認信号及び状態応答信号を授受できるように、自アダプタ以外のアダプタのそれぞれと接続されている。
次に、上記のように構成された入出力制御装置20Bの作動について説明する。
入出力制御装置20Bのアダプタ23A〜23Fのうちの、作動モードがスペアモードに設定されたアダプタは、図18にフローチャートにより示した他クラスタ用作動状態変更プログラムを図9のプログラムに続いて実行する。
いま、図4に示したアダプタ属性情報テーブルが共有メモリ24に格納されている状態において各アダプタ23A〜23Fが起動された場合であって、アダプタ23A〜23Fのいずれもが正常に作動している(異常状態となっていない)場合を想定して説明を続ける。
この場合、アダプタ23CのCPU23C1は、ステップ1805にて、上記ステップ305にて読み込んだテーブルに基づいて、他クラスタ(ここでは、第2クラスタCL2)において作動モードがスペアモードに設定されたアダプタ(即ち、アダプタ23F)へ状態確認信号を送る。
次いで、CPU23C1は、ステップ1810にて、状態確認信号を送信してから所定の待機時間が経過するまでの間に上記アダプタ23Fから上記状態確認信号に応じた状態応答信号を受信したか否かを判定する。
この状態においては、アダプタ23Fは、状態確認信号を受信すると、その状態確認信号の送信元のアダプタ23Cへ直ちに状態応答信号を送信する。従って、CPU23C1は、状態確認信号を送信してから上記待機時間が経過するまでの間にアダプタ23Fから上記状態応答信号を受信する。従って、CPU23C1は、ステップ1810にて「Yes」と判定してステップ1899に直接進み、他クラスタ用作動状態変更プログラムの実行を一旦終了する。
一方、アダプタ23Fも、上記他クラスタ用作動状態変更プログラムの実行を開始する。この状態においては、アダプタ23Fは、アダプタ23Cの場合と同様にステップ1805及びステップ1810の処理を順に実行して上記他クラスタ用作動状態変更プログラムの実行を一旦終了する。
次に、アダプタ23Aのみが異常状態となった場合について説明を続ける。
この場合、上述したように、アダプタ23Cが図9のプログラムを実行することにより、共有メモリ24に格納されているアダプタ属性情報テーブルは、図10に示したテーブルに更新される。そして、第1切替器25の接続状態は、アダプタ23Cとホスト装置2とを接続するとともに、アダプタ23Bとディスクアレイユニット10とを接続する接続状態に設定される。更に、アダプタ23Cは、ホストモードにより作動する。
この状態においては、第1クラスタCL1において作動モードがスペアモードに設定されているアダプタ23Aは異常状態にある。従って、アダプタ23FのCPU23F1が図18のプログラムの実行を開始してステップ1810に進んだとき、CPU23F1は、アダプタ23Aへ状態確認信号を送信してから上記待機時間が経過するまでの間にアダプタ23Aから上記状態応答信号を受信しない。
従って、CPU23F1は、ステップ1810にて「No」と判定してステップ1815に進む。そして、CPU23F1は、他クラスタ(ここでは、第1クラスタCL1)においてスペアモード以外の作動モードに作動モードが設定されているアダプタのアダプタIDのリストを作成する。即ち、この状態において作成されるリストは、「#2」及び「#3」からなる。
次いで、CPU23F1は、上述したステップ910〜ステップ925の処理と同様の、ステップ1820〜ステップ1835の処理を実行することにより、アダプタ23Bが正常に作動しているか否かを判定する。この状態においては、アダプタ23Bは正常に作動している。
従って、CPU23F1は、ステップ1835にて「Yes」と判定してステップ1820に戻り、リスト内にアダプタIDが存在しなくなるまで、ステップ1820〜1835の処理を繰り返し実行する。
即ち、CPU23F1は、アダプタID「#3」のアダプタ23Cも正常に作動している(即ち、状態確認信号に応じて状態応答信号を送信する)ことを確認する。
その後、CPU23F1がステップ1820に進んだとき、CPU23F1は、「No」と判定してステップ1899に直接進み、他クラスタ用作動状態変更プログラムの実行を一旦終了する。
次に、この状態において、更にアダプタ23Bも異常状態となった場合について説明を続ける。
この場合、アダプタ23FのCPU23F1が図18のプログラムの実行を開始してステップ1835に進んだとき、CPU23F1は、アダプタ23Bへ状態確認信号を送信してから上記待機時間が経過するまでの間にアダプタ23Bから上記状態応答信号を受信しない。
従って、CPU23F1は、「No」と判定してステップ1840に進み、上記ステップ1825にて取得したアダプタID「#2」のアダプタ23Bが接続された端子25a7と、第1ディスク側ポート20b1が接続された端子25a3と、の間の接続を解除するための解除指示信号を第1切替器25へ送る。これにより、第1切替器25の接続状態は、ディスクアレイユニット10とアダプタ23Bとの間の接続を解除した接続状態に設定される。
そして、CPU23F1は、ステップ1845にて、アダプタ23Bが異常状態となっている旨を表すエラー情報を出力する(本例では、共有メモリ24内のログファイルに書き出す)。
次いで、CPU23F1は、ステップ1850にて、共有メモリ24に格納されているアダプタ属性情報テーブルの、上記ステップ1825にて取得したアダプタID(ここでは、「#2」)に係る作動モード(ここでは、ディスクモード)及びクラスタID(ここでは、「#1」)と、自アダプタ23FのアダプタID(ここでは、「#6」)に係る作動モード(ここでは、スペアモード)及びクラスタID(ここでは、「#2」)と、を交換した更新用テーブル(図19を参照)を生成する。更に、CPU23F1は、共有メモリ24に格納されているアダプタ属性情報テーブルを、生成した更新用テーブルに置換する。
次いで、CPU23F1は、ステップ1860にて、自アダプタ23Fを再起動させる。
これにより、CPU23F1は、図3の起動プログラムを実行する。そして、CPU23F1は、ステップ305にて、図19に示した(共有メモリ24に格納されている)アダプタ属性情報テーブルを読み込む。次いで、CPU23F1は、ステップ310にて、自アダプタ23Fの作動モードとしてディスクモードを取得する。
その後、CPU23F1は、ステップ330〜ステップ340の処理を実行する。これにより、第1切替器25の接続状態は、第1ホスト側ポート20a1とアダプタ23Fとを接続する接続状態に設定される。即ち、この状態においては、図11に示したように、第1ホスト側ポート20a1とアダプタ23Fとが接続され、且つ、第1ディスク側ポート20b1とアダプタ23Bとが接続される(図20を参照)。
更に、CPU23F1は、ディスクモード用プログラムP3(図6及び図8を参照)を実行する。
このようにして、アダプタ23Fは、異常状態となったアダプタ23Bの代わりに、ディスクモードにより作動する。
以上、説明したように、上記第3実施形態によれば、異常状態となったアダプタを含むクラスタ内にスペアモードにて作動するアダプタが存在していない場合であっても、他のクラスタ内にスペアモードにて作動するアダプタが存在している場合には、そのアダプタを異常状態となったアダプタに代えて用いることができる。
この結果、上記第1実施形態と同様に、アダプタが異常状態になってから、入出力制御装置20がホスト装置2及びディスクアレイユニット10の双方との間でデータを正常に授受できるようになるまでの時間を十分に短くすることができる。
更に、ホスト装置2との間でデータを授受するための予備のアダプタ(入出力ユニット)と、ディスクアレイユニット10との間でデータを授受するための予備のアダプタと、の2つのアダプタを用意する場合よりも、予備の(即ち、冗長性を確保するための)アダプタの数を少なくすることもできる。
なお、上記第3実施形態においては、入出力制御装置20Bは、スペアモードにて作動するアダプタを2つ備えていたが1つだけ備えていてもよい。
なお、本発明は上記各実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記各実施形態においては、入出力制御装置は、クラスタを2つ有していたが、1つ有していてもよく3つ以上有していてもよい。更に、上記各実施形態においては、各クラスタは、スペアモードにて作動するアダプタを1つ有していたが、複数有していてもよい。
更に、上記各実施形態は、スペアモードにて作動するアダプタが、ホストモード又はディスクモードにて作動するアダプタが異常状態にあることを検出するように構成されていたが、アダプタ以外の装置がこの検出を行うように構成されていてもよい。
また、上記各実施形態は、すべてのアダプタがアダプタ属性情報テーブルに応じて作動モードを変更できるように構成されていたが、一部のアダプタが作動モードを変更不能に構成され且つ他のアダプタが作動モードを変更可能に構成されていてもよい。
また、上記各実施形態においては、外部装置は2つであったが、3つ以上であってもよい。更に、上記各実施形態においては、入出力制御装置は、ディスクアレイユニットとホスト装置との間のデータの授受を制御するように構成されていたが、他の2つの外部装置間のデータの授受を制御するように構成されていてもよい。例えば、外部装置は、ハードディスク装置、テープ装置、端末装置及びホスト装置である。
本発明は、複数のハードディスク装置を有するディスクアレイ装置に適用可能である。
本発明の第1実施形態に係るディスクアレイ装置及びホスト装置の概略構成を表す図である。 図1に示したアダプタの概略構成を表す図である。 図1に示したアダプタのCPUが実行する起動プログラムを示したフローチャートである。 アダプタIDと作動モードとクラスタIDとからなるアダプタ属性情報を複数含むテーブルである。 図1に示したアダプタのCPUが実行する書込要求受信プログラムを示したフローチャートである。 図1に示したアダプタのCPUが実行する書込指示送信プログラムを示したフローチャートである。 図1に示したアダプタのCPUが実行する読込要求受信プログラムを示したフローチャートである。 図1に示したアダプタのCPUが実行する読込指示送信プログラムを示したフローチャートである。 図1に示したアダプタのCPUが実行する自クラスタ用作動状態変更プログラムを示したフローチャートである。 アダプタIDと作動モードとクラスタIDとからなるアダプタ属性情報を複数含むテーブルである。 アダプタID「#3」のアダプタがホスト装置と接続された状態におけるディスクアレイ装置を示した図である。 アダプタIDと作動モードとクラスタIDとからなるアダプタ属性情報を複数含むテーブルである。 アダプタID「#3」のアダプタがディスクアレイユニットと接続された状態におけるディスクアレイ装置を示した図である。 本発明の第2実施形態に係る入出力制御装置の概略構成を表す図である。 図14に示したアダプタのCPUが実行する切替器変更プログラムを示したフローチャートである。 アダプタID「#1」のアダプタ及びアダプタID「#2」のアダプタが第2切替器を介してホスト装置及びディスクアレイユニットとそれぞれ接続された状態における入出力制御装置を示した図である。 本発明の第3実施形態に係る入出力制御装置の概略構成を表す図である。 図17に示したアダプタのCPUが実行する他クラスタ用作動状態変更プログラムを示したフローチャートである。 アダプタIDと作動モードとクラスタIDとからなるアダプタ属性情報を複数含むテーブルである。 アダプタID「#6」のアダプタが第1切替器及び第1ディスク側ポートを介してディスクアレイユニットと接続された状態における入出力制御装置を示した図である。
符号の説明
1 ディスクアレイ装置
2 ホスト装置
2a 第1ポート
2b 第2ポート
10 ディスクアレイユニット
10a 第1ポート
10b 第2ポート
10c1〜10c16 HDD
20,20A,20B 入出力制御装置
20a1 第1ホスト側ポート
20a2 第2ホスト側ポート
20b1 第1ディスク側ポート
20b2 第2ディスク側ポート
21 第1切替器
21a1〜21a5 端子
22 第2切替器
22a1〜22a5 端子
23A〜23F アダプタ
23A1〜23F1 CPU
23A2〜23F2 メモリ
23A3〜23F3 インターフェース部
24 共有メモリ
25 第1切替器
25a1〜25a10 端子
26 第2切替器
26a1〜26a10 端子
CL1 第1クラスタ
CL2 第2クラスタ
P1 起動用プログラム
P2 ホストモード用プログラム
P3 ディスクモード用プログラム
P4 スペアモード用プログラム

Claims (13)

  1. 第1の外部装置及び第2の外部装置の一方からのデータを受け取るとともにその受け取ったデータを当該第1の外部装置及び当該第2の外部装置の他方へ送る入出力制御装置であって、
    前記第1の外部装置との間で前記データを授受する第1の入出力ユニットと、
    前記第2の外部装置との間で前記データを授受する第2の入出力ユニットと、
    前記第1の外部装置との間で前記データを授受する第1の作動状態と、前記第2の外部装置との間で前記データを授受する第2の作動状態と、を含む複数の作動状態のうちの1つに作動状態を設定可能な第3の入出力ユニットと、
    前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることを検出する異常状態検出手段と、
    前記入出力ユニットを識別する情報としての入出力ユニットIDと、当該入出力ユニットの作動モードと、を含む入出力ユニット属性情報を複数含むテーブルを記憶する共有メモリと、
    前記第1の入出力ユニットが異常状態にあることが検出された場合に、前記第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードを、当該第1の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードと交換し、一方、前記第2の入出力ユニットが異常状態にあることが検出された場合に、前記第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードを、当該第2の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードと交換する作動状態設定手段と、
    を備え、
    前記第3の入出力ユニットは、前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることが検出された場合、前記第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる、前記交換後の作動モードを読み込み、当該読み込んだ作動モードが表す作動状態にて作動するように構成される入出力制御装置。
  2. 請求項1に記載の入出力制御装置において、
    前記複数の作動状態は、前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることを検出する第3の作動状態を含み、
    前記異常状態検出手段は、前記第3の作動状態にて作動する前記第3の入出力ユニットからなる入出力制御装置。
  3. 請求項1又は請求項2に記載の入出力制御装置において、
    前記第3の入出力ユニットは、起動時に、当該第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードを読み込み、当該読み込んだ作動モードが表す作動状態にて作動するように構成され、
    前記作動状態設定手段は、前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることが検出された場合、前記第3の入出力ユニットを再起動させるように構成された入出力制御装置。
  4. 請求項1乃至請求項3のいずれか一項に記載の入出力制御装置において、
    前記作動状態設定手段は、
    前記第3の入出力ユニットと前記第1の外部装置とを接続する第1の接続状態と、当該第3の入出力ユニットと前記第2の外部装置とを接続する第2の接続状態と、を含む複数の接続状態の1つに接続状態を設定可能な切替器を含むとともに、
    前記切替器の接続状態を前記第1の接続状態に設定することにより前記第3の入出力ユニットの作動状態を前記第1の作動状態に設定し、一方、当該切替器の接続状態を前記第2の接続状態に設定することにより当該第3の入出力ユニットの作動状態を前記第2の作動状態に設定するように構成された入出力制御装置。
  5. 請求項4に記載の入出力制御装置において、
    前記第1の入出力ユニットは、前記切替器を介して前記第1の外部装置と接続されることにより当該第1の外部装置との間で前記データを授受するように構成され、
    前記第2の入出力ユニットは、前記切替器を介して前記第2の外部装置と接続されることにより当該第2の外部装置との間で前記データを授受するように構成され、
    前記第1の接続状態は、前記第1の入出力ユニットと前記第1の外部装置との接続を解除し、且つ、前記第3の入出力ユニットと当該第1の外部装置とを接続する状態であり、
    前記第2の接続状態は、前記第2の入出力ユニットと前記第2の外部装置との接続を解除し、且つ、前記第3の入出力ユニットと当該第2の外部装置とを接続する状態である入出力制御装置。
  6. 請求項5に記載の入出力制御装置であって、
    前記作動状態設定手段は、前記切替器を複数含むとともに、
    前記切替器の1つである使用切替器が異常状態にあることを検出する切替器異常状態検出手段と、
    前記使用切替器が異常状態にあることが前記切替器異常状態検出手段により検出された場合、当該使用切替器を介して接続されている前記入出力ユニット及び前記外部装置を、前記複数の切替器のうちの当該使用切替器以外の切替器を介して接続する切替器変更手段と、
    を備える入出力制御装置。
  7. 請求項1乃至請求項6のいずれか一項に記載の入出力制御装置において、
    前記第1の外部装置は、前記データとしての書込データを前記第2の外部装置へ送るとともに当該第2の外部装置からの前記データとしての読込データを受け取るホスト装置であり、
    前記第2の外部装置は、前記第1の外部装置からの前記書込データを記憶するとともに、当該記憶している書込データを前記読込データとして当該第1の外部装置へ送るディスクアレイユニットである入出力制御装置。
  8. 書込データを記憶するとともに、当該記憶している書込データを読込データとして出力するディスクアレイユニットを備えるとともに、
    前記書込データを出力し且つ前記読込データを入力するホスト装置及び前記ディスクアレイユニットの一方からの前記書込データ又は前記読込データであるデータを受け取るとともにその受け取ったデータを当該ホスト装置及び当該ディスクアレイユニットの他方へ送るディスクアレイ装置であって、
    前記ディスクアレイユニットとの間で前記データを授受する第1の入出力ユニットと、
    前記ホスト装置との間で前記データを授受する第2の入出力ユニットと、
    前記ディスクアレイユニットとの間で前記データを授受する第1の作動状態と、前記ホスト装置との間で前記データを授受する第2の作動状態と、を含む複数の作動状態のうちの1つに作動状態を設定可能な第3の入出力ユニットと、
    前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることを検出する異常状態検出手段と、
    前記入出力ユニットを識別する情報としての入出力ユニットIDと、当該入出力ユニットの作動モードと、を含む入出力ユニット属性情報を複数含むテーブルを記憶する共有メモリと、
    前記第1の入出力ユニットが異常状態にあることが検出された場合に、前記第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードを、当該第1の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードと交換し、一方、前記第2の入出力ユニットが異常状態にあることが検出された場合に、前記第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードを、当該第2の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードと交換する作動状態設定手段と、
    を備え、
    前記第3の入出力ユニットは、前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることが検出された場合、前記第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる、前記交換後の作動モードを読み込み、当該読み込んだ作動モードが表す作動状態にて作動するように構成されるディスクアレイ装置。
  9. 請求項8に記載のディスクアレイ装置において、
    前記複数の作動状態は、前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることを検出する第3の作動状態を含み、
    前記異常状態検出手段は、前記第3の作動状態にて作動する前記第3の入出力ユニットからなるディスクアレイ装置。
  10. 請求項8又は請求項9に記載のディスクアレイ装置において、
    前記第3の入出力ユニットは、起動時に、当該第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードを読み込み、当該読み込んだ作動モードが表す作動状態にて作動するように構成され、
    前記作動状態設定手段は、前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることが検出された場合、前記第3の入出力ユニットを再起動させるように構成されたディスクアレイ装置。
  11. 第1の外部装置との間でデータを授受する第1の入出力ユニットと、第2の外部装置との間でデータを授受する第2の入出力ユニットと、を備えるとともに、前記第1の外部装置及び前記第2の外部装置の一方からのデータを受け取るとともにその受け取ったデータを当該第1の外部装置及び当該第2の外部装置の他方へ送る入出力制御装置を制御するための入出力制御方法であって、
    前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることを検出
    前記第1の入出力ユニットが異常状態にあることが検出された場合に、前記入出力ユニットを識別する情報としての入出力ユニットIDと、当該入出力ユニットの作動モードと、を含む入出力ユニット属性情報を複数含むテーブルを記憶する共有メモリに記憶されている作動モードのうちの、前記第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードを、当該第1の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードと交換し、一方、前記第2の入出力ユニットが異常状態にあることが検出された場合に、当該共有メモリに記憶されている作動モードのうちの、前記第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードを、当該第2の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードと交換し、
    前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることが検出された場合、前記第3の入出力ユニットが、当該第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる、前記交換後の作動モードを読み込み、当該読み込んだ作動モードが表す作動状態にて作動する、入出力制御方法。
  12. 請求項11に記載の入出力制御方法において、
    前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあること検出する第3の作動状態にて前記第3の入出力ユニットが作動する、入出力制御方法。
  13. 請求項11又は請求項12に記載の入出力制御方法において、
    前記第1の入出力ユニット又は前記第2の入出力ユニットが異常状態にあることが検出された場合、前記第3の入出力ユニットを再起動させ、
    前記第3の入出力ユニットが、起動時に、当該第3の入出力ユニットを識別する入出力ユニットIDを含む前記入出力ユニット属性情報に含まれる作動モードを読み込み、当該読み込んだ作動モードが表す作動状態にて作動する、入出力制御方法。
JP2008007618A 2008-01-17 2008-01-17 入出力制御装置 Expired - Fee Related JP4483947B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008007618A JP4483947B2 (ja) 2008-01-17 2008-01-17 入出力制御装置
US12/354,636 US8151049B2 (en) 2008-01-17 2009-01-15 Input/output control unit, disk array apparatus, input/output control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008007618A JP4483947B2 (ja) 2008-01-17 2008-01-17 入出力制御装置

Publications (2)

Publication Number Publication Date
JP2009169708A JP2009169708A (ja) 2009-07-30
JP4483947B2 true JP4483947B2 (ja) 2010-06-16

Family

ID=40877346

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008007618A Expired - Fee Related JP4483947B2 (ja) 2008-01-17 2008-01-17 入出力制御装置

Country Status (2)

Country Link
US (1) US8151049B2 (ja)
JP (1) JP4483947B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160147924A (ko) * 2014-04-30 2016-12-23 후아웨이 테크놀러지 컴퍼니 리미티드 제어 방법 및 제어 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5566766B2 (ja) * 2009-05-29 2014-08-06 株式会社東芝 超音波診断装置、画像表示装置、画像表示方法、表示方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61208140A (ja) 1985-03-12 1986-09-16 Fujitsu Ltd 診断制御方式
JPH04195354A (ja) 1990-11-28 1992-07-15 Toshiba Corp パーソナルコンピュータシステム
JP3448197B2 (ja) 1997-03-10 2003-09-16 富士通株式会社 情報処理装置
JP2001024673A (ja) 1999-07-05 2001-01-26 Japan Radio Co Ltd データ通信システムおよびデータ入出力ユニット
JP4039794B2 (ja) * 2000-08-18 2008-01-30 富士通株式会社 マルチパス計算機システム
US6850997B1 (en) * 2000-09-27 2005-02-01 International Business Machines Corporation System, method, and program for determining the availability of paths to a device
JP3964212B2 (ja) * 2002-01-16 2007-08-22 株式会社日立製作所 記憶装置システム
US20040068591A1 (en) * 2002-10-03 2004-04-08 Workman Michael Lee Systems and methods of multiple access paths to single ported storage devices
JP2005004791A (ja) 2004-08-23 2005-01-06 Hitachi Ltd ディスク制御装置
JP2007146633A (ja) 2005-11-07 2007-06-14 Nippon Electric Glass Co Ltd プリズムガラス、その製造方法及びプリズムガラス構築体
JP4740763B2 (ja) 2006-02-15 2011-08-03 株式会社日立製作所 ストレージシステム及びストレージコントローラ
JP4635941B2 (ja) 2006-03-31 2011-02-23 日本電気株式会社 ディスクアレイサブシステム
US7941655B1 (en) * 2006-10-31 2011-05-10 Hewlett-Packard Development Company, L.P. Extensible firmware interface with pre-start configuration phase for computers

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160147924A (ko) * 2014-04-30 2016-12-23 후아웨이 테크놀러지 컴퍼니 리미티드 제어 방법 및 제어 장치
US10579394B2 (en) 2014-04-30 2020-03-03 Huawei Technologies Co., Ltd. Control method and control device

Also Published As

Publication number Publication date
US8151049B2 (en) 2012-04-03
JP2009169708A (ja) 2009-07-30
US20090187706A1 (en) 2009-07-23

Similar Documents

Publication Publication Date Title
JP4939102B2 (ja) ネットワークブート計算機システムの高信頼化方法
JP4940967B2 (ja) ストレージシステム、ストレージ装置、ファームウェアの活***換方法、ファームウェアの活***換プログラム
JP5493452B2 (ja) 復旧サーバ、復旧処理プログラム及び計算機システム
JP2008299509A (ja) 仮想計算機システム
JP6237406B2 (ja) 情報処理装置、ストレージシステム、およびプログラム
JP2009009200A (ja) ストレージシステム及びストレージシステムの制御方法
JP2015525424A (ja) ネットワークストレージシステムにおける無停止のコントローラの交換
JP5022062B2 (ja) プールi/oデバイス動作確認方法、及び計算機システム
JP2010152508A (ja) 制御装置、ディスクアレイ装置および制御方法
JP5810891B2 (ja) 情報処理装置及び動作状態監視方法
JP4483947B2 (ja) 入出力制御装置
US8972777B2 (en) Method and system for storage management
KR20050033060A (ko) 네트워크를 이용한 핫 스페어 구성 시스템 및 방법
US9207741B2 (en) Storage apparatus, controller module, and storage apparatus control method
WO2011158367A1 (ja) 実行中のプログラムの更新技術
JP5484434B2 (ja) ネットワークブート計算機システム、管理計算機、及び計算機システムの制御方法
JP2006260141A (ja) 記憶システムの制御方法、記憶システム、記憶制御装置、記憶システムの制御プログラム、情報処理システム
JP2005339131A (ja) バックアップ方法、バックアップシステム、ディスク制御装置、及びバックアッププログラム
TW201629757A (zh) 端點伺服器的控制模組及其韌體更新方法
JP2005122763A (ja) 記憶装置
JP4893731B2 (ja) 通信制御装置
JP2007293802A (ja) ディスクアレイ装置、ディスクアレイ装置の制御方法及びディスクアレイ装置の制御プログラム。
JP2009230484A (ja) ストレージサブシステム、ストレージシステム、ファームウェア置換方法、及びプログラム
JP4260141B2 (ja) ストレージ装置およびストレージ装置のホスト接続処理方法
JP4816983B2 (ja) ディスクアレイ装置、ディスクアレイ装置における電源制御方法及び電源制御プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100202

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: 20100302

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: 20100315

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: 20130402

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140402

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees