JP4620502B2 - ディスクアレイ装置 - Google Patents

ディスクアレイ装置 Download PDF

Info

Publication number
JP4620502B2
JP4620502B2 JP2005062097A JP2005062097A JP4620502B2 JP 4620502 B2 JP4620502 B2 JP 4620502B2 JP 2005062097 A JP2005062097 A JP 2005062097A JP 2005062097 A JP2005062097 A JP 2005062097A JP 4620502 B2 JP4620502 B2 JP 4620502B2
Authority
JP
Japan
Prior art keywords
package
data
control
disk array
base
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
JP2005062097A
Other languages
English (en)
Other versions
JP2006244340A (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.)
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 JP2005062097A priority Critical patent/JP4620502B2/ja
Priority to US11/127,205 priority patent/US7890698B2/en
Publication of JP2006244340A publication Critical patent/JP2006244340A/ja
Priority to US12/959,627 priority patent/US20110078374A1/en
Application granted granted Critical
Publication of JP4620502B2 publication Critical patent/JP4620502B2/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/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/325Display of status information by lamps or LED's
    • G06F11/326Display of status information by lamps or LED's for error or online/offline status
    • 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
    • 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/2012Error 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 and using different communication protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B33/00Constructional parts, details or accessories not provided for in the other groups of this subclass
    • G11B33/12Disposition of constructional parts in the apparatus, e.g. of power supply, of modules
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B33/00Constructional parts, details or accessories not provided for in the other groups of this subclass
    • G11B33/14Reducing influence of physical parameters, e.g. temperature change, moisture, dust
    • G11B33/1406Reducing the influence of the temperature
    • G11B33/1413Reducing the influence of the temperature by fluid cooling
    • G11B33/142Reducing the influence of the temperature by fluid cooling by air cooling
    • 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/2015Redundant power supplies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明は、ハードディスクドライブ(HDD)等の記憶装置と前記記憶装置に対するデータの記憶を制御する記憶制御装置(以下、DKCと略称する)とを備えRAID制御が可能なディスクアレイ装置(ストレージ装置ともいう)に関し、特に、ボード(回路基板)やそのパッケージ(以下、PKと略称する)などによるDKCの実装の技術に関する。
従来のディスクアレイ装置は、一例として、DKCが、機能に対応した多重の処理部を実装したボードの相互接続により構成される。機能は、DKCに対して通信接続されるホストコンピュータ(以下、ホストとも称する)等の外部装置に対するI/F(インタフェース)や、HDD(以下、ドライブとも称する)に対するI/Fや、データキャッシュのためのキャッシュメモリ(以下、CMと略称する)等のメモリや、各部間のデータ転送のためのスイッチといったものである。前記ホスト等の外部装置に対するI/F(チャネルI/FまたはホストI/F等と称する)としては、ファイバチャネル(以下、FCと略称する)などの各種がある。同様に前記HDDに対するI/F(ディスクI/FまたはドライブI/F等と称する)としても、SCSIなどの各種がある。前記チャネルI/Fに対応した処理部を、チャネル制御部(CHA)等と称する。前記ディスクI/Fに対応した処理部を、ディスク制御部(DKA)等と称する。前記各機能に対応したボードやそのPKにおいて、例えば各I/Fのボードでは、1つのボードに複数の同一種類I/Fのポート(I/Fポートともいう)を備えた構成で、対応I/Fの通信処理や、DMA(ダイレクトメモリアクセス)データ転送処理などが行われる。
本明細書では、前記ボードを中心に含んで、当該ボードをディスクアレイ装置筐体に装着・接続するための電気的・機械的構造などと共に一体的に形成された部位を、PKと称する。また、DKCを構成する各PKを、制御PKとも称する。前記PKは、例えば、筐体に有するボックスのスロットに対して挿抜される形式及び構造を有する。
また、ディスクアレイ装置の一機能として、1つのDKCで異種I/Fの装置間の転送が可能な機能(仮想化ともいう)が求められている。従来構成では、異種I/Fについては異なるボード/PKとして提供されている。ユーザの使用するホストを含むシステムに応じて、必要となる各I/Fのボード/PKが用意される。従って、例えば複数種類のI/Fに対応して異種I/F間の転送が可能な構成とするためには、異種I/Fの各ボード/PKが相互接続される形態となる。
特許文献1には、DKC構成例として、複数の同一種類のI/Fポートを1つのボード/PK内にまとめた構成について記載されている。
特開2001−306265号公報
ディスクアレイ装置においては、ユーザの要求に応じるために更なる性能向上を図る必要がある。また、低コストにするために、ユーザのシステムや要求などに応じて柔軟にI/Fポート数や性能を変更できるように、ディスクアレイ装置のシステムにスケーラビリティを持たせることが望ましい。またDKCにおいて、異種I/F間の転送や、他社製品に対する接続などについても柔軟に対応して、そのデータ転送性能も向上させたい。
従来のDKC構成では、ホストI/F制御を行うCHA、ドライブI/F制御を行うDKAなどの機能の部位ごとにそれぞれマイクロプロセッサ(MP)を持つ構成で、転送パスの制御を行っていた。しかし、制御PKごとに決められた種類のI/Fしかサポートしていないため、ディスクアレイ装置の構成時、例えば最小限構成時に、ポートやプロセッサ等が必要以上に増えることや、また異なるI/Fポートを増やすために別の制御PKを増設する必要などがあった。ユーザの要求に完全に対応したシステム構成にすることは困難だった。また、接続・使用されない転送パスのプロセッサを有効に使えない、すなわち当該プロセッサを利用して負荷分散できないということがあった。また、異種I/F間の転送においては、必ずDKCにおける共通の接続網を使用しないと転送できないため、その転送性能が抑えられることや、他の転送にも影響を及ぼして装置としてのシステム性能にも影響があった。
本発明は以上のような問題に鑑みてなされたものであり、その目的は、前記DKCを構成するボードまたはそのPK、及びそれらの相互接続によるDKC構成などに関して、スケーラビリティ、異種I/F間のデータ転送などの性能向上、及び保守性や信頼性の向上などを実現する技術を提供することにある。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。前記目的を達成するために、本発明のディスクアレイ装置は、HDD等の記憶装置と、前記記憶装置に対するデータの記憶を制御する記憶制御装置(DKC)とを備え、RAID制御が可能で、ホスト等の外部装置からのデータ入出力要求に応じて前記記憶装置上の記憶ボリュームに対してデータを入出力処理するディスクアレイ装置であって、以下に示す技術的手段を備えることを特徴とする。
本発明のディスクアレイ装置では、DKCは、ボードを含んで構成される制御PKの相互接続により構成され、制御PKは、DKCに対する相互接続のベースとなるPK(ベースPKと称する)と、ベースPKに対して階層的に接続される、個々に分離された機能が実装されたPK(機能PKと称する)とを有して構成される。I/Fやメモリやプロセッサといった各機能を個々に分離して実装した機能PKまたはボードとして提供し、同一制御PK内で異種I/Fを混在可能な形式として階層的接続構成とする。各機能が、I/F-PK、メモリPK、プロセッサPK等として構成される。機能PKが、ベースPKのスロットに対してコネクタ等の接続部構造を介して挿抜される。ベースPKと機能PKの組み合わせを、ミックスPKと称する。各機能PKとベースPKを活線栓挿抜に対応した構造とする。ミックスPKは、機能PKの組み合わせによる特徴的な機能を提供する。DKCにおいて、機能PKとベースPKとの間の通信と、ベースPK間の通信とを用いて、プロセッサによる制御により、外部装置や記憶装置との間のデータ転送を含む処理を行う。
ベースPKは、前記相互接続のための第1の接続部と、複数の異種の機能PKを混在して接続可能な第2の接続部と、機能PK間及びDKCとのデータ転送及びプロセッサ間通信のためのパッケージ内接続網(LN)とを有する。または更にベースPKはLNに接続されるプロセッサを有してもよい。ベースPKに有するプロセッサは、DKC内における処理を制御するプロセッサとして機能する。
機能PKは、ベースPKとの接続部と、機能に応じた処理部とを有する。特にI/Fを実装したI/F-PKは、I/F制御を行うアダプタや外部とのポート等を有する。また特にメモリを備えたメモリPKは、そのメモリが、DKCにおけるローカルキャッシュメモリ(LCM)として機能する。また特にプロセッサを備えたプロセッサPKは、そのプロセッサが、DKC内における処理を制御するプロセッサとして機能する。
DKCは、LNが相互接続される、ベースPKを含む部位間での通信のためのグローバル接続網として、ベースPK間でのデータ転送のためのデータパス制御スイッチ(DSW)と、ベースPK間でのプロセッサ間通信のためのプロセッサ接続網(PN)とを有する。また、DKCは、DSWに接続されるグローバルキャッシュメモリ(GCM)と、機能PKとして、外部装置に対するI/Fに対応したチャネルI/Fパッケージと、HDDに対するI/Fに対応したドライブI/Fパッケージとを有する。
ミックスPKにメモリPKを有する場合、そのメモリ(LCM)にデータキャッシュしながらデータ転送処理する。ミックスPKに異種I/FのI/F-PKが混在している場合、異種I/F間でのデータ転送がそのミックスPK内で処理される。またDKCにLCMとGCMの双方を有する場合、双方のCMを利用してデータキャッシュしながらデータ転送処理する。
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。本発明によれば、DKCを構成するボードまたはそのPK、及びそれらの相互接続によるDKC構成などに関して、スケーラビリティ、異種I/F間のデータ転送などの性能向上、及び保守性や信頼性の向上などを実現できる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一符号を付し、その繰り返しの説明は省略する。図1〜18は、本発明の実施の形態におけるディスクアレイ装置を説明するための図である。図19は、従来のディスクアレイ装置の構成例を説明するための図である。本実施の形態において、PK組み合わせにより、図7〜9他に示すような各DKC構成例が可能である。また、特に図15〜17では、本実施の形態のうち、プロセッサ相互接続網(PN)に関する実施の形態を示す。
本発明の一実施の形態におけるディスクアレイ装置1を説明する。本実施の形態では、DKCを構成する制御PKに関して、特にチャネルI/F・ドライブI/FといったI/Fを中心に、その他、メモリ、プロセッサといった機能部分を個々に分離した機能PKとして構成する。それぞれ、I/F-PK、メモリPK、プロセッサPK等として構成する。同一制御PK内で、各種I/Fや機能を、機能PKの組み合わせにより混在可能な形式である。接続のベースとなるベースPKに対して機能PKを自由に装着脱する、階層的接続構成である。ベースPKと機能PKの組み合わせを、ミックスPKとし、従来の制御PKに代わって提供する。各機能PKにも活線挿抜の形式を採用し、稼動中でもベースPKに対して挿抜可能とする。適用対象のI/Fは、ファイバ、メタル、メインフレーム系、ドライブI/F等の各種である。ベースPKと機能PKの自由な組み合わせの構成により特徴的機能を実現し、ポート数やドライブ数に柔軟に適合したDKC構成を提供する。
<ハードウェア外観>
図1は、ディスクアレイ装置1の全体のハードウェア外観構成を示す斜視図である。ディスクアレイ装置1は、例えば基本筐体と増設筐体とから構成できる。図1は、基本筐体の前面右斜め上から筐体を透過して見たものであり、筐体内各部の配置の概略を示している。基本筐体は、最小構成単位であり、DKC10などが担う記憶制御機能と、HDD30などが担う記憶機能との両方を備える。増設筐体は、オプション単位であり、記憶機能を備える。記憶制御機能は、通信接続されるホストなどの他装置からの要求や命令に応じて、記憶機能の提供する記憶領域に対するデータの記憶を制御する。各筐体間が通信ケーブルで通信可能に接続される。
基本筐体には、下から、複数のバッテリ191、複数のACボックス192、複数のAC−DC電源193、DKCボックス194、複数のファン195、SVP196、パネル197、HDDボックス198、複数のファン199等が配備されている。
バッテリ191は、AC−DC電源193に対して接続され、停電時のバックアップ電源として機能する。ACボックス192は、入力AC電源を接続する部分であり、AC−DC電源193と接続される。AC−DC電源193は、入力AC電源についてAC−DC変換を行い、DKC10等の各部位に対してDC電源を供給する。
DKCボックス194は、DKC10を構成する制御PK100を装着可能な複数のスロット等の構造を有する。制御PK100は、各スロットでガイドレールに沿ってそれぞれ挿抜可能に接続され、制御PK100単位で交換可能となっている。制御PK100は、ホストI/F等の機能を実装したボードを中心に含んで、DKCボックス194等に装着するためのキャニスタ等の電気的・機械的構造を加えて一体的にモジュール化されたものである。各種の制御PK100の相互接続によってDKC10が実現される。DKCボックス194内には、制御PK100の相互接続のためのバックプレーン(BPと略称する)ボード90を有する。各制御PK100の側のコネクタが、スロット内でBPボード90の側のコネクタに接続される。
SVP(保守・管理端末)196は、ディスクアレイ装置1の保守・管理の処理を担当するプロセッサを持つ装置である。SVP196は、例えばノート型PCの形態を有し、通常時には筐体内に収容され必要時に前面に取り出され使用される。保守員は、SVP196を操作して、保守・管理の処理を行うことが可能である。パネル197は、ディスクアレイ装置1の基本操作のためのスイッチや、各種情報表示を行う表示器などが配置されている。筐体内に設けられた複数のファン195,199は、筐体内の部位に対して送風することにより空冷する。
HDDボックス198には、DKU(ディスクユニット)300を構成する複数のHDD30が、HDU(HDDユニット)の形態で、並列的に、それぞれ挿抜可能に接続される。HDUは、HDD30を含んで、装着のためのキャニスタ等の構造を加えて一体的にモジュール化されたものである。
<情報処理システム>
図2は、ディスクアレイ装置1を含んで構成される情報処理システムの全体の構成を示すブロック図である。本情報処理システムは、ディスクアレイ装置1、複数のホスト50、ネットワーク70、外部ディスク制御装置80を有する。ホスト50とディスクアレイ装置1が、直接またはネットワーク70を介して通信接続される。また、ディスクアレイ装置1と外部ディスク制御装置80が、直接またはネットワーク70等を介して通信接続される。外部ディスク制御装置80は、HDD(各図では「DRV」として示す)30等の記憶装置を接続する。
ディスクアレイ装置1は、DKC10と、DKU300と、SVP196とを有する構成である。本実施の形態では、DKC10は、特にBPボード90における複数のミックスPK100の相互接続により構成される。DKC10は、DKU300と通信接続される。DKU300は、複数のDRV30を含む。DKC10は、DRV30上の記憶ボリュームに対してデータを読み書きする。DKC10はDRV30のグループに対してRAID制御を行うことができる。SVP196は、DKC10の各ミックスPK100に対して内部のLAN190を通じて通信接続される。
ホスト50は、ディスクアレイ装置1に対してアクセスし、ディスクアレイ装置1の機能を利用してDRV30上の記憶ボリュームに対してデータ入出力を行う上位装置である。ホスト50とDKC10との間で、所定のI/Fでの通信が行われる。DKC10と、ホスト50や外部ディスク制御装置80等との間のI/Fは、例えば、FCや、FICON(Fibre Connection)(登録商標)やESCON(Enterprise System Connection)(登録商標)等のメインフレーム系のプロトコルや、TCP/IP等のプロトコルが用いられる。
外部ディスク制御装置80は、ディスクアレイ装置1の外部に接続される、記憶制御機能を備えDRV30に対してデータ入出力を行う装置である。DKC10と外部ディスク制御装置80の間で、所定のI/Fでの通信が行われる。外部ディスク制御装置80は、ディスクアレイ装置1と同様の機能を備える装置であってもよいし、他の機能を備える装置であってもよい。
ネットワーク70は、例えばFCプロトコルに準拠した1つ以上のスイッチ等の通信機器により構築されたSAN(Storage Area Network)である。その場合、ホスト50の備える通信I/F部であるHBA(ホストバスアダプタ)と、ディスクアレイ装置1の備える通信I/F部であるCHAは、FCプロトコルに従った通信処理機能を持つ。FCの場合、送受信データは、所定のデータ長ごとに1つ以上のデータブロックに分割され、データブロックを単位として制御される。ホスト50からディスクアレイ装置1に対して、FCプロトコルに従ったブロック単位のデータI/O要求(ブロックアクセス要求)が送信され、DKC10で応答処理される。
DKC10は、信頼性を確保するために論理的なクラスタ構成を採ることが可能であり、例えば、電源部、DKC10、DKU300を、二重化されたクラスタ構成とする。同機能のDKCを含む、クラスタ(CL)#1,#2による構成が設定される。一方のクラスタが障害などによりダウンした際でも他方のクラスタの稼動継続によりサービス提供が維持できる。
ホスト50は、CPU、メモリ、通信I/F部(ホストバスアダプタ)などを備える、例えばPC、ワークステーション、サーバ、メインフレームコンピュータといった形態の情報処理装置である。ホスト50は、前記CPUにより前記メモリ上の各種プログラムが実行されることにより、ホストとしての様々な機能が実現される。ホスト50は、ディスクアレイ装置1に対するデータ入出力を行うための管理プログラムと、ディスクアレイ装置1を利用して情報処理サービスを提供するためのアプリケーションプログラム等とを備える。
SVP196は、ディスクアレイ装置1を保守・管理処理するためのプロセッサを持つ情報処理装置であり、ディスクアレイ装置1に内蔵または外部接続される形態である。本例では、SVP196がDKC10に対してLAN190を通じて内部接続される形態である。SVP196は、ディスクアレイ装置1の構成情報・障害情報・管理情報などの管理を行う。オペレータによるSVP196の操作により、例えばDKU300の物理ディスク構成やLU(論理ユニット)の設定、CHA等において実行されるプログラムのインストール等が可能である。また、SVP196は、保守・管理専用の形態や、汎用コンピュータ上に保守・管理機能を持たせた形態などが可能である。SVP196は、例えば、CPU、メモリ、ポート、キーボード等の入力装置、ディスプレイ等の出力装置、HDD等の記憶装置、FDドライブ等の記録媒体読み取り装置などを備える。前記CPUが全体の制御を行い、前記メモリ上のプログラムを実行して保守・管理機能を含む本発明に係わる制御を実現する。前記メモリや記憶装置に、前記本発明に係わる制御で使用するプログラムや各種情報が記憶される。前記ポートはLAN190に対し接続される。前記入力装置、出力装置、記録媒体読み取り装置などを利用してオペレータが操作を行う。特に保守員は、SVP196を操作して、制御PK100の保守・交換に係わる処理を行うことができる。またSVP196が通信手段を介して外部装置に対して通信接続される形態も可能である。またSVP196とは別の保守・管理装置を外部に通信接続する形態も可能である。例えば、保守・管理用のプログラムを実行するホスト50を保守・管理装置として使用可能である。
<DKC>
DKC10は、ミックスPK100、GCM(グローバルキャッシュメモリ)130、DSW(データパス制御スイッチ)151、PN(プロセッサ相互接続網)152、内部のLAN190等を有する構成である。ミックスPK100は、CHAやDKAその他の、各PKの組み合わせに応じた特徴的機能を構成する。CHAは、ホスト50や外部ディスク制御装置80を含む外部装置に対するI/F部である。DKAは、DRV30を含む記憶装置に対するI/F部である。GCM130は、DKC10内で各PKに共用される、グローバルなキャッシュメモリである。DSW151は、DKC10内で、GCM130に対するデータ転送を含む、PK間のグローバルなデータ転送用の接続網であり、特に高速スイッチの形態である。PN152は、DKC10内における、PK間のプロセッサ間通信用のグローバルな相互接続網である。
前記制御PK100に対応するミックスPK100は、ベースPK101と、機能PK102の組み合わせとで構成される。ベースPK101は、DKC10に対して接続される1次階層的なPKであり、機能PK102を複数接続可能な構成である。機能PK102は、ベースPK101に対して接続される2次階層的なPKであり、分離された機能を担う。機能PK102の接続の有無と種類は自由である。機能PK102は、ユーザのシステムや要求に応じて接続され、ディスクアレイ装置1のシステムにおけるスケーラビリティを有する。
ベースPK101は、LN(PK内相互接続網)103を有する。LN103は、データ転送とプロセッサ間通信とを含む通信が可能な、ローカルな接続網である。図2の場合、1つのベースPK101は、4つの機能PK102を接続可能なキャパシティを持つ構成である。またベースPK101は、プロセッサを内部に備える形態と備えない形態とが可能である。例えばミックスPK#1,#3(100)におけるベースPK101は、MPを備える。
機能PK102として、I/F-PK210、LCM-PK215、MP-PK216を有する。機能PK102として特に、DKC10の外部とのI/Fを担うものをI/F-PK210と称する。LCM-PK215はメモリPKである。MP-PK216はプロセッサPKである。図2の場合、ミックスPK#1(100)は、I/F-PK#1〜#4(210)が接続状態である。I/F-PK#1(210)は、ホスト50に接続されている。I/F-PK#2,#3(210)は、ネットワーク70に接続されている。I/F-PK#4(210)は、外部ディスク制御装置80に接続されている。ミックスPK#2(100)は、I/F-PK#5,#6(210)、LCM-PK215、MP-PK216が接続状態である。ミックスPK#3(100)は、I/F-PK#7〜#10(210)が接続状態である。ミックスPK#4(100)は、I/F-PK#11,#12(210)が接続状態で、2つが空き状態である。I/F-PK#11,#12(210)は、DKU300に接続されている。各I/F-PK#1〜#12(210)は、同種I/Fでも異種I/Fでも構わない。例えば、ミックスPK#1(100)で、各I/F-PK#1〜#4(210)を、異種I/Fの混在とする。
DSW151と各LN103及びGCM130とを接続するDパス(データパス)は、データ転送のために設定され使用される。PN152と各LN103とを接続するPパス(プロセッサパス)はプロセッサ間通信のために設定され使用される。なお、前記グローバルとは、DKC10内でPK間による通信に用いられることを指し、前記ローカルとは、PK内による通信に用いられることを指す。
図2中では、ホスト50や外部ディスク制御装置80に接続される機能PK102を含むミックスPK100(例として#1)は、主にCHAとして機能している。また、DRV30に接続される機能PK102を含むミックスPK100(例として#4)は、主にDKAとして機能している。
<従来構成>
図19は、従来のディスクアレイ装置におけるDKCの構成例を示し、特に、外部ディスク制御装置80との接続構成及びデータ転送動作についても示す。ディスクアレイ装置901は、DKC910において、ホスト50とのI/F制御を行うCHA-PK911、DRV30とのI/F制御を行うDKA-PK912、データキャッシュのためのCMとなるCM-PK913、データ転送制御用の接続網となるCSW(キャッシュスイッチ)-PK914等の制御PKの接続による構成を有する。CHA-PK911として、ESCON-I/Fに対応した第1のCHAとファイバI/Fに対応した第2のCHAとを有する。
従来のDKC910の構成では、CHA、DKAなどの機能ごとにそれぞれプロセッサ(MP)920,923を持つ構成で、転送パスの制御を行っていた。前記転送パスは、各部間の物理的なバスラインなどの上に設定される論理的なパスである。従来構成では、制御PK(CHA-PK911及びDKA-PK912)ごとに決められた1種類のI/Fしかサポートしていない。そのため、異種I/Fに接続する必要がある場合には、異種I/Fのポートを増やすために当該I/Fに対応する別の制御PKを増設する必要がある。このような構成により、ディスクアレイ装置の構成時、例えば最小限構成時に、ポートやプロセッサが必要以上に多くなってしまうことがあった。従ってユーザの要求に完全にあるいは詳細に対応したDKC構成にすることは困難だった。また、接続・使用されない転送パスのプロセッサを有効に使えない、すなわち当該プロセッサを利用して負荷分散できないということがあった。また、異種I/F間のデータ転送、例えば外部接続時データ転送においては、必ずDKC910における共通接続網(CSW-PK914が相当する)を使用して制御PK間の転送が必要となるため、その分、性能が上がらないことや、前記共通接続網を使用するために他の通信にも影響を及ぼしシステム性能にも影響があった。
また従来構成で、プロセッサ(MP920など)間の通信については、所定の共有メモリへのアクセスパスを持つ状態でDMA転送においてメモリアクセスで情報交換を行っていた。共有メモリには、データ入出力に関するディレクトリ情報などを記憶している。プロセッサは、ホスト50等からの受信コマンドにおける要求データの有無や位置を判断する。例えばCHAにおいて、MP920は、いずれかのDTA921に対して、要求データの位置を探し出させる指示を行い、DTA921により共有メモリの情報を確認させ、前記要求データの位置などを判断していた。
図19では、2つのCHA及びDKAを有し、それぞれ2系統のポートを有する場合を示す。CHA-PK911は、多重のポート部、MP920、DTA(データ転送制御部)921などを有する。ポート部は、ホスト50との間でI/Fに応じた通信処理を行う。MP920は、CHAとしての制御を行う。DTA921は、CSW-PK914を介したDMAデータ転送処理などを行う回路である。
DKA-PK912は、多重のポート部、MP923、DTA(データ転送制御部)924などを有する。ポート部は、DRV30との間でI/Fに応じた通信処理を行う。MP923は、DKAとしての制御を行う。DTA924は、CSW-PK914を介したDMAデータ転送処理などを行う回路である。DRV30は、DKAと、例えば2つのパスにより接続されている。
CM-PK913は、CMA(キャッシュメモリアダプタ)926と、メモリ927とを有する。CMA926は、CSW-PK0914と接続され、メモリ927を制御する回路である。CSW-PK914は、キャッシュメモリに対するデータ転送を制御するスイッチである。CSW-PK914は、転送パスの調停などを行うCARB(キャッシュ調停回路)928を有する。
ホスト50は、一方のCHA-PK911とESCON-I/Fで接続されており、DRV30に対するデータ入出力を行う。外部ディスク制御装置80は、他方のCHA-PK911とファイバI/Fで接続されており、DRV30に対するデータ入出力を行う。
DKC910におけるデータ転送処理例は、以下である。図19中、a1で示す動作は、ホスト50からCMへのデータ転送を示す。第1のCHAは、ホスト50からデータを、ポート部の処理を介して受信する。第1のCHAは、CSWを介して、CM-PK913のメモリ927へデータを書き込む。a2で示す動作は、CMからホスト50へのデータ転送を示す。第1のCHAは、CSWを介して、CM-PK913のメモリ927からデータを読み出す。第1のCHAは、読み出したデータを、ポート部の処理を介してホスト50へ送る。ホストは第1のCHAからのデータを受信する。a3で示す動作は、CMからDKAに接続されるDRV30へのデータ転送を示す。DKAは、CSWを介して、CM-PK913のメモリ927からデータを読み出す。DKAは、読み出したデータを、ポート部の処理を介してDRV30へ送る。DRV30は、送られたデータをディスク領域へ書き込む。a4で示す動作は、DKAに接続されるDRV30からCMへのデータ転送を示す。DKAは、DRV30から読み出したデータを、ポート部の処理を介して受信する。DKAは、CSWを介して、CM-PK913のメモリ927へデータを書き込む。
また、a5で示す動作は、CMから外部ディスク制御装置80に接続されるDRV30へのデータ転送を示す。第2のCHAは、CSWを介して、CM-PK913のメモリ927からデータを読み出し、ポート部の処理を介して外部ディスク制御装置80へ送信する。そして外部ディスク制御装置80からDRV30へデータ書き込みされる。a6で示す動作は、外部ディスク制御装置80に接続されるDRV30からCMへのデータ転送を示す。まずDRV30から外部ディスク制御装置80へデータ読み出しされる。そして、第2のCHAは、外部ディスク制御装置80から、ポート部の処理を介してデータを受信し、CSWを介して、CM-PK913のメモリ927へデータを書き込む。
上記各動作で、各CHA-PK911,DKA-PK912では、MP920,923の制御に従ってDTA921,924によりCM-PK913との間でのDMAデータ転送処理を行う。またCSW-PK914では、CARB928により、CM-PK913のCMA926を介してメモリ927に対してデータを読み書きする。
例えば、ホスト50からディスクアレイ装置901内のDRV30へのデータ書き込みの場合は、a1,a3の動作が順に行われる。ホスト50からのディスクアレイ装置901内のDRV30からのデータ読み出しの場合は、a4,a2の動作が順に行われる。また、ホスト50から外部ディスク制御装置80へのデータ転送の場合は、a1,a5の動作が順に行われる。外部ディスク制御装置80からホスト50へのデータ転送の場合は、a6,a2の動作が順に行われる。
従来構成では、異種I/F間のデータ転送時には、そのI/F分のCHA-PK911が必要であり、またCHA-PK911間での転送処理が必須であった。本例で言えば、ホスト50とのESCON-I/Fと、外部ディスク制御装置80とのファイバI/Fとに跨る転送において、第1のCHA-PK911と第2のCHA-PK911の間でCSW-PK914及びCM-PK913を介した転送処理を要する。
なおDKCにおいて1つの1種類のI/Fポートに対応した構成の各PKを必要に応じて用意して相互接続する構成を考えることができるが、その場合、各PKからメモリ等に対するデータ転送を行うスイッチやあるいはメモリに対する接続・配線などの構成が複雑・大容量になり不利である。そのため、従来技術では、複数の同一種類のI/Fポートを1つのボード/PK内にまとめた構成を提供していた。
<ベースPK>
図3(a)〜(c)は、ベースPK101の構成例を示す。(a)は、機能PKを挿抜可能な4つのスロットと2つのプロセッサとを備えた例、(b)は、2つのスロットと1つのプロセッサとを備えた例、(c)は、4つのスロットを備えプロセッサを備えない例を、それぞれ示す。本例に限らず、ベースPK101におけるコネクタ106や搭載MP104の数は任意にできる。なお各図ではコネクタを「C」として示す。
図3(a)で、ベースPK101は、LN103、MP104、BPボード90に接続されるコネクタ105、機能PKを接続するための複数のコネクタ106、保守用のLED(発光ダイオード)107を有する。LN103は、データ転送用の相互接続網とプロセッサによる制御用の相互接続網とを含んでいる。LN103は、MP104、コネクタ105、各コネクタ106を接続している。各コネクタ106に接続された機能PK102は、LN103において内部で通信可能に接続される。LN103は、コネクタ105及びBPボード90を介して、DSW151及びPN152に接続され、外部の他PKや処理部などとの間で通信可能である。MP104は、DKC10内における各種制御用のプロセッサとして機能する。MP104は、自分が搭載されているミックスPK100内の各機能PK102の制御以外にも、他のミックスPK100に対する制御もPN152を介して行うことができる。コネクタ105は、BPボード90のコネクタ(91)と接続される。コネクタ106は、機能PK102のコネクタ(224)と接続される。ベースPK101と機能PK102との接続において、ベースPK101の複数のコネクタ106は、異種の機能PK102の接続が可能なように統一された形式である。LED107は、PK保守・管理に係わる表示を行う表示器である。LED107の表示は、ベースPK101内外から制御される。LED107の表示により、当該ベースPK101が保守交換対象であること等が示される。LED107については、各機能PK102を接続するスロットに対応して設けて、各機能PK102の状態を表示するように制御する構成としてもよい。
図3(b),(c)は規模を削減した例であり、(a)と同様の機構を有する。各ベースPK101は、コネクタ105を通じた、DKCボックス194及びBPボード90の接続部に対する活線挿抜に対応した構造を有する。(a),(c)では、ベースPK101は、最大4つの機能PK102を接続可能なキャパシティを持つ。(b)では、ベースPK101は、(a)の半分のキャパシティを有する。(c)では、ベースPK101は、MP104を有さないが、他の部位に有するいずれかのプロセッサにより制御が行われる。
<機能PK,I/F-PK>
図4(a)〜(c)は、機能PK102の構成例を示す。(a)はI/F-PK210として特にチャネルI/F-PKを、(b)はメモリPKであるLCM-PK215を、(c)はプロセッサPKであるMP-PK216を、それぞれ示す。
図4(a)で、I/F-PK210として、ホスト50との制御を行うチャネルI/Fに対応したPKをチャネルI/F-PKと称する。I/F-PK210は、言い換えれば、特定の1つ以上のI/Fポートを備えたポートPKである。同様にドライブI/Fに対応したPKをドライブI/F-PKと称する。I/F-PK210は、チャネルアダプタ(CA)221等の、I/F制御を行うためのアダプタ類と、I/Fに応じたプロトコルアダプタ(PA)222と、ポート接続用のコネクタ223と、ベースPK接続用のコネクタ224と、保守用のLED227とを有する。コネクタ223とPA222が接続され、PA222とCA221が接続され、CA221とコネクタ224が接続されている。
本例で示すチャネルI/F-PK(210)は、特定I/Fに対応した2つのポート(I/Fポート)を持つ場合を示している。ポートは、PA222とコネクタ223を含む。PA222は、I/Fに対応して外部装置との通信プロトコル処理を行う。コネクタ223は、外部との物理リンクのための通信ケーブルのソケットが接続される。ポートは、DKC10及びSVP196により情報として管理される。
CA221は、当該PKにおけるチャネルI/Fとしての制御を行う回路であり、ポート制御機能やDMAデータ転送処理機能を有する。CA221は、1系統以上のDMAC(DMA制御回路)250を含んで構成される。DMAC250は、DKC10内のいずれかのMPから制御され、DMA起動に応じてDMAデータ転送処理を行う。DMAC250は、転送データをバッファリングする領域となるバッファ251と、データ転送情報を格納する領域となるレジスタ252とを含む。前記データ転送情報は、DMAデータ転送処理を制御するための、転送元及び転送先アドレス、データ量といった各種制御情報であり、MPなどにより設定される。DMAC250は、DMAデータ転送処理で、レジスタ252のデータ転送情報に従って、バッファ251に転送データをバッファリングしながらデータ転送処理する。
LED227は、PK保守・管理に係わる表示を行う表示器である。LED227の表示は、ベースPK101内外から制御される。LED227の表示により、当該PKが保守交換対象であること等が示される。ドライブI/F-PKの場合もチャネルI/F-PKと同様の構成であり、CA221の代わりにドライブアダプタを備える。
図4(b)で、LCM-PK215は、キャッシュアダプタ225と、メモリ230と、コネクタ224と、LED227とを有する。キャッシュアダプタ225は、データ制御とメモリ230に対する読み書き等の制御を行うメモリ制御回路であり、データキャッシュとしてのデータ転送及びMPとの制御を行う。メモリ230は、DKC10におけるLCMとして機能する。搭載メモリ数は任意にできる。LCMは、GCM130に対してローカルな関係にあるCMであり、ミックスPK100内外から使用される。
図4(c)で、MP-PK216は、MP240と、コネクタ224と、LED227とを有する。MP240は、ミックスPK100内外を制御するプロセッサとして機能する。搭載MP数は任意にできる。MPは、自PK内における制御だけではなく、ベースPK101内のLN103を経由してPK間の制御も可能である。
各機能PK102は、PK/ボードの種別を示すIDが付与されており、当該IDがDKC10で読み取られPK保守・管理に用いられる。各機能PK102は、コネクタ224を通じた、ベースPK101の接続部に対する活線挿抜に対応した構造を有する。各機能PK102は、アダプタ等が、コネクタ224を介してLN103に接続される。LN103を介して機能PK102間で通信可能である。
機能PK102として適用可能なI/Fとしては、SCSI(Small Computer System Interface)、FICON、ESCON、ACONARC(Advanced Connection Architecture)(登録商標)、FIBARC(Fibre Connection Architecture)(登録商標)、TCP/IP(Transmission Control Protocol / Internet Protocol)等の各種が可能である。また、ベースPK101や機能PK102は、その他の電気的・機械的構造として、留め金などのパッケージ保持構造や、ボタンなどの簡易取り出し構造などを有してもよい。
<ミックスPK>
図5は、ミックスPK100の構成例及びPK挿抜について示す。ミックスPK100は、前記図3に示すベースPK101と、前記図4に示す機能PK102の組み合わせとにより構成される。ベースPK101のコネクタ105が、BPボード90側のコネクタ(91)に対して接続される。例えば、DKCボックス194におけるスロットAに、ベースPK101が活線挿抜される。また、機能PK102のコネクタ224が、ベースPK101のコネクタ106に対して接続される。例えば、ベースPK101に設けられたスロットA1〜A4に対しそれぞれ機能PK102が活線挿抜される。本例では、ベースPK101がBPボード90に接続されると共に、各スロットA1〜A4に対し、I/F-PK#1,#2,#3(210),LCM-PK#1(215)が接続される様子を示す。また、ミックスPK100の機能構成変更や機能PK102の障害発生などに応じてI/F-PK#3(210)が交換対象となり、交換用のI/F-PK#4(210)に交換される場合を示す。保守員は、ディスクアレイ装置1の稼動状態において、交換対象のI/F-PK#3(210)をベースPK101から抜き去り、その位置に交換用のI/F-PK#4(210)を挿入する。その際、SVP196からの制御により、I/F-PK#3(210)のLED227が点灯して、交換対象PKであることが保守員に対して示される。各スロットA,A1〜A4の情報やその位置におけるPK接続状態などの情報が、SVP196内やDKC10内で構成情報・状態情報として管理されており、PK挿抜に伴って情報が更新される。例えば構成情報において、スロットAにベースPK101が接続状態であり、更にベースPK101上のスロットA3でI/F-PK#4(210)が接続状態となったことが記録される。
ベースPK101に対する機能PK102の接続の組み合わせや数については、ユーザごとのサービス提供に応じたディスクアレイ装置実装形態に応じ、キャパシティ内で自由に選択的に構成できる。これにより、同一ミックスPK100に対して自由にI/Fポートを増減でき、異種I/Fを混在でき、構成や性能を細かく可変できる。そのため、組み合わせによって、従来のDKCでの制御PK間での共通接続網を介した転送の必要が無くなり、同一ミックスPK100内でデータ転送処理できるため、処理高速化が可能となる。また増減設などの単位や転送パスの縮小化によってシステムの信頼性に対する影響も少なくなり、障害時などにもその効果が明らかになる。また特にI/F-PK210を活線挿抜に対応した構成とすることで、ディスクアレイ装置1の稼動中におけるI/Fポートごとの増減設などの保守交換や構成変更などが可能となる。
<DKCボックス及びPK挿抜>
図6(a),(b)は、ディスクアレイ装置1に対するPK接続の構成例として、DKCボックス194におけるPK装着脱の構成について示す。(a)は、DKCボックス194の前面の開口部に対してPKを挿抜する3つの操作a〜cを示す斜視図である。(b)は、(a)と同様の操作a〜cを、DKCボックス194の上側からみた断面図である。なおPK外形や接続部構成などについて簡略化して示している。ベースPK101及び機能PK102を独立して活線挿抜可能な構成である。
図6(a)で、制御PK100は、ミックスPK100の形でDKCボックス194のスロットに対し挿抜される。DKCボックス194は、内部奥側にBPボード90の面を有する。BPボード90の面には、複数のスロットに対応して、ベースPK101を接続するためのコネクタ91などを有する。なおDKCボックス194の後面側についても同様に構成できる。DKC10を構成するすべてのPKが、コネクタを含む所定の接続部構成を介して、BPボード90と接続される。
ベースPK101及び機能PK102は、保守員により操作a〜cに示すような挿抜が可能である。操作aは、DKCボックス194のスロットに装着状態のベースPK101/ミックスPK100に対する機能PK102の活線挿抜である。操作bは、DKCボックス194のスロットに対するベースPK101/ミックスPK100の活線挿抜である。操作cは、非装着状態のベースPK101/ミックスPK100に対する機能PK102の挿抜である。
図6(b)で、DKCボックス194は、ミックスPK100を装着可能な8つのスロットA〜Hを有する場合を示す。各スロットに対しミックスPK100またはベースPK101を自由に挿抜可能である。ベースPK101及び機能PK102共にスロットに対して同じ方向で挿抜される形式である。DKCボックス194及び各PKは、PK装着脱の形式に対応した機械的構造を有する。ベースPK101は、DKCボックス194のスロットに設けられているガイドレールに従って挿入または抜き去りされる。また、所定の機械的構造によって、接続状態のPKがスロットに固定・保持される。
なお、PK/ボードの階層的な装着脱に関する構成は、本例に限らず他の形式とすることもできる。例えば、ベースPKを構成する2枚のボードの間に機能PKを挿抜する形式や、ベースPKを構成するボードの面に対して垂直方向で機能PKを装着脱する形式などである。
ディスクアレイ装置では稼動中の保守性が重要であるため、本実施の形態では、ベースPK101及び機能PK102共に活線挿抜に対応した構成としている。活線挿抜対応により、I/Fポート等の単位で保守交換の柔軟性を有する。
<ミックスPK構成例>
次に、図7は、DKC10にミックスPK100を組み込む場合のミックスPK100の構成例を示す。ミックスPK100の構成例として、ベースPK101に対して、2種類のチャネルI/F-PK210(I/F-PK#1,#2)と、LCM-PK215と、MP-PK216とを組み合わせた例である。1つのミックスPK100において異種I/Fに対応すると共に、LCMとMPにより処理性能を拡張している構成である。また、ベースPK101に2つのMP104を有する場合である。
I/F-PK#1(211)は、ホスト50とのI/FとしてESCON対応であり、I/F-PK#2(212)は、ホスト50とのI/FとしてFC対応である。各I/F-PK210は、コネクタ224を通じてベースPK101とのデータ転送及びMPの制御を行う。
LN103は、データ用のLNであるLDSW(ローカルデータパス制御スイッチ)108と、MP用のLNであるLPN(ローカルプロセッサ相互接続網)109とを含んでいる。LDSW108は、各機能PK102のコネクタ223とBPボード接続用のコネクタ105とに接続しており、DSW151と相互接続される。LDSW108は、転送データパスの切り替えを行い、PK内接続にするかPK間接続にするかを決定する。本実施の形態では、データ転送用の接続網(DSW151、LDSW)としてスイッチ構成を用いているが、各部が相互接続される形態であればよく、例えば、バス方式やダイレクト接続でもよい。
同様に、LPN109は、各機能PK102のコネクタ223とBPボード接続用のコネクタ105とに接続しており、PN152と相互接続される。LPN109は、PK内外のプロセッサによる通信の制御用として使用され、制御パスの切り替えを行う。LPN109及びPN152を使用するプロセッサは、ベースPK101内のMP104、MP-PK216等の機能PK102内のMP、DKC10内にある他の処理部のMPなどである。
また、他のミックスPK100の構成例として、図7におけるMP-PK216を、ドライブI/Fに対応したI/F-PK#3(213)に替えて、チャネルI/FとドライブI/Fを混在した構成とすることができる。2種類のチャネルI/Fと、LCM-PK215と、1種類のドライブI/F-PK(213)とを組み合わせた構成である。I/F-PK#3(213)は、例えばSCSI-I/F対応であり、コネクタ223に対して接続線を介してDRV30を接続してDKAとして機能する。ドライブI/Fを制御するドライブアダプタ(DA)がLN103に対し接続される。1つのミックスPK100内で、ホスト50との転送とDRV30との転送との双方を、LCMへのデータキャッシュを用いながら処理できる。
LCM-PK215に搭載されているLCMの利用方法は自由である。第1の利用例として、1つのミックスPK100内でローカル性のあるデータをLCMに格納して、データキャッシュとして使用する。各I/F-PK210及びMPが、LCMにデータを格納する。第2の利用例として、MP間通信用の制御情報などの共有データをLCM230に格納し、すなわちLCM230を共有メモリとして使用する。LCM及びGCM130の一部を、共有メモリとして用いることができる。第3の利用例として、MPの指示によりLCM−GCM130間の転送が可能である。I/F-PK210のCA221等のアダプタを使用せずにLCM−GCM130間のデータ転送が可能である。例えばベースPK101内のMP104の制御により、LCM-PK215のLCM230とGCM130との間でデータ転送が行われる。
<DKC構成例(1)>
図8は、PK組み合わせによるDKC10の第1の構成例とそのデータ転送動作例を示す。本構成は、従来の制御PK構成と同様に、チャネル制御とドライブ制御とをミックスPK100単位で分けた場合である。本構成は、必要なポートやDRV30分のみの機能PK102で構成できるため、安価である。
図8では、Pで示す電源境界の上下で、SVP196を除いて、CL#1とCL#2が構成されている。CL#1に第1,第2のミックスPK#1,#2(100)を、CL#2に第3,第4のミックスPK#3,#4(100)を有する。CL#1,#2において、チャネルI/FとドライブI/Fとを別のミックスPK100として、対称的に接続した構成である。
ディスクアレイ装置では、信頼性を向上させるために、例えばクラスタ単位に電源境界を持たせた構成として、障害時にもシステムダウンを防ぐようにする必要がある。本実施の形態では、図8,9等に示すように、DKC10を含むクラスタ構成に応じて、PKの組み合わせや、外部装置やDRV30との接続などを構成できる。
ミックスPK#1(100)は、チャネルI/Fとして、2つのファイバI/F-PK212、1つのESCON-I/F-PK211を接続しており、1つは空き状態である。ミックスPK#2(100)は、ドライブI/Fとして、2つのSCSI-I/F-PK213を接続しており、2つは空き状態である。クラスタ構成に対応して、一方のSCSI-I/F-PK213に対してCL#1のDRV30が接続され、他方にCL#2のDRV30が接続される。各ベースPK101はMP104を有する。
第1の構成例において、動作a1は、ホスト50からGCM130へのデータライトの流れを示す。動作a2は、GCM130からDRV30へのデータライトの流れを示す。動作a3は、DRV30からGCM130へのデータリードの流れを示す。動作a4は、GCM130からホスト50へのデータリードの流れを示す。
例えば、ホスト50からの、DRV30へのデータライト要求に対して、まず、動作a1で、CL#1内のプロセッサ、例えばミックスPK#1(100)内のMP104による制御に従い、第2のファイバI/F-PK212は、ホスト50からのライトデータをGCM130の領域へライトして、ライトした旨の応答をホスト50へ返す。次に、動作a2で、CL#1のミックスPK#2(100)内のMPによる制御に従い、第1のSCSI-I/F-PK213は、GCM130から前記ライトデータをリードして、該当DRV30の領域へライトする。
また例えば、ホスト50からの、DRV30からのデータリード要求に対して、まず、CL#2内のプロセッサ、例えばミックスPK#3(100)内のMP104による制御に従い、第2のファイバI/F-PK212は、CL#2のミックスPK#4(100)へデータリード要求を出す。次に、動作a3で、CL#2のミックスPK#4(100)内のMPによる制御に従い、第1のSCSI-I/F-PK213は、該当DRV30の領域から要求リードデータをリードして、GCM130の領域へライトする。次に、前記動作a4で、CL#2のミックスPK#3(100)内のMPによる制御に従い、第2のファイバI/F-PK213は、GCM130から前記リードデータをリードして、ホスト50へ送信する。
<DKC構成例(2)>
図9は、PK組み合わせによるDKC10の第2の構成例とそのデータ転送動作例を示す。本構成は、同一ミックスPK100内でチャネル制御とドライブ制御とを混在させた場合である。本構成により、同一ミックスPK100内でホスト50とDRV30の間のデータ入出力処理が行えるため、この場合における処理高速化が可能となる。
図9では、Pで示す電源境界の上下で、CL#1とCL#2が構成されている。CL#1,#2において、チャネルI/F、ドライブI/F及びLCMを混在したミックスPK100を、対称的に接続した構成である。
ミックスPK#1(100)は、チャネルI/Fとして、2つのファイバI/F-PK212、LCM-PK215、1つのSCSI-I/F-PK213を接続している。SCSI-I/F-PK213に対してDRV30が接続される。ミックスPK#2(100)は、チャネルI/Fとして、1つのファイバI/F-PK212、1つのESCON-I/F-PK211を接続しており、2つは空き状態である。各ベースPK101はMP104を有する。
第2の構成例において、動作a1は、ホスト50からミックスPK#1(100)内のLCMへのデータライトの流れを示す。動作a2は、ミックスPK#1(100)内のLCMから同ミックスPK100に接続されているDRV30へのデータライトの流れを示す。動作a3は、DRV30からGCM130へのデータリードの流れを示す。動作a4は、GCM130からホスト50へのデータリードの流れを示す。動作a5は、GCM130からLCMへのデータキャッシュのためのデータリードの流れを示す。動作a6は、DRV30からホスト50へのデータリードの流れを示す。各動作及びその逆の流れの動作及びその組み合わせの動作を、状況に応じて選択的に実行させることが可能である。
例えば、ホスト50からの、DRV30へのデータライト要求に対して、まず、動作a1で、CL#1内のプロセッサ、例えばミックスPK#1(100)内のMP104による制御に従い、第1のファイバI/F-PK212は、ホスト50からのライトデータをLCMの領域へライトして、ライトした旨の応答をホスト50へ返す。次に、動作a2で、ミックスPK#1(100)内のMPによる制御に従い、SCSI-I/F-PK213は、LCM-PK215のLCMから前記ライトデータをリードして、該当DRV30の領域へライトする。
また例えば、ホスト50からの、DRV30からのデータリード要求に対して、まず、CL#2内のプロセッサ、例えばミックスPK#3(100)内のMP104による制御に従い、第1のファイバI/F-PK212は、GCM130に要求リードデータがある場合、動作a4で、GCM130の領域からデータをリードして、ホスト50へ送信する。また、例えば動作a4と並行して、動作a5で、GCM130からリードしたデータをLCM-PK215のLCMの領域へキャッシュデータとして格納する。あるいは、動作a5でGCM130からLCMへデータキャッシュさせてから、動作a1と逆の流れでLCMからホスト50へデータ転送する。また、DRV30に要求リードデータがある場合、動作a3でDRV30からデータリードしてGCM130にキャッシュデータとして格納させ、前記動作a4,a5を同様に行う。あるいは、前記動作a2,a1の逆の流れでホスト50へデータ転送する。あるいは、動作a6で、DRV30から直接ホスト50へデータ転送する。
<制御方法>
次に、図2,4,7等を参照しながら、DKC10における制御方法について説明する。特に外部接続がある場合の制御の処理フローは、図13,14でも示される。以下、ホスト50がディスクアレイ装置1のDRV30からデータを読み出す処理を例に説明する。まず、ホスト50からのコマンドを、I/F-PK210のポートのPA222で受信する。PA222で受信したコマンドがCA221に送られる。DKC10内に存在するいずれかのMPは、受信コマンドを解析し、コマンドの要求データ、すなわち読み出しアクセス先となるデータの格納位置(アドレスなど)を、CA221を使用して割り出す。コマンド処理については、DKC10内にあるいずれのプロセッサが担当して処理しても構わない。例えば、コマンドを受信した機能PK102と同一ミックスPK100内にあるベースPK101のMP104などが担当する場合が効率的である。CA221は、MPからの指示に従って、ディレクトリ情報を参照すること等により、前記格納位置を探し出す処理を行う。その結果、前記要求データがLCM、GCM130、DRV30等のどこにあるかが判断される。
MPは、前記要求データがCMすなわちLCMまたはGCM130にあると判断すると、前記格納位置の情報を含む必要なデータ転送情報をCA221に送ってDMA起動をかける。すると、起動されたCA221のDMAC250が、レジスタ252上のデータ転送情報に従ってバッファ251を利用しながら、前記要求データについて転送先のホスト50と転送元のCMとの間でのDMAデータ転送処理を行う。その際、DSW151やLDSW108は、前記要求データのアドレスを見て各部間の接続先を切り替え、該当CMと接続する。
前記要求データが同一ミックスPK100内のLCMにある場合、MPは、要求データの転送のためのデータ転送情報を、CA221を介してLDSW108に接続し、LN103を使用してキャッシュアダプタ225にコマンドを送信してメモリ230からデータを読み出す。そして読み出したデータを、LN103を介してCA221が受信し、PA222を介してホスト50へ送信する。また前記要求データがLCMには存在せずGCM130にある場合、MPは、前記要求データの転送のためのデータ転送情報を、CA221を介してDSW151に接続し、LN103及びDSW151を使用してGCM130からデータを読み出す。そして同様に読み出したデータを、CA221からホスト50へ送信する。
また前記要求データがLCM及びGCM130のいずれにも無い場合、MPは、要求データが格納されているDRV30を接続しているPKに対して、要求データの読み出し要求を出す。この要求に従って該当I/F-PK210がDRV30から読み出したデータを、CMすなわちGCM130及びLCMに格納するように制御する。これにより、キャッシュヒット率を向上できる。そして同様に読み出したデータを、CA221からホスト50へ送信する。特に、前記DRV30のデータを自ミックスPK100内にあるLCMに格納することで、同データの転送についてはLCMを利用できミックスPK100外への接続処理無しで更に高速にアクセスできることになる。
<PK保守・管理>
PKの保守・管理面について説明する。従来のDKC構成における機能増減・保守の単位は、制御PK単位であった。例えば1つのI/Fポートの故障時でもそのポートを含んだ制御PK自体を交換する必要があった。このため保守手間やシステム影響が大きい。本実施の形態では、保守単位はベースPKまたは機能PK単位となり、保守手間やシステム影響が小さい。
また、PKの種類を増やして増減単位を細分化したことにより、様々な機能PKが存在する。従来構成では制御PKごとに1種類のI/Fであったため、PK交換の際に間違えることは少なかったが、本実施の形態では複数のスロットに対して機能PK102を自由に交換できるため、PK種類などを識別できPK誤接続を防止できる手段を設ける。その手段として、各PKにPK種類やPK状態、保守対象などを識別できるID(識別情報)を設ける。また、DKC10内の処理部またはSVP196により、PK種類やPK状態や保守対象などを管理する処理を行わせる。
例えば、PK識別手段として、各PK(101,102)にPK-ID、シリアルPROM、LSIのレジスタ等を付けた構成とする。PK挿抜時には、DKC10及びSVP196はそのPKのIDを参照して、SVP196側で管理している情報と実際の接続PK及び接続位置との照合により、誤接続などをチェックする。SVP196では、例えば、正しいPK位置を示す構成情報やPK障害情報などを常時管理する。前記チェックによりPK誤接続を検出した場合には、そのことを保守員に対して通知する。
また特に、ベースPK101,機能PK102に保守用のLED107,227を具備した構成において、PKに障害が発生した際などの保守交換のために、SVP196から保守操作に連動したLED107,227の表示制御を行い、保守員に対して保守操作をわかりやすく指示する。LED107,227の表示に従って、保守員は交換位置やPKなどの確認ができ、保守ミスを防ぐことができる。
また電源障害等でLED107,227が点灯しない場合も想定されるため、SVP196からの指示については、SVP196での処理によって、LED表示制御と共に、SVP196等のディスプレイ画面においてGUI表示により行う。SVP196は、実際の装置構成状態を表わす図をGUI表示して、交換対象PKやPK挿抜位置などの情報も表示し、保守員に対し的確に指示する。またPKを順番に交換させる場合にも対応して、PK挿抜の順番や位置などの操作手順を表示して指示する。
保守用のLED107,227の機能及び制御の具体例を説明する。各ベースPK101,機能PK102におけるLED107,227を制御して、PK異常検出や保守交換対象PKを保守員に認識させる。特にSVP196からの制御により、PK交換位置や手順をGUI表示で示すと共に、交換対象PKのLEDを点灯させる。PK挿抜に伴い、SVP196の管理情報と実際の挿抜PKとのチェックを行い、誤接続の場合には通知する。例えば、各ベースPK101,機能PK102に保守用LED107,227として黄色と赤色の2つを具備した構成とする。まず、PK(例えば機能PK102)の電源系が故障の場合、黄色LEDを点灯させる。それにより保守員は、当該PKが電源系異常と判断できる。また、SVP196から交換対象PKを指示する場合に、赤色LEDを点灯させる。それにより保守員は、交換対象PKを判断できる。また、PK挿抜時に、SVP196等で構成情報により管理している装置構成と比較して不一致の場合の時も、該当PKの所定LEDを点灯させることで、保守員はPK誤接続を認識できる。また、LED107,227の制御については、例えばLN103からの制御線を通じて、SVP196や、ベースPK101内や機能PK102内や外部PKなどから行う。
各パッケージにLEDを設ける以外に、パッケージを装着するスロット等の筐体側に、パッケージ状態及びパッケージ保守・管理の操作に対応してその表示が制御されるLEDを備えてもよい。そして同様に、SVP196から、装着脱位置となるスロットのLEDの表示が制御される。
<PK増設・障害・交換>
PK保守例とその処理について説明する。図10(a)は、機能PK102の増設と障害発生時の交換の例を示す。ここで前提となるDKC10の構成は、前記図8と同様とする。DKCボックス194における、ベースPK101が装着される各スロットを{A,B,C,D,……}等とし、また、各ベースPK101における機能PK102が装着される各スロットを{A1,A2,A3,A4}等とする。スロットAにミックスPK#1(100)が、スロットBにミックスPK#3(100)が、それぞれ接続状態である。SVP196でのGUI表示に従って保守員がPK挿抜を行う。SVP196は、ミックスPK100との間で、GUI表示による保守指示、各LEDの表示制御、IDを用いたPK構成チェック、障害PKの閉塞処理などを行う。
まず、機能PK102を増設する場合として、CL#1,#2のミックスPK#1,#3(100)において、空きスロットA4,B4にファイバI/F-PK212を増設する場合を説明する。まず、保守員は、CL#1のミックスPK#1(100)に関して、増設用のI/F-PK212を準備する。次に、SVP196での指示に従い保守員は増設用のI/F-PK212をDKCボックス194のベースPK101の該当スロットA4に挿入する。次に、DKC10及びSVP196は、挿入された機能PK102のIDを読み込み、構成情報と比較して、目的とする構成と一致するかどうかを確認する。一致しない場合は誤接続を通知する。次に、構成が正しいことが確認されたら、接続されたI/F-PK212での診断を行って、DKC10のシステムへ組み込む。前記診断は、PK内の部位がハードウェア的に正常に動作するかどうかのチェックである。次に、保守員は、CL#2側のミックスPK#3(100)におけるスロットB4についても、CL#1側と同様の手順でI/F-PK212を増設する。
また、機能PK102を別の機能PK102に交換する場合として、CL#1,#2のミックスPK#1,#3(100)において、スロットA2のファイバI/F-PK212に障害が発生したためにこれを別のファイバI/F-PK212に交換する場合を説明する。まず、スロットA2のファイバI/F-PK212で障害が発生したことが検出される。障害を検出したMPは、その障害情報を採取して当該機能PK102についての閉塞処理を行う。前記閉塞処理は、該当PK部分をシステムから論理的に切り離す処理である。次に、前記検出したMPは、スロットA2が閉塞したことを、DKC10内の他のMPに対して報告する。次に、前記DKC10内の他のMPは、スロットA2が閉塞したことを知ると、スロットA2を使用しないように閉塞状態として扱う制御を行う。次に、前記検出したMPは、SVP196に対し閉塞部位のスロットA2についての障害報告を行い、SVP196に対してPK交換要求を出す。SVP196は、前記障害報告及びPK交換要求を受け、MPからの障害情報などをもとに、DKC10の論理構成及び状態を変更する。すなわちPK閉塞発生に合わせて構成情報などを更新する。その後、SVP196は、必要に応じて、保守員に対して機能PK102の障害発生や、PK交換要求を通知する処理などを行う。
続いて障害PKの交換手順を説明する。まず、保守員は、交換用のファイバI/F-PK212を準備する。SVP196の指示に従い、代表MPは、スロットA2の障害PK(212)の処理を停止させ閉塞状態へ移行させる。前記代表MPは、DKC10における複数存在するMPのうち仕事のない1つのMP等であり、例えばベースPK101のMP104である。この際、前記代表MPは、障害PK(212)の交換指示を表わすLED227を点灯させ、PK交換を保守員に対して指示する。次に、SVP196で障害PK(212)のスロットA2を確認する。この確認は、閉塞部位とLED227が点灯される機能PK(212)とが合っているか等の確認である。次に、保守員は、障害PK(212)をスロットA2から抜き去り、交換用PK(212)を挿入する。SVP196から、ファイバI/F-PK212が交換されたことを、代表MPに対して報告する。SVP196は、スロットA2に挿入されたPK(212)のIDを読み込み、目的とする構成と一致するか確認する。代表MPは、構成が正しければ、該当機能PK(212)における診断を行って、DKC10のシステムへ組み込む。代表MPは、スロットA2のファイバI/F-PK212が新たに構成に組み込まれたことを、DKC10内の他のMPに対して報告する。代表MPは、SVP196に報告して、SVP196は構成情報を更新する。なお、前記機能PK102の障害中や交換中でも、スロットA1,A3の機能PK102については使用可能な状態であり、前記図8に示すような各動作が可能である。
図10(b)は、ベースPK101/ミックスPK100の障害発生時の交換の例を示す。ここで前提となるDKC10の構成は、前記図8と同様とする。ベースPK101/ミックスPK100を別のPKに交換する場合として、CL#2のミックスPK#3(100)において、ベースPK101で障害が発生したためにこれを別のPKに交換する場合を説明する。
まず、スロットBのベースPK101で例えばLN103における障害が発生したことが検出される。障害を検出したMPは、その障害情報を採取して当該ベースPK101についての閉塞処理を行う。次に、前記障害を検出したMPは、スロットBが閉塞したことを、DKC10内の他のMPに対して報告する。次に、前記DKC10内の他のMPは、スロットBが閉塞したことを知ると、スロットBを使用しないように閉塞状態として扱う制御を行う。次に、前記検出したMPは、SVP196に対し閉塞部位のスロットBについての障害報告を行い、SVP196に対してPK交換要求を出す。SVP196は、前記障害報告及びPK交換要求を受け、MPからの障害情報などをもとに、DKC10の論理構成及び状態を変更する。その後、SVP196は、必要に応じて、保守員に対してベースPK101の障害発生や、PK交換要求を通知する処理などを行う。
続いて、障害状態のベースPK101についてミックスPK#3(100)ごとに交換する場合の手順を説明する。まず、保守員は、交換用のベースPK101を準備する。SVP196の指示に従い、代表MPは、スロットBの障害PK(101)の処理を停止させ閉塞状態へ移行させる。この際、前記代表MPは、障害PK(101)の交換指示を表わすLED107を点灯させ、PK交換を保守員に指示する。次に、SVP196で障害PK(101)のスロットBを確認する。この確認は、閉塞部位とLED107が点灯されるベースPK(101)とが合っているか等の確認である。次に、保守員は、スロットBから障害PK(101)をミックスPK#3(100)ごとに抜き去り、交換用のベースPK100に各機能PK102を装着したミックスPK(100)の形で挿入する。その際、保守員は、障害PK(101)から交換用のベースPK(101)へと、装着位置関係をそのままに各機能PK102を移して交換用のミックスPK(100)を構成する。次に、スロットBに交換用PKが挿入されたら、SVP196から、ベースPK101が交換されたことを、代表MPに対して報告する。SVP196はスロットBに挿入されたベースPK101のIDを読み込み、目的とする構成と一致するか確認する。代表MPは、構成が正しければ、該当ベースPK101における診断を行い、DKC10のシステムへ組み込む。代表MPは、スロットBのベースPK101が新たに構成に組み込まれたことを、DKC10内の他のMPに対して報告する。代表MPは、SVP196に報告して、SVP196は構成情報を更新する。
同一ミックスPK100で複数のI/Fなどの機能PK102を交換する場合、個々のI/F-PK210を順に交換させることも可能であるが、場合に応じてベースPK101ごと交換させる操作により、保守手間を削減できる。
<外部接続(1)>
次に、図11は、ディスクアレイ装置1に対して外部ディスク制御装置80を通信接続した場合の第1の構成例を示す。本構成は、同一ミックスPK100内にホスト50とのI/Fと外部ディスク制御装置80とのI/Fとに対応して、異種のチャネルI/F-PKを組み合わせた場合である。前提となるDKC10の構成は、前記図8と同様であり、特に、前記ミックスPK#1,#3(100)における第2のファイバI/F-PK212の位置(スロットA2,B2)に、LCM-PK215を接続した場合を示す。DKC10の各CL#1,#2のミックスPK#1,#3(100)において、ファイバ-I/F-PK212に対してホスト50が接続され、ESCON-I/F-PK211に対して外部ディスク制御装置80が接続されている。この外部ディスク制御装置80は、接続されるDRV30などの記憶装置に対するデータ入出力を制御する装置であり、例えばディスクアレイ装置1と同一種類の装置や、他の種類のディスクアレイ装置や、その他の情報処理装置である。なお、各ミックスPK100にMPを有するが省略して示す。
動作a1,a2は、ミックスPK#1,#3(100)においてLCM-PK215が無い構成の場合における、ホスト50と外部ディスク制御装置80との間のデータ転送の流れを示す。また、動作a3,a5は、ミックスPK#1,#3(100)においてLCM-PK215がある構成の場合における、ホスト50とLCMとの間のデータ転送の流れを示す。また、動作a4,a6は、ミックスPK#1,#3(100)においてLCM-PK215がある構成の場合における、LCMと外部ディスク制御装置80との間のデータ転送の流れを示す。また、動作a7は、外部ディスク制御装置80との転送の場合に、前記図8,9に示したようなGCM130に対するデータキャッシュの流れを示す。動作a1〜a6に加えて、動作a7を併用して処理することもできる。
以下、ディスクアレイ装置1と外部ディスク制御装置80との間でデータ転送が行われる場合の処理例を説明する。まず、ディスクアレイ装置1は、CL#1または#2におけるミックスPK#1,#3(100)において、ファイバI/F-PK212を介して、ホスト50からのコマンドを受信する。ミックスPK#1,#3(100)において、いずれかのMP、例えばベースPK101のMP104は、受信コマンドを解析する。前記MPは、解析により転送先となるポートを確認する。例えば前記受信コマンドがデータライト要求であり、その転送先アドレスが、外部ディスク制御装置80に接続されているDRV30の領域であるとする。この場合、同一ミックスPK100内で外部ディスク制御装置80を接続しているESCON-I/F-PK211に有するポートが、転送先となるポートである。当該ポートは、外部ディスク制御装置80に対しての転送元のポートとなる。
前記MPは、外部ディスク制御装置80への転送先のポートが自ミックスPK100内にあるか否か、また、要求データがLCMやGCM130にあるか等を確認する。前記MPは、転送先ポートが同一ミックスPK100内にあり、LCMが無い場合、LN103により該当I/F-PK(211)に対して転送指示を出す。前記転送指示に従ってデータを受け取ったI/F-PK(211)は、外部ディスク制御装置80との間でデータ転送を行う。外部ディスク制御装置80は、DRV30に対して転送データを読み書きする。動作a1等により、LCMを介さずにホスト50と外部ディスク制御装置80の間でデータ転送される。
また、前記MPは、同一ミックスPK100内にLCMがある場合、LN103により該当LCM-PK215に対して転送指示を出す。前記転送指示に従ってデータを受け取ったLCM-PK215は、同一ミックスPK100内のESCON-I/F-PK211の処理を介して外部ディスク制御装置80との間でデータ転送を行う。動作a3,a4等により、LCMを介してホスト50と外部ディスク制御装置80の間でデータ転送される。LCMに要求データが格納されている場合は、LCM上のキャッシュデータを用いて転送処理される。
同一ミックスPK100内に異種I/Fを混在した構成により、外部ディスク制御装置80との異種I/F間でのデータ転送において、LN103を使用できるため、DSW151等を使用せずに高速に処理できる。また、ミックスPK100内に異種I/FとLCMを混在した構成の場合、外部ディスク制御装置80とのデータ転送において、LCMを利用してキャッシュヒット率が向上でき、高速に処理できる。
<外部接続(2)>
次に、図12は、ディスクアレイ装置1に対して外部ディスク制御装置80を通信接続した場合の第2の構成例を示す。本構成は、外部ディスク制御装置80への転送先となるポートが同一ミックスPK100内ではなく他のミックスPK100内のI/F-PK210にある場合である。各ミックスPK100において、異種のチャネルI/F-PKを組み合わせた場合である。DKC10のCL#1,#2において、ミックスPK#1,#3(100)で、ファイバI/F-PK212、LCM-PK215、ESCON-I/F-PK211、及び1つの空きを有し、ミックスPK#2,#4で、ESCON-I/F-PK211、LCM-PK215、及び2つの空きを有する構成である。そして、ミックスPK#1,#3(100)において、ファイバ-I/F-PK212に対してホスト50が接続され、ミックスPK#2,#4(100)において、ESCON-I/F-PK211に対して外部ディスク制御装置80が接続されている。特に、各ミックスPK#1〜#4(100)のスロット(A2,B2,C2,D2)に、LCM-PK215を接続した場合を示す。なお、各ミックスPK100にMPを有するが省略して示す。
CL#1のミックスPK#1(100)でホスト50からのコマンドを受信し、ミックスPK#2(100)のESCON-I/Fを介して外部ディスク制御装置80へデータライトのためのデータ転送を行う場合を説明する。
動作a1は、ホスト50からファイバI/F-PK212を介してミックスPK#1(100)内のLCMに対するデータライトの流れを示す。動作a2は、前記ミックスPK#1(100)のLCMに書き込まれたデータを、DSW151及びミックスPK#2(100)を介して外部ディスク制御装置80へデータライトする流れを示す。動作a3は、ホスト50からのデータを、ミックスPK#1(100)のファイバI/F-PK212を介してDKC10におけるGCM130にデータライトする流れを示す。
ホスト50から外部ディスク制御装置80へのデータ転送において、例えば、LCMがある場合には、動作a1,a2,a3を順に行う。あるいは、動作a1,a2のみを順に行う。LCMにキャッシュデータがある場合は、動作a2のみ行う。また特に、前記動作a1とa3の両方を同時並行的に実行する動作、すなわちLCMとGCM130を対象としたデータの二重ライト動作を行って二重にキャッシュすることも可能である。
次に、同様にCL#2のミックスPK#3(100)でホスト50からのコマンドを受信し、ミックスPK#4(100)のESCON-I/Fを介して外部ディスク制御装置80からデータリードのためのデータ転送を行う場合を説明する。
動作a4は、ミックスPK#3(100)内のLCMからファイバI/F-PK212を介してホスト50に対するデータリードの流れを示す。動作a5は、GCM130からミックスPK#3(100)のファイバI/F-PK212を介してホスト50へのデータリードの流れを示す。動作a6は、外部ディスク制御装置80側のDRV30からミックスPK#4(100)のESCON-I/F-PK211を介してデータリードして、GCM130へ格納する流れを示す。動作a7は、GCM130からデータリードしてミックスPK#3(100)のLCMに格納する流れを示す。
外部ディスク制御装置80からホスト50へのデータ転送において、例えば、LCMがある場合には、動作a6,a7,a4を順に行う。あるいは、動作a6,a5,a7を順に行う。LCMがない場合は、動作a6,a5を順に行う。LCMにキャッシュデータがある場合は、動作a4のみ行う。GCM130にキャッシュデータがある場合は、動作a5のみ行う。あるいは、動作a7,a4を順に行う。また特に、前記動作a6,a7の両方を同時並行的に実行する動作、すなわちLCMとGCM130を対象としたデータの二重ライト動作を行って二重にキャッシュすることも可能である。
<処理フロー(1)>
図13は、ディスクアレイ装置1に対して外部ディスク制御装置80が接続されている場合におけるデータ転送処理の第1のフローとして、データライト処理を示す。DKC10の構成は、前記図8,9等に従うものとする。
ホスト50からのライト要求及びライトデータをミックスPK100で受信した時の処理を説明する。まず、ステップS1で、ミックスPK100のI/F-PK210は、ホスト50からライト要求に対応したコマンド(ライトコマンド)を受信する。次に、S2で、DKC10内におけるいずれかのMP、例えば同一ミックスPK100内にあるMPは、受信したコマンドを解析する。次に、S3で、前記MPは、転送先となるポートを確認する。すなわち、転送先となるメモリ領域やアドレス等を割り出す。次に、S4で、前記MPは、前記コマンドにおける要求データの格納位置すなわちライト先に対応した転送先ポートが、自ミックスPK100内にあるI/F-PK210内の外部接続ポートであるか否かを判断する。自ミックスPK100内に無い場合(NO)、S7で、MPの指示に従い該当I/F-PK210のDMAデータ転送処理によって、GCM130にライトデータを転送して格納し、S8で、該当I/F-PK210からホスト50に対し完了報告を行う。
前記S4で他のミックスPK100内にある場合(YES)、次に、S5で、MPは、自ミックスPK100内にLCMがあるか否かを確認する。LCMが無い場合(NO)、S7でGCM130にデータライトして、S8でホスト50に対し完了報告する。前記S5でLCMがある場合(YES)、S6で、自ミックスPK100内のLCMにライトデータを転送して格納し、S8でホスト50に完了報告する。
更に上記ステップS6でLCMへのデータライト時に、合わせてGCM130に対してもライト処理を行うことで(前記図12の動作a1,a3)、LCMまたはGCM130の障害時でも他方のCMを利用してデータ保障が可能となる。
<処理フロー(2)>
図14は、ディスクアレイ装置1に対して外部ディスク制御装置80が接続されている場合におけるデータ転送処理の第2のフローとして、データリード処理を示す。
ホスト50からのリード要求をミックスPK100で受信した時の処理を説明する。まず、ステップS21で、ミックスPK100のI/F-PK210は、ホスト50からリード要求に対応したコマンドを受信する。次に、S22で、DKC10におけるいずれかのMPは、受信したコマンドを解析する。次に、S23で、前記MPは、転送先となるポートを確認する。次に、S24で、前記MPは、前記コマンドにおける要求データの格納位置すなわちリード先に対応した転送先ポートが、自ミックスPK100内にあるI/F-PK210内の外部接続ポートであるか否かを判断する。自ミックスPK100内に無い場合(NO)、S27へ移る。
S27では、前記MPは、GCM130に要求データすなわちリード対象データがあるか否かを確認する。要求データが無い場合(NO)、S29で、MPの指示に従い該当I/F-PK210のDMAデータ転送処理によって、DSW151を介して他のミックスPK100内の外部接続ポートを経由して、外部ディスク制御装置80側のDRV30から要求データをリードし、GCM130の領域に格納して、S31へ移る。前記GCM130に要求データがある場合(YES)、S31へ移る。
S31では、該当I/F-PK210のDMAデータ転送処理によって、GCM130から前記要求データをリードする。そして、S32で、該当I/F-PK210からホスト50へリードデータを送信する。
前記S24で自ミックスPK100内にある場合(YES)、次に、S25で、MPは、自ミックスPK100内にLCMがあるか否かを確認する。LCMが無い場合(NO)、前記S27以降の処理を行う(自ミックスPK100内のポートを用いた処理となる)。LCMがある場合(YES)、次に、S26で、MPは、LCMに要求データがあるか否かを確認する。LCMに要求データが無い場合(NO)、S28で、自ミックスPK100内にあるI/F-PK210内の外部接続ポート経由で、外部ディスク制御装置80側のDRV30から要求データをリードする。そしてリードしたデータをLCMに格納する。そしてS30へ移る。前記LCMに要求データがある場合(YES)、S30へ移る。
S30で、該当I/F-PK210のDMAデータ転送処理によって、GCM130から要求データをリードし、S32で、該当I/F-PK210からホスト50に対しリードデータを送信する。
上記処理で、ローカル性のあるデータについては、GCM130からLCMへとコピーしておくことで、キャッシュアクセス性能を上げることができ、またGCM130の領域から前記コピーした該当データを削除できる。
<プロセッサ接続例(1)>
次に、本発明の一実施の形態におけるディスクアレイ装置1として、DKC10におけるMP間の相互接続及び制御用通信に係わる各形態を示す。前記PN152は、各ミックスPK100を介したMP間の通信に使用される。このPN152は、あるミックスPK100で有するプロセッサ、例えばベースPK101のMP104やMP-PK216内のMP240等だけでなく、他のミックスPK100のプロセッサにも接続されている。
従来のDKCにおける制御通信の仕組みは、共有メモリを使用してCHAやDKA等の制御PK間でのMP間の連絡を行っていたものである。本実施の形態では、PN152の仕組みを用意したことにより、従来の仕組みが不要になる。制御例として、ホスト50からのデータをディスクアレイ装置1内のDRV30にライトする処理に関して、当該処理を1つのMPに制御させることにより、MP間通信無しで処理をスムーズに行うことも可能である。更に、あるミックスPK100におけるベースPK101のMP104やMP-PK216のMP240から、他のミックスPK100に対しデータ転送制御などの制御を行うことが可能となる。これによりDKC10内に有するMPを無駄なく使用して処理効率を向上することが可能となる。また、MP-PK216の接続によりMPだけを増加させることもできるため、処理性能が要求される場合などに、必要に応じて性能向上を図れる。また、データ転送制御などに関してDKC10内のいずれかのMPを使用できるが、特に、転送先となるI/FポートのあるミックスPK100内にあるMPを使用することで、処理効率を高くできる。
MP及びPN152に関する相互接続の形態は、例えば以下である。第1に、PN152を、スイッチ接続またはバス方式の接続とする。第2に、各ミックスPK100のMP同士をダイレクトに接続する。第3に、PN152を、スイッチ接続の構成とすると共にそのスイッチ部にメモリI/Fを持たせて、そのメモリをMP間の共有資源として用いる。
図15は、一実施の形態のディスクアレイ装置1として、DKC10におけるMP間の相互接続及び制御用通信に係わる第1の構成例を示し、MP及びPN152についてスイッチ接続に対応した構成である。PN152として、PSW(プロセッサパス制御スイッチ)153が、DSW151と対になる形で設けられている。なおSVP196及びLAN190を省略して示す。PSW153は、DKC10における各PK間のMP間をグローバルに接続し、プロセッサパスの切り替えを制御する。
CL#1,#2において、ミックスPK#1,#3(100)は、ESCON-I/F-PK211、ファイバI/F-PK212、LCM-PK215、MP-PK216を有する構成である。CL#1において、ミックスPK#2(100)は、2つのファイバI/F-PK212、2つのMP-PK216を有する構成である。CL#2において、ミックスPK#4(100)は、ファイバI/F-PK212、SCSI-I/F-PK213、MP-PK216、1つの空きを有する構成である。
動作a1は、あるミックスPK100でI/F-PK210による制御を行わせる際に、それとは別のミックスPK100に有するMPにより、PSW153を介して、I/F-PK210におけるデータ転送制御を行う場合の制御接続を示す。例として、CL#2のミックスPK#4(100)でSCSI-I/F-PK213によるDRV30のI/F制御を行わせる際に、CL#1のミックスPK#1(100)に有するMP-PK216のMP240により、PSW153を介してSCSI-I/F-PK213の処理を制御する場合である。
動作a2は、ミックスPK100内において、PK内のMPにより、同PK内のI/F-PKの処理を制御する場合の制御接続を示す。例として、ミックスPK#2(100)内のMP-PK216のMP240により、同PK内のファイバI/F-PK212のデータ転送制御を行う場合である。
<プロセッサ接続例(2)>
図16は、一実施の形態のディスクアレイ装置1として、DKC10におけるMP間の相互接続及び制御用通信に係わる第2の構成例を示し、MP相互をダイレクトに接続した構成である。PN152として、各ミックスPK100のLN103同士が、制御線でダイレクトに接続されている。他の構成は、図15と同様である。本構成では、スイッチを経由しない分、高速に処理できる。
動作a1は、あるミックスPK100でI/F-PK210による制御を行わせる際に、それとは別のミックスPK100に有するMPにより、MP間の接続線を介して、I/F-PK210におけるデータ転送制御を行う場合の制御接続を示す。例として、CL#2のミックスPK#4(100)でSCSI-I/F-PK213によるDRV30のI/F制御を行わせる際に、CL#1のミックスPK#1(100)に有するMP-PK216のMP240により、MP間の制御線を介してSCSI-I/F-PK213の処理を制御する場合である。
<プロセッサ接続例(3)>
図17は、一実施の形態のディスクアレイ装置1として、DKC10におけるMP間の相互接続及び制御用通信に係わる第3の構成例を示す。本構成は、PN152として、MP相互をPSW(プロセッサパス制御スイッチ)154で接続し、またMP間の情報交換用に、PSW154に接続されるメモリ155を持たせた構成である。各ミックスPK100のLN103がPSW154に接続される。他の構成は、図15と同様である。PSW154は、PSW153と同様に、MP間の接続を制御すると共に、メモリ155に対する読み書き等の制御が可能である。メモリ155は、MP間で共有される制御情報などの格納に使用される。なお、MP間で共有される制御情報などの格納には、このメモリ155に限らず、LCMまたはGCM130の領域を利用する形態としてもよい。
動作a1は、あるミックスPK100でI/F-PK210による制御を行わせる際に、それとは別のミックスPK100に有するMPにより、PSW154を介して、I/F-PK210におけるデータ転送制御を行う場合の制御接続を示す。例として、CL#1のミックスPK#1(100)でファイバI/F-PK212によるI/F制御を行わせる際に、CL#1のミックスPK#2(100)に有するMP-PK216のMP240により、PSW154を介してファイバI/F-PK212の処理を制御する場合である。
動作a2は、PN152であるPSW154でメモリ155に制御情報読み書きのためにアクセスする場合の接続を示す。例えば、CL#2の第1のミックスPK#3(100)内のMP-PK216のMP240が、PSW154を介してメモリ155にアクセスして、MP間通信用の制御情報を読み書きする。
<データ転送処理例(1):三重ライト処理>
図18は、前述したディスクアレイ装置1におけるデータ転送処理例を示す。第1の処理例として、ディスクアレイ装置1が、外部ディスク制御装置80に接続されたDRV30からデータをリードする動作において、特にデータの三重ライト処理を行う場合について説明する。ここで前提となる構成は、前記図12と同様である。
動作a0は、CL#1のミックスPK#2(100)において、外部ディスク制御装置80が接続されるポートを有するESCON-I/F-PK211が、外部ディスク制御装置80のDRV30からデータを読み出して自PK内のバッファ251に記憶し、DSW151に転送するまでの流れを示す。動作a0の次に繋がる動作として例えば動作a1〜a3がある。
動作a1は、前記ミックスPK#2(100)のESCON-I/F-PK211が、バッファ251からDSW151を介してGCM130にデータをライトする流れを示す。GCM130にデータをキャッシュデータとして配置することにより、他ミックスPK100からのアクセス時にGCM130を用いてキャッシュヒット率が高くなる。
動作a2は、前記ESCON-I/F-PK211が、ホスト50に接続しているミックスPK#1(100)内のLCMに、リードデータをライトする流れを示す。ホスト50とのファイバI/F-PK212と同一ミックスPK100内のLCMにデータをキャッシュデータとして配置することにより、ミックスPK100内でのキャッシュヒット率が高くなる。
動作a3は、前記ESCON-I/F-PK211が、直接ホスト50側にデータ転送する流れを示す。ホスト50とのファイバI/F-PK212へリードデータを転送し、ファイバI/F-PK212によりホスト50へデータ転送する。この場合、CM(GCM130及びLCM)を経由しない分、高速にデータを転送できる。
前記動作a0について、特に前記a1〜a3の動作を同時並行的または順に実行する三重ライト動作が可能であり、それによりGCM130及びLCMにキャッシュデータを配置することで、総合的な入出力性能の向上を図れる。また前記動作a1〜a3を状況に応じて選択的に実行することで入出力性能を高めることも可能である。
<データ転送処理例(2):先読み処理>
前記図18において、第2の処理例として、ディスクアレイ装置1が、外部ディスク制御装置80に接続されたDRV30からデータをリードする動作において、特に先読み処理を行う場合について説明する。本先読み処理は、DKC10内で、特にCMを含む各部の接続構成及びそれらにおけるデータ配置に応じて、今後のデータ転送に備える等の目的で、あらかじめCM間でデータを一方から他方へと先に読み込んで格納しておく処理、すなわちDKC10内でデータを再配置する処理である。
DKC10で、例えば、他装置からのデータ入出力要求に応じた通常のデータ転送処理の前後や遊休状態の時に、本先読み処理を、プロセッサ及びI/F-PK210等によるCMの制御を通じてCM間で実行しておく。その後に通常のデータ転送処理が発生すると、前記先読み処理しておいたデータを利用して処理する。他装置からの入出力要求を受領したI/F-PK210は、自身からできる限り近い位置にあるCM上にある前記再配置されているデータを利用して読み書き等を行い、他装置に対し応答する処理を行う。
DKC10は、本先読み処理で、機能PK102を含む各PKと、GCM130及びLCMを含む各CM等の部位と、DKC10に接続されているホスト50やDRV30等の他装置とを含んだ接続構成及びそれらにおけるデータ配置や入出力関係などを考慮しながら、前記再配置の対象データや位置などを判断する。本処理で、一方のCM上に過去のデータ転送処理等により格納されているデータを、前記考慮に基づき効果的な位置にあると判断される他方のCM上へと読み込んでおく。前記接続構成やデータ配置等は、例えばプロセッサが共有メモリ上の構成情報やディレクトリ情報等により認識できる。
前記効果的な位置にあるCMとは、例えば、データ転送処理における転送元や転送先の他装置と接続するポートを有するI/F-PK210と同一ミックスPK100内にあるLCMや、ミックスPK100間での処理が予想される場合のGCM130などである。
本先読み処理が行われる場合の例を以下で説明する。(1)まず、DKC10とその外部との間で、通常の第1のデータ転送処理が行われる。例えば、ホスト50からのリード要求に従ってDKC10が外部ディスク制御装置80に接続されているDRV30からデータ(以下、リードデータと称する)を読み出してホスト50へ送信する処理が行われる。この際、DKC10内の少なくともいずれかのCMには前記リードデータがキャッシュされることになる。(2)次に、先読み処理が行われる。例えば、ミックスPK#3,#4(100)内の各LCM(それぞれLCM#3,#4とする)及びGCM130の間で、前記考慮に従って効果的となるように前記リードデータが再配置される。(3)次に、通常の第2のデータ転送処理が行われる。例えば、前記第1のデータ転送処理と同様にホスト50からのリード要求が発生したとする。この際、DKC10では、前記先読み処理しておいたデータを利用して、レスポンスが早くなるように処理を図る。他の外部装置やDRV30との入出力の場合も同様に先読み処理が可能である。
図18で、動作a4は、CL#2のミックスPK#4(100)において、外部ディスク制御装置80が接続されるポートを有するESCON-I/F-PK211が、外部ディスク制御装置80のDRV30からデータを読み出して、自PK内のバッファ251に記憶するまでの流れを示す。動作a4の次に繋がる動作として例えば動作a5〜a10がある。
動作a5は、前記ミックスPK#4(100)のESCON-I/F-PK211が、バッファ251からLN103及びDSW151を介してGCM130にデータをライトする流れを示す。動作a6は、前記ESCON-I/F-PK211が、LN103を介してLCM#4にデータをライトする流れを示す。動作a7は、ミックスPK#4(100)内のLCM#4またはGCM130から、ホスト50を接続しているミックスPK#3(100)内のLCM#3へ、データをライトする流れを示す。動作a8は、ミックスPK#4(100)内のLCM#4またはGCM130から、データを、ホスト50を接続しているミックスPK#3(100)内のファイバI/F-PK212を介して、ホスト50に送信する流れを示す。動作a9は、前記ホスト50を接続しているファイバI/F-PK212が、同ミックスPK100内のLCM#4に格納されているデータをホスト50へ送信する流れを示す。動作a10は、GCM130から、ミックスPK#4(100)内のLCM#4へ、データをライトする流れを示す。
前記(1)〜(3)の例における詳細動作を以下に示す。まず前記(1)で、例えば、ミックスPK#3(100)のファイバI/F-PK212が、ホスト50からデータリード要求を受領する。当該要求のリード対象データが、ミックスPK#4(100)のESCON-I/F-PK211に接続されている先の外部ディスク制御装置80に接続されているDRV30にあるものとする。ミックスPK#4(100)のESCON-I/F-PK211が、前記DRV30からデータをリードし(動作a4)、いずれかの転送先にライトする。本例では前記図12の動作a6に示すようにベースPK101間の転送が必要なのでGCM130にリードデータを転送し格納するものとする(動作a5)。なおこの際、前述したように当該リードデータを同ミックスPK100内のLCM#4にキャッシュすること(動作a6)、また前記GCM130とLCM#4の双方への二重ライト処理(動作a5,a6)も可能である。次に、前記ミックスPK#3(100)のファイバI/F-PK212は、GCM130(またはLCM#4)からデータをリードして、ホスト50へ送信する(動作a8)。なおこの際、前述したように当該リードデータを同ミックスPK100内のLCM#3にキャッシュすること(動作a7)も可能である。
次に、前記(2)で、DKC10は、前記接続構成等の考慮に従い、本例ではGCM130,LCM#3,#4の3つのCM間で、先読み動作を実行する。例えば下記第1〜第6の先読み動作を状況に応じて実行可能である。
第1の先読み動作として、GCM130に格納されている前記リードデータを、コピーや移動により、LCM#4に格納する(動作a10)。この動作で、外部ディスク制御装置80側に近い位置のLCM#4にデータを格納しておくことで、特に今後の外部ディスク制御装置80との入出力の際に当該データを利用でき当該データについての入出力のレスポンスが早くなり性能を向上できる。例えばミックスPK#4(100)と外部ディスク制御装置80のDRV30との入出力が遅い場合にLCM#4へ入出力データを集めておくようにする。
また、第2の先読み動作として、前記動作a5でGCM130にデータを格納しておらず動作a6でLCM#4に格納している場合等において、動作a10と逆の流れの動作により、LCM#4からGCM130へ前記リードデータをコピーや移動することが可能である。この動作で、各ミックスPK100に近い位置のGCM130にデータを格納しておくことで、他のミックスPK#1,#2(100)からの前記リードデータへのアクセスが予想される場合等にも当該データを利用しやすくキャッシュヒット率が高くなる。同様にCL#1,#2間のLCM間で一方から反対側や遠方のLCMへとデータをコピーしておくこと等も可能である。
また、第3の先読み動作として、前記動作a6等が行われている場合など、前記LCM#4に前記リードデータがありLCM#3にない場合において、ミックスPK#4,#3(100)間でLCM#4からLCM#3へ前記リードデータをコピーや移動することが可能である(動作a7)。この動作で、ホスト50側に近い位置のLCM#3にデータを格納しておくことで、特に今後のホスト50との入出力の際に当該データを利用でき当該データについての入出力のレスポンスが早くなり性能を向上できる。例えば異種のI/F-PK211,212を介した入出力処理において一方のLCM#4へデータをキャッシュするだけでなく他方のLCM#3へもキャッシュしておく。
また、第4の先読み動作として、前記LCM#3に前記リードデータがありLCM#4にない場合において、前記動作a7と逆の流れの動作で、LCM#3からLCM#4へ前記リードデータをコピーや移動する。この動作で、前記第1の先読み動作と同様の効果を得る。
また、第5の先読み動作として、LCM#3に前記リードデータがない場合において、GCM130からLCM#3へ前記リードデータをコピーや移動する(動作a7)。この動作で、前記第3の先読み動作と同様の効果を得る。
また同様に、第6の先読み動作として、前記LCM#3に前記リードデータがありGCM130にない場合において、前記動作a7と逆の流れの動作で、LCM#3からGCM130へ前記リードデータをコピーや移動する。この動作で、前記第2の先読み動作と同様の効果を得る。
次に、前記(3)で、例えば、ホスト50からの前記(1)と同様のデータリード要求を、ミックスPK#3(100)のファイバI/F-PK212で受領する。当該要求に応じて、ファイバI/F-PK212は、自身から一番近い位置にある同ミックスPK100内のLCM#3にアクセスし、前記先読みされているリードデータを利用して、要求データをホスト50へ送信する(動作a9)。従ってホスト50へのレスポンスを早くできる。LCM#3に先読みされていなかった場合は、前記GCM130やLCM#4から該当データをリードして処理することになる(動作a8)。以上のようにCM間でデータを再配置しておくことで、その後に発生したデータ転送処理で前記再配置済みのデータを利用して効率的な処理が可能である。
<効果>
以上説明した実施の形態により、以下の効果を得られる。(1)ベースPK101と機能PK102の組み合わせにより、1つの制御PK(ミックスPK)100内で様々な特徴的な構成を組むことが可能である。そのため、ユーザのシステムや要求に応じて、I/Fポートの種類や数、ローカルキャッシュメモリ量、プロセッサ数などを可変でき、ディスクアレイ装置1のスケーラビリティを向上できる。例えば、異種I/Fを1つのPK内に統合して処理できる。例えば、PK内でメモリPKを搭載した構成でそのメモリをLCMとして使用することで、データ転送性能を向上できる。例えば、PK内でチャネルI/FとドライブI/FのPKを搭載した構成で、チャネル側とドライブ側とを含んだ一連の処理を効率的に処理できる。例えば、PK内でプロセッサPKを増設した構成で、処理性能の向上が図れる。
(2)I/F-PK210等の機能PK102及びベースPK101を活線挿抜に対応した形式とすることで、ディスクアレイ装置1のシステムの稼動中でも、I/Fポートやメモリやプロセッサ等のそれぞれを柔軟に増減でき、PKの増減設・交換や故障時にもシステムへの影響を少なくして、保守性や信頼性を向上できる。
(3)外部ディスク制御装置80との接続時など、異種I/F間でのデータ転送時にも、同一ミックスPK100内で転送処理できることにより、そのデータ転送性能の向上が実現できる。
本発明のその他の実施の形態として、制御PK100をベースPK101と機能PK102の階層的接続構成とするのではなく、1つの制御PK100内に、異種I/Fの機能の処理部(機能PK102に相当する部位)を一体的に実装した異種I/F混在型の1つの統合PKとして提供する。前述した各構成例に対応して、異種I/F等の組み合わせを固定化して統合PKとして提供し、これを前述の実施の形態と同様に接続してDKC10を構成する。本構成は、前記機能PK102の挿抜無しで固定化した構成に相当する。統合PK内でLN103を介して異種I/F間及び他PKと通信処理する。本形態の場合も、1つの統合PK内で異種I/F間の通信処理が完了でき、前述したミックスPK100と同様の効果を得ることができる。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
本発明は、外部装置とのI/F処理機能を有する記憶制御装置などの情報処理装置に利用可能である。
本発明の一実施の形態におけるディスクアレイ装置の全体のハードウェア外観構成を示す斜視図である。 本発明の一実施の形態におけるディスクアレイ装置を含んで構成される情報処理システムの全体の構成を示すブロック図である。 (a)〜(c)は、本発明の一実施の形態のディスクアレイ装置における、ベースPKの構成例を示す図である。 (a)〜(c)は、本発明の一実施の形態のディスクアレイ装置における、機能PKの構成例を示す図である。 本発明の一実施の形態のディスクアレイ装置における、ミックスPKの構成例及びPK挿抜について示す説明図である。 (a),(b)は、本発明の一実施の形態のディスクアレイ装置における、PK接続の構成例として、DKCボックスにおけるPK装着脱の構成について示す図である。 本発明の一実施の形態のディスクアレイ装置における、DKCにミックスPKを組み込む場合のミックスPKの構成例を示すブロック図である。 本発明の一実施の形態のディスクアレイ装置における、PK組み合わせによるDKCの第1の構成例とそのデータ転送動作例を示すブロック図である。 本発明の一実施の形態のディスクアレイ装置における、PK組み合わせによるDKCの第2の構成例とそのデータ転送動作例を示すブロック図である。 本発明の一実施の形態のディスクアレイ装置における、PK保守交換例として、(a)は、機能PKの増設と障害発生時の交換の例を示し、(b)は、ベースPK/ミックスPKの障害発生時の交換の例を示す説明図である。 本発明の一実施の形態のディスクアレイ装置における、外部ディスク制御装置を通信接続した場合の第1の構成例を示すブロック図である。 本発明の一実施の形態のディスクアレイ装置における、外部ディスク制御装置を通信接続した場合の第2の構成例を示すブロック図である。 本発明の一実施の形態のディスクアレイ装置における、外部ディスク制御装置が接続されている場合におけるデータ転送処理の第1のフローとしてデータライト処理を示すフロー図である。 本発明の一実施の形態のディスクアレイ装置における、外部ディスク制御装置が接続されている場合におけるデータ転送処理の第2のフローとしてデータリード処理を示すフロー図である。 本発明の一実施の形態のディスクアレイ装置として、DKCにおけるMP間の相互接続及び制御用通信に係わる第1の構成例を示すブロック図である。 本発明の一実施の形態のディスクアレイ装置として、DKCにおけるMP間の相互接続及び制御用通信に係わる第2の構成例を示すブロック図である。 本発明の一実施の形態のディスクアレイ装置として、DKCにおけるMP間の相互接続及び制御用通信に係わる第3の構成例を示すブロック図である。 本発明の一実施の形態のディスクアレイ装置における、データ転送処理例として、第1の処理例として三重ライト処理と第2の処理例として先読み処理とを示すブロック図である。 従来のディスクアレイ装置におけるDKCの構成例を示し、特に外部ディスク制御装置との接続構成及びデータ転送動作についても示すブロック図である。
符号の説明
1,901…ディスクアレイ装置、10,910…DKC、30…HDD、50…ホスト、70…ネットワーク、80…外部ディスク制御装置、90…バックプレーンボード、100…制御PK/ミックスPK、101…ベースPK、102…機能PK、103…LN(PK内相互接続網)、104…MP、105,106…コネクタ、107…LED、108…LDSW、109…LPN、130…GCM(グローバルキャッシュメモリ)、151…DSW(データパス制御スイッチ)、152…PN(プロセッサ相互接続網)、153,154…PSW、155…メモリ、190…LAN、191…バッテリ、192…ACボックス、193…AC−DC電源、194…DKCボックス、195,199…ファン、196…SVP、197…パネル、198…HDDボックス、210…I/F-PK、215…LCM-PK、216…MP-PK、221…チャネルアダプタ、222…プロトコルアダプタ、223,224…コネクタ、225…キャッシュアダプタ、227…LED、230…メモリ、240…MP、250…DMAC、251…バッファ、252…レジスタ、300…DKU、911…CHA-PK、912…DKA-PK、913…CM-PK、914…CSW-PK、920,923…MP、921,924…DTA(データ転送制御部)、926…CMA(キャッシュメモリアダプタ)、927…メモリ、928…CARB(キャッシュ調停回路)。

Claims (13)

  1. 記憶装置と前記記憶装置に対するデータの記憶を制御する記憶制御装置とを備えRAID制御可能なディスクアレイ装置であって、
    前記記憶制御装置は、制御パッケージと、前記制御パッケージを相互接続するスイッチと、を備え
    前記制御パッケージは、当該制御パッケージを制御するプロセッサと、前記相互接続のベースとなるベースパッケージと、前記ベースパッケージに対して階層的に接続される、個々に分離された機能が実装された機能パッケージとを有し、
    前記ベースパッケージは、前記相互接続のための第1の接続部と、複数の異種の前記機能パッケージを混在して接続可能な第2の接続部と、前記機能パッケージ間の通信に用いられるパッケージ内接続網とを有し、
    前記機能パッケージは、前記ベースパッケージに対する接続のための接続部を有し、
    前記機能パッケージは前記接続部を介して前記ベースパッケージの第2の接続部に対して活線挿抜され、前記ベースパッケージは前記第1の接続部を介して前記ベースパッケージを含む部位の相互接続のための前記スイッチを構成するボードの接続部に対して活線挿抜され、前記活線挿抜では、前記記憶制御装置が稼動中の状態において挿抜が可能であり、
    前記制御パッケージは、
    (1)I/F機能が実装された第1の機能パッケージを介して、I/F機能が実装された第2の機能パッケージに接続された前記記憶装置へのデータを受信した場合、前記プロセッサによる制御により、
    (1a)前記第2の機能パッケージが、前記第1の機能パッケージが接続された第1のベースパッケージに接続されているときは、前記パッケージ内接続網を介して前記データを前記第1の機能パッケージから前記第2の機能パッケージに転送し、
    (1b)前記第2の機能パッケージが、前記第1のベースパッケージとは異なる第2の制御パッケージの第2のベースパッケージに接続されているときは、前記スイッチを介して前記データを前記第1のベースパッケージから前記第2のベースパッケージに転送することを特徴とするディスクアレイ装置。
  2. 請求項1記載のディスクアレイ装置において、
    前記記憶制御装置は、さらに、前記制御パッケージに前記スイッチを介して接続された共有メモリを有し、
    前記制御パッケージのベースパッケージは、キャッシュメモリが実装された第3の機能パッケージが接続され、
    前記制御パッケージは、
    (2)前記第1の機能パッケージを介して、前記記憶装置へのデータを受信した場合、前記プロセッサによる制御により、
    (2a)前記第1のベースパッケージに前記第2の機能パッケージ及び前記第3の機能パッケージが接続されているときは、前記データを前記第3の機能パッケージのキャッシュメモリに格納し、
    (2b)前記第2の制御パッケージの前記第2のベースパッケージに前記第2の機能パッケージが接続されているときは、前記データを前記共有メモリに格納することを特徴とするディスクアレイ装置。
  3. 請求項1記載のディスクアレイ装置において、
    前記記憶制御装置は、
    前記スイッチに相当する、前記パッケージ内接続網が相互接続される、前記ベースパッケージを含む部位間での通信のためのグローバル接続網として、前記ベースパッケージ間でのデータ転送のためのデータパス制御スイッチと、前記ベースパッケージ間でのプロセッサ間通信のためのプロセッサ接続網とを有し、
    前記共有メモリに相当する、前記データパス制御スイッチに接続されるグローバルキャッシュメモリを有し、
    前記機能パッケージとして、外部装置に対するI/Fに対応したチャネルI/Fパッケージと、前記記憶装置に対するI/Fに対応したドライブI/Fパッケージとを有することを特徴とするディスクアレイ装置。
  4. 請求項1記載のディスクアレイ装置において、
    前記機能パッケージとして、前記記憶制御装置の外部に対する特定のI/Fを実装したI/Fパッケージを有し、
    前記I/Fパッケージは、
    外部に対するポートを構成する、I/Fに対応したプロトコル処理を行う回路と、
    前記ポートに対する接続用のコネクタと、
    前記パッケージ内接続網に接続されDMAデータ転送処理と前記ポートの制御とを含むI/F制御を行うアダプタとを有することを特徴とするディスクアレイ装置。
  5. 請求項1記載のディスクアレイ装置において、
    前記機能パッケージとして、プロセッサを実装したプロセッサパッケージを有し、
    データ転送において前記プロセッサパッケージのプロセッサを利用して制御することを特徴とするディスクアレイ装置。
  6. 請求項3記載のディスクアレイ装置において、
    前記ベースパッケージは、前記パッケージ内接続網に接続される前記プロセッサを備え、
    前記プロセッサは、前記パッケージ内接続網及び前記プロセッサ接続網を介して、前記記憶制御装置内の他のプロセッサと通信し、前記機能パッケージ内の処理部を制御することを特徴とするディスクアレイ装置。
  7. 請求項1記載のディスクアレイ装置において、
    前記ベースパッケージと機能パッケージに、パッケージ状態及びパッケージ保守・管理の操作に対応してその表示が制御される表示器を備え、
    前記記憶制御装置または前記記憶制御装置に接続される保守・管理装置から、保守・管理操作の指示を表わすように対象パッケージの前記表示器の表示が制御されることを特徴とするディスクアレイ装置。
  8. 請求項1記載のディスクアレイ装置において、
    前記記憶制御装置に接続される保守・管理装置を有し、
    前記保守・管理装置は、前記ベースパッケージと機能パッケージの接続構成を含む構成情報を管理し、各パッケージの装着脱時に、そのパッケージのIDと前記構成情報とを参照して構成チェックを行うことを特徴とするディスクアレイ装置。
  9. 請求項3記載のディスクアレイ装置において、
    前記プロセッサ接続網は、パッケージ間のプロセッサ間通信のためのプロセッサパスの切り替えを制御するスイッチで構成されることを特徴とするディスクアレイ装置。
  10. 請求項3記載のディスクアレイ装置において、
    前記プロセッサ接続網は、前記パッケージ内接続網の間で、プロセッサ間通信のための制御線がダイレクトに接続される構成を有することを特徴とするディスクアレイ装置。
  11. 請求項3記載のディスクアレイ装置において、
    前記プロセッサ接続網は、パッケージ間のプロセッサ間通信のためのプロセッサパスを制御するプロセッサパス制御スイッチと、前記プロセッサパス制御スイッチに接続されプロセッサ間で共用される制御情報が読み書きされるメモリとで構成されることを特徴とするディスクアレイ装置。
  12. 請求項1記載のディスクアレイ装置において、
    前記共有メモリとして、前記制御パッケージ間のグローバル接続網を構成する前記スイッチに接続されるグローバルキャッシュメモリを有し、
    前記制御パッケージに、ローカルキャッシュメモリを有するメモリパッケージが接続されている状態において、
    データ転送時に、前記グローバルキャッシュメモリと、前記ローカルキャッシュメモリと、転送先領域とに対してデータを三重ライト処理することを特徴とするディスクアレイ装置。
  13. 請求項1記載のディスクアレイ装置において、
    前記共有メモリとして、前記制御パッケージ間のグローバル接続網を構成する前記スイッチに接続されるグローバルキャッシュメモリを有し、
    前記制御パッケージに、ローカルキャッシュメモリを有するメモリパッケージを有する状態において、
    前記記憶制御装置は、外部に接続される他装置からのデータ入出力要求を受領する前において、前記機能パッケージを含む各パッケージと、前記グローバルキャッシュメモリと前記ローカルキャッシュメモリを含む各キャッシュメモリと、前記他装置とを含んだ接続構成及びそれらにおけるデータの配置を考慮して、前記各キャッシュメモリの間で、第1のキャッシュメモリに格納されているデータを第2のキャッシュメモリへとコピーまたは移動により格納することにより前記データを再配置する処理を行い、
    前記他装置からのデータ入出力要求を受領した前記パッケージは、自身から近い位置にある前記キャッシュメモリに再配置されているデータを利用して入出力し、前記他装置に対し応答する処理を行うことを特徴とするディスクアレイ装置。
JP2005062097A 2005-03-07 2005-03-07 ディスクアレイ装置 Expired - Fee Related JP4620502B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005062097A JP4620502B2 (ja) 2005-03-07 2005-03-07 ディスクアレイ装置
US11/127,205 US7890698B2 (en) 2005-03-07 2005-05-12 Disk array apparatus including control packages each having a base package and a functional package hierarchically connected to the base package
US12/959,627 US20110078374A1 (en) 2005-03-07 2010-12-03 Disk array apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005062097A JP4620502B2 (ja) 2005-03-07 2005-03-07 ディスクアレイ装置

Publications (2)

Publication Number Publication Date
JP2006244340A JP2006244340A (ja) 2006-09-14
JP4620502B2 true JP4620502B2 (ja) 2011-01-26

Family

ID=37050675

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005062097A Expired - Fee Related JP4620502B2 (ja) 2005-03-07 2005-03-07 ディスクアレイ装置

Country Status (2)

Country Link
US (2) US7890698B2 (ja)
JP (1) JP4620502B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008191908A (ja) * 2007-02-05 2008-08-21 Fujitsu Ltd ディスクアレイ保守システム,ディスクアレイ装置,保守コンピュータ,部品保守交換方法および部品保守交換用プログラム
JP4674242B2 (ja) * 2008-02-05 2011-04-20 富士通株式会社 仮想化スイッチ、コンピュータシステムおよびデータコピー方法
JP5147586B2 (ja) * 2008-07-30 2013-02-20 株式会社日立製作所 ストレージ装置及びその制御方法
US8489826B2 (en) 2010-03-25 2013-07-16 Hitachi, Ltd. Storage controller and storage subsystem with added configurable functions
CN114816571B (zh) * 2022-04-15 2023-06-16 西安广和通无线通信有限公司 外挂闪存的方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003036127A (ja) * 2002-05-27 2003-02-07 Hitachi Ltd パッケージの閉塞方法
JP2003316489A (ja) * 2002-04-24 2003-11-07 Hitachi Ltd 活線挿抜装置および活線挿抜方法
JP2004227100A (ja) * 2003-01-20 2004-08-12 Hitachi Ltd 記憶デバイス制御装置にソフトウエアをインストールする方法、記憶デバイス制御装置の制御方法、及び記憶デバイス制御装置
JP2004272527A (ja) * 2003-03-07 2004-09-30 Hitachi Ltd ディスクアレイ装置および障害回復制御方法
JP2005018516A (ja) * 2003-06-27 2005-01-20 Hitachi Ltd 記憶装置システム及び記憶装置システムの保守方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0389151A3 (en) * 1989-03-22 1992-06-03 International Business Machines Corporation System and method for partitioned cache memory management
US5396635A (en) * 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
US5517015A (en) * 1990-11-19 1996-05-14 Dallas Semiconductor Corporation Communication module
DE69418984T2 (de) * 1993-11-30 2000-01-27 Hitachi Ltd Speicherplattenanordnung mit auf einer Vielzahl von Leiterplatten verteilten Speicherplatten, die bei einer Entfernung eines Teils der Leiterplatten zugänglich bleiben
JP3161189B2 (ja) * 1993-12-03 2001-04-25 株式会社日立製作所 記憶システム
JPH08137631A (ja) * 1994-11-15 1996-05-31 Hitachi Ltd ディスクアレイ装置
JPH08263225A (ja) * 1995-03-22 1996-10-11 Mitsubishi Electric Corp データストレージシステム及びストレージ管理方法
JPH096549A (ja) * 1995-06-26 1997-01-10 Hitachi Ltd 積層型ディスクアレイ装置
US5790890A (en) * 1996-02-29 1998-08-04 Sun Microsystems, Inc. Identification interface
JPH10269024A (ja) * 1997-03-27 1998-10-09 Xing:Kk ディスクアレイ制御システム及びそれに使用される増設ユニット
JP4053208B2 (ja) 2000-04-27 2008-02-27 株式会社日立製作所 ディスクアレイ制御装置
US7032119B2 (en) * 2000-09-27 2006-04-18 Amphus, Inc. Dynamic power and workload management for multi-server system
US7209981B1 (en) * 2004-01-09 2007-04-24 Z Microsystems, Inc. System and method for switching data storage devices and multiple processors

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003316489A (ja) * 2002-04-24 2003-11-07 Hitachi Ltd 活線挿抜装置および活線挿抜方法
JP2003036127A (ja) * 2002-05-27 2003-02-07 Hitachi Ltd パッケージの閉塞方法
JP2004227100A (ja) * 2003-01-20 2004-08-12 Hitachi Ltd 記憶デバイス制御装置にソフトウエアをインストールする方法、記憶デバイス制御装置の制御方法、及び記憶デバイス制御装置
JP2004272527A (ja) * 2003-03-07 2004-09-30 Hitachi Ltd ディスクアレイ装置および障害回復制御方法
JP2005018516A (ja) * 2003-06-27 2005-01-20 Hitachi Ltd 記憶装置システム及び記憶装置システムの保守方法

Also Published As

Publication number Publication date
JP2006244340A (ja) 2006-09-14
US20060253863A1 (en) 2006-11-09
US20110078374A1 (en) 2011-03-31
US7890698B2 (en) 2011-02-15

Similar Documents

Publication Publication Date Title
US7584325B2 (en) Apparatus, system, and method for providing a RAID storage system in a processor blade enclosure
US6581128B2 (en) Storage system
US7360047B2 (en) Storage system, redundancy control method, and program
KR100740080B1 (ko) 데이터 기억 시스템 및 데이터 기억 제어 장치
US7487328B2 (en) Storage apparatus having virtual-to-actual device addressing scheme
US7231490B2 (en) Storage device control apparatus and control method for the storage device control apparatus
JP2007012000A (ja) 記憶制御装置及びストレージシステム
JP4620502B2 (ja) ディスクアレイ装置
US7216195B1 (en) Architecture for managing disk drives
JP2006221451A (ja) ディスクアレイ装置
US7487293B2 (en) Data storage system and log data output method upon abnormality of storage control apparatus
JP5038589B2 (ja) ディスクアレイ装置及びその負荷分散方法
JP4372427B2 (ja) 記憶デバイス制御装置
US7426658B2 (en) Data storage system and log data equalization control method for storage control apparatus
JP3627380B2 (ja) ディスクきょう体管理方式
EP1746489A1 (en) Storage control system
JP2006293501A (ja) ストレージシステム、構成管理方法、及びプログラム
Blunden et al. Understanding SSA Subsystems in Your Environment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100622

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100823

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

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

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

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4620502

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees