JP2006164095A - ディスクシステム - Google Patents

ディスクシステム Download PDF

Info

Publication number
JP2006164095A
JP2006164095A JP2004357543A JP2004357543A JP2006164095A JP 2006164095 A JP2006164095 A JP 2006164095A JP 2004357543 A JP2004357543 A JP 2004357543A JP 2004357543 A JP2004357543 A JP 2004357543A JP 2006164095 A JP2006164095 A JP 2006164095A
Authority
JP
Japan
Prior art keywords
data
difference
computer
blade
disk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004357543A
Other languages
English (en)
Other versions
JP4613598B2 (ja
Inventor
Yasushi Kobayashi
裕史 小林
Takeshi Nagatani
剛 永谷
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 JP2004357543A priority Critical patent/JP4613598B2/ja
Publication of JP2006164095A publication Critical patent/JP2006164095A/ja
Application granted granted Critical
Publication of JP4613598B2 publication Critical patent/JP4613598B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】
従来は、ブレードごとに外部ディスクシステムにOSデータを格納していたため、ディスクシステムの記憶容量を大きく占有していた。
【解決手段】
1つのOSマスタデータ101と各ブレードのOSデータの差分を差分管理テーブル115として格納する差分データ102、ブレードからの要求を処理する要求コマンドデータ処理手続き105により、OSマスタデータ101に対する変更要求をフックして差分データ102に書き込むことで、マスタデータ101と差分データ102から必要なデータをロードしてOSを起動する。
【選択図】 図1

Description

本発明は、ブレードシステムにおいて外部ディスクシステムからOSを起動する方法およびそのシステムに関するものである。
特開2002−32153号公報に記載のように、ブレードシステムとはサーバユニット搭載用筐体に多数のサーバユニットを搭載できるとともに、効率よく冷却できる構造を有するサーバユニットである。従来はそのシステムにおいて、ディスクが搭載されていないディスクレスなサーバユニット(ブレード)が、Fibreなどで接続された外部ディスクシステムからOSを起動する場合、ブレードごとに外部ディスクシステムにOSデータを格納していた。
特開2002−32153号公報
上記従来技術では、ブレードのOSデータは類似しているにもかかわらず、ブレードの台数分のOSデータが必要となり、ディスクシステムの記憶容量を大きく占有していた。また、セキュリティパッチなどを適応する際にも、全てのOSデータに対して行う必要があり、ユーザや管理者の手間が多かった。
本発明の目的は、ディスク占有量と管理者の手間を軽減する外部ディスクシステムを提供することである。
上記目的を達成するために、複数の計算機(ブレード)が接続された本発明のディスクシステムは、以下に示す動作を行う。
例えばブレード1のOSを起動する場合、ブレード1に変更分を含む最新のOSデータを格納するために、ブレード1からのOSデータの読み込み要求に基づいて、所定のデータ長のデータブロックごとに、所定の回数分だけ以下の処理a)からd)を繰り返す。
a)ブレード1からデータブロックの単位でOSデータの読み込み要求を受け付ける。
b)ブレード1に固有な、OSデータの差分データをブレード1に対応した差分管理テーブルから検索する。
c)差分管理テーブルに差分データがあれば、検索されたデータブロック分の差分データをブレード1のメモリに転送する。
d)差分管理テーブルに差分データがなければ、各ブレードに共通なOSデータを格納したOSマスタデータからデータブロック分のOSデータを取り出してブレード1のメモリに転送する。
ブレード1の動作中にOSデータが変更された場合、ディスクシステムは、ブレード1から変更されたOSデータの書き込み要求を受け取り、受け取った要求に含まれ、変更されたOSデータが格納されたデータブロックを、書き込み要求に含まれるデータブロックの番号(LBA)と共に、ブレード1に対応する差分管理テーブルに格納する。この時、差分管理テーブルにおいて、書き込み要求が示すLBAに対応する差分データが既に格納されていれば、新たな書き込み要求によって差分データが更新され、まだ格納されていなければ、差分データが追加される。ブレード1においてOSデータが変更されると、その都度、上記の書き込み処理が実行される。
本発明によれば、ディスクシステムのデータ格納において、類似しているOSデータが一つであり、差分データのディスク占有量は少ないため、外部ディスクシステムの記憶容量を節約できる。
以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明する。
図1は、本発明における一実施例であるディスクシステムの構成を示す。
本実施例では、ファイバーケーブル113で互いに接続されたブレードシステム114とディスクシステム100で実現されている。ブレードシステム114とディスクシステム100は、要求コマンドデータ108と応答コマンドデータ109の送受信によって通信する。
ブレードシステム114には、それぞれが1つのコンピュータの機能を有するボード(ブレード)が複数個装着され、その中の1つ又は複数個のブレードの組みによって所定のアプリケーションに対応した動作を行い、使用目的や状況に応じてアプリケーションに対応したブレードの組みを変更できるようになっている.
ブレードシステム114は、ブレード1(112a)とブレード2(112b)を有し、ディスクシステム100は、各ブレードに共通なOS(オペレーティングシステム)データであるOSマスタデータを含むマスタ論理ディスク(以下、LU0(101))、各ブレード
に固有なOSデータ(OSマスタデータに対する変更情報)を管理する差分管理テーブル115を含む差分論理ディスク(以下、LU1(102a)、LU2(102b))、及び管理情報104と要求コマンドデータ処理105を含むディスクアレイコントローラ103から構成されている。ここで、LU0、LU1、LU2などはディスクのロジカルユニット番号である。
管理情報104と要求コマンドデータ処理105は、ディスクアレイコントローラ103内のメモリ130に格納されている。
差分管理テーブル115には、ブレード1に固有のOSデータ117が格納される。差分論理ディスクLU2(102b)も同様に、差分管理テーブルを有し、このテーブルにはブレード2に固有のOSデータが格納される。管理情報104には、共有LUマッピングテーブル110とシステムマッピングテーブル111が含まれ、要求コマンドデータ処理手続き105には、読み込み要求処理手続き106と書き込み要求処理手続き107が含まれる。
図1において、OSマスタデータが1つであるため、セキュリティパッチを適応する際に、一つのOSデータに適応するだけで良く、管理者の手間が軽減できる。また、差分データが原因でおきた障害時のリカバリの際に、OSマスタデータと差分データが分離しているため、差分データとのリンクを切り離して、OSマスタデータから起動することにより、復旧時間を短縮できる。
本実施例では、ブレード1とブレード2の2台と、差分データを含むLU1とLU2で実施例を示しているが、ブレードの台数や差分データを含むLUの数は任意でもよい。
次に、図1で示した構成の各要素について詳細に説明する。
図2は、ブレードシステム114に含まれるブレード1(112a)からディスクシステム100に含まれるディスクアレイコントローラ103に対して送信される要求コマンドデータ108を示す。要求コマンドデータ108には、コマンド名称200、対象LU201、要求対象のデータの論理ブロックアドレスLBA(Logical Block Address)202、データ203、発行元システム名称204が含まれる。コマンド名称200には、書き込みと読み込みのいずれかが指定され、図1で示した要求コマンドデータ処理105において、要求がデータの読み込みであるのか書き込みであるのかを判断する際に参照する。対象LU201には、ディスクシステム100が管理するロジカルユニット(LU)番号が格納され、要求コマンドデータ処理105において、どのLUに対しての要求であるのかを判断する際に参照する。LBA202には、論理ブロックアドレス(LBA)が格納され、読み込み要求処理106、または書き込み要求処理107において、ディスクのどこのアドレスに対する要求であるかを判断する際に参照する。データ203には、書き込み要求時に書き込むバイナリデータが格納され、書き込み要求処理107において、ディスクにデータを書き込む際に参照する。発行元システム名称204には、ブレードシステム114に含まれる各ブレードが一意に決まるデータが格納され、要求コマンド処理105において、どのブレードからの要求であるのかを判断する際に参照する。読み込み要求処理106、または書き込み要求処理107では、所定のデータ長の論理ブロックの単位でデータの入出力動作が行われる。
図3は、ディスクシステム100に含まれるディスクアレイコントローラ103からブレードシステム114に含まれるブレード1(112a)に対して、要求コマンドデータに応答して返す、応答コマンドデータ109を示す。応答コマンドデータ108には、コマンド名称300、データ301が含まれる。コマンド名称300には、書き込み完了と読み込み完了のいずれかが指定され、読み込み要求処理106、または書き込み要求処理107において、処理が完了した際に格納される。データ301には、ブレードシステム114からの読み込み要求に対応する応答時に、読み込んだバイナリデータが格納され、ブレードシステム114がこのデータを受け取る。
図4は、ディスクアレイコントローラ103に含まれ、OSマスタデータLU0(101)とシステムマッピングテーブル111との関連付けを行う共有LUマッピングテーブル110を示す。共有LUマッピングテーブル110には、共有LU番号400、システムマッピングテーブル番号401が含まれる。共有LU番号400には、複数のブレードがOSの起動に使用するOSマスタデータLU0(101)のLU番号が格納され、要求コマンドデータ処理105において、要求コマンドデータ108の対象LUと一致する共有LU番号を特定する際に参照する。システムマッピングテーブル番号401には、共有LU番号に対応したシステムマッピングテーブル111の番号が格納され、要求コマンドデータ処理105において、共有LU番号400に対応したシステムマッピングテーブル111を特定する際に参照する。実施例では、OSマスタデータLU0(101)のLU番号0と対応するシステムマッピングテーブル番号401の“0”が存在する例を示したが、登録する共有LU番号400及びシステムマッピングテーブル番号401の個数は任意でもよく、複数のOSマスタデータLU0(101)を使用することができる。本テーブルは、ディスクシステム100にOSマスタデータ101を作成する際に、システム管理者が作成する。
図5は、ディスクアレイコントローラ103に含まれ、ブレード1及びブレード2とそれぞれに対応する差分データLU102との関連付けを行うシステムマッピングテーブル111を示す。システムマッピングテーブル111には、システム名称500と差分LU番号501が含まれる。システム名称500には、ブレードシステム114に含まれる各ブレードを一意に決めるためのデータが格納され、要求コマンドデータ処理105において、要求コマンドデータ108の発行元システム名称204と一致するブレードを特定する際に参照する。差分LU番号501には、各ブレードが使用する差分LUの番号が格納され、要求コマンドデータ処理105において、各ブレードに対応した差分データLU(102)を特定する際に参照する。本実施例では、ブレード1(112a)及びブレード2(112b)とそれぞれ対応する差分LU番号(501)1及び2が存在する例を示したが、システム名称500、差分LU番号501の個数は任意でもよい。また、本実施例では、システムマッピングテーブル0が存在する例を示したが、図4で示した共有LUマッピングテーブル110のシステムマッピングテーブル番号数分のシステムマッピングテーブル111が存在する。本テーブルは、ディスクシステム100にブレードの台数分の差分データ102を作成する際に、管理者が作成する。
図6は、差分LUデータ(102)に含まれ、OSマスタデータLU0(101)に対して書き込み要求のあった場合に、そのデータの格納位置を示すLBAとデータを格納する差分管理テーブル115を示す。差分管理テーブル115には、参照LBA600、差分データ601が含まれる。参照LBA600には、OSマスタデータLU0(101)に対して書き込み要求のあったLBAが格納され、読み込み要求処理106、または書き込み要求処理107において、要求コマンドデータ108のLBAと一致する参照LBA600を特定する際に参照される。差分データ601には、OSマスタデータLU0(101)に対する書き込み要求時のバイナリデータが格納される。読み込み要求処理106、または書き込み要求処理107において、参照LBA600に対応した差分データ601が読み込み、または書き込み時に参照される。本実施例では、参照LBA600として“200”、“201”、“202”が存在し、差分データ601として“データ1−1”、“データ1−2”、“データ1−3”が存在する例を示したが、参照LBA600、差分データ601の個数は、必要に応じて増減する。
図7は、差分管理テーブル115の差分データ601に格納されている各ブレードに固有のOSデータ117を示す。各ブレードに固有のOSデータ117には、デバイス情報700、ドライバ情報701、OS情報702、アプリケーション情報703が含まれる。これらのデータは、各ブレードでのOS動作中に変更されたOSデータであり、差分管理テーブル115に、OSマスタデータLU0(101)との差分データ601としてLBA単位で格納されているため、これらのデータだけでは格納データとして意味を持たない。本実施例では、デバイス情報700、ドライバ情報701、OS情報702、アプリケーション情報703が存在する例を示したが、各ブレードに固有なOSデータとして他の情報も書き込婿とができる。
図13は、ブレード1がディスクアレイコントローラ103に要求コマンドデータ108を送信する際に、データの格納場所を特定する際に参照するデータ格納場所参照テーブル122を示す。各ブレード112がこのテーブル122を保持している。データ格納場所参照テーブル122には、データ名称800、格納LBA801、LBAサイズ802が含まれる。データ名称800には、ブレード1(112a)で読み込み、または書き込み要求が発生した際に、対象となるデータ名称が格納され、要求コマンドデータ108を送信する際に、要求するデータ名称と一致する項目を検索する際に参照する。格納LBA801には、各データが格納されているディスクのLBAが格納され、要求コマンドデータ108を送信する際に、要求するデータが格納されているLBAを特定する際に参照する。LBAサイズ802は各データのサイズが格納されており、要求コマンドデータ108を送信する際に、要求コマンドデータ108を送信する回数を判断する際に参照する。本実施例では、データ名称800として、“ブートローダ”、“OSローダ”、“OSデータ”、“書き込みデータ1”、“書き込みデータ2”が存在する例を示したが、データ名称800には必要に応じて他のOSデータも含むことができる。
次に、全体の処理の流れについて詳細に説明する。
図11は、図1においてブレード1(112a)がはじめてOSを起動する場合の処理を示したものである。図1に示すブレード1の起動処理は、1)ブートローダ起動、2)OSローダ起動、3)OS起動、及び4)OS変更の4つの処理ブロックからなる。
ブレード1(112a)の電源を入れるとBIOS121が起動される(S40)。
1)ブートローダ起動:
次に、ブートローダ118を読み込むために、データ格納場所参照テーブル122のデータ名称800の”ブートローダ”に対応する格納LBA801の値”0”、LBAサイズ802の値”1”を取得する(S41)。次に、要求コマンドデータ108のコマンド名称200に”読み込み“、対象LU201にOSマスタデータ101のLU番号”0”、LBA202に取得した格納LBA801の値”0”、発行元システム名称204に”ブレード1”をそれぞれ格納して、ディスクアレイコントローラ103に送信する(S42)。
要求コマンドデータ108を受け取ったディスクアレイコントローラ103は、要求コマンドデータ処理手続き105を実行して、OSマスタデータ101からブートローダ118を読み込む(S43)。次に、応答コマンドデータ109のコマンド名称300に”読み込み完了”を格納し、データ301に読み込んだデータ(ブートローダ118)を格納して、ブレード1(112a)に送信する(S44)。
ブレード1(112a)は、応答コマンドデータ109からブートローダ118を取り出してメモリにロードする(S45)。次に、先に取得したデータ格納場所参照テーブル122のLBAサイズ802の値”1”をデクリメントして、結果が0であるため、ブートローダ118をすべてブレード1のメモリに読み込んだと判断して、ブートローダを起動する(S46)。
本実施例では、ブートローダ118のLBAサイズ802が”1”である場合の例を示したが、LBA802の値は任意でもよい。その場合、デクリメントした結果が0になるまで、ステップS42からS45の処理を繰り返す。
2)OSローダ起動:
ブレード1(112a)で起動されたブートローダ118は、OSローダ119を起動するために、データ格納場所参照テーブル122のデータ名称800の”OSローダ”に対応する格納LBA801の値”1”、LBAサイズ802の値”1”を取得する(S47)。次に、要求コマンドデータ108のコマンド名称200に”読み込み”、対象LU201にOSマスタデータ101のLU番号”0”、LBA202に取得した格納LBA801の値”1”、発行元システム名称204に”ブレード1”をそれぞれ格納して、ディスクアレイコントローラ103に送信する(S48)。
ブレード1(112a)で起動されたブートローダ118からの要求コマンドデータ108を受け取ったディスクアレイコントローラ103は、要求コマンドデータ処理手続き105を実行して、OSマスタデータ101からOSローダ119を読み込む(S49)。次に、応答コマンドデータ109のコマンド名称300に”読み込み完了”、データ301に読み込んだデータ(OSローダ119)を格納して、ブレード1(112a)に送信する(S50)。
ブレード1(112a)は、応答コマンドデータ109からOSローダ119をメモリにロードする(S51)。次に、先に取得したデータ格納場所参照テーブル122のLBAサイズ802の値”1”をデクリメントして、結果が0であるため、OSローダ119をすべて読み込んだと判断して、OSローダ119を起動する(S52)。
本実施例では、OSローダ119のLBAサイズ802が”1”である場合の例を示したが、LBA802の値は任意でもよい。その場合、デクリメントした結果が0になるまで、ステップS48からS51の処理を繰り返す。
3)OS起動:
ブレード1(112a)で起動されたOSローダ119は、OSを起動するために、データ格納場所参照テーブル122のデータ名称800の”OSデータ”に対応する格納LBA801の値”2”、LBAサイズ802の値”600”を取得する(S53)。次に、要求コマンドデータ108のコマンド名称200に”読み込み”、対象LU201にマスタOSデータ101のLU番号”0”、LBA202に取得した格納LBA801の値”2”、発行元システム名称204に”ブレード1”をそれぞれ格納して、ディスクアレイコントローラ103に送信する(S54)。
ブレード1(112a)で起動されたOSローダ119からの要求コマンドデータ108を受け取ったディスクアレイコントローラ103は、要求コマンドデータ処理105の読み込み要求処理106を実行する。なお、書き込み要求処理107のステップS32(後述の図10参照)において、ブレード1でははじめてOSが起動されるため、差分管理テーブル115の参照LBA600に、OSマスタデータ101の格納LBAである値”2”が存在しない。そのため、OSマスタデータ101からOSデータ120を読み込む(S55)。次に、応答コマンドデータ109のコマンド名称300に”読み込み完了”、データ301に読み込んだデータを格納して、ブレード1(112a)に送信する(S56)。
ブレード1(112a)は、応答コマンドデータ109からOSデータ120をメモリにロードする(S57)。次に、先に取得したLBAサイズ802の値”600”をデクリメントして、結果が0でないため、要求コマンドデータ108のLBA202の値をデクリメントして、ステップS54からS57の処理を繰り返す。デクリメントした結果が0になるとOSデータ120をすべて読み込んだと判断して、OSを起動する(S58)。
4)OS変更:
ブレード1でOSが起動されると、ブレードに固有のデバイス情報700、ドライバ情報701、OS情報702、アプリケーション情報703など、ブレード1に固有のOSデータ117(OSの変更データ)の書き込み要求が発生する。本実施例では、”書き込みデータ1”の書き込みについて説明する。
OSはデータ格納場所参照テーブル122のデータ名称800の”書き込みデータ1”に対応する格納LBA801の値”200”、LBAサイズ802の値”20”を取得する(S59)。次に、要求コマンドデータ108のコマンド名称に”書き込み”、対象LU201にOSマスタデータ101のLU番号”0”、LBA201に取得した格納LBA801の値”200”、発行元システム名称204に”ブレード1”をそれぞれ格納して、ディスクアレイコントローラ103に送信する(S60)。
ブレード1(112a)からの要求コマンドデータ108を受け取ったディスクアレイコントローラ103は、要求コマンドデータ処理105の書き込み要求処理107において、対象LU201の値”0”に対応するシステムマッピングテーブル番号”0”のシステム名称500が”ブレード1”である差分LU番号”1”を取得し、その差分データ102の差分管理テーブル115を参照する。今回ブレード1は初めてOSを起動するため、差分管理テーブル115にデータは存在しない。そのため、参照LBA600に”200”、差分データ601にデータ203を新しく追加する(S61)。次に、応答コマンドデータ109のコマンド名称300に”書き込み完了”を格納して、ブレード1(112a)に送信する(S62)。
ブレード1(112a)は、応答コマンドデータ109を受け取ると、先に取得したLBAサイズ802の値”20”をデクリメントして、結果が0でないため、要求コマンドデータ108のLBA202の値をデクリメントして、データ203の値をLBA202に対応するデータに書き換えて、ステップS60からS62の処理を繰り返す。デクリメントした結果が0になるとデータ(OSの変更データ)の書き込みがすべて終了したと判断する。
図12は、図1においてブレード1(112a)が2回目以降にOSを起動する場合の処理の流れを示す。ここで、ステップS85以外の処理は図11と同じであるため、説明を省略する。
ステップ85では、OSの起動時に、要求コマンドデータ処理105において、当該LBAに対応する差分データがあれば、OSデータとしてこの差分データを読み込み、差分データがなければ、OSデータとしてOSマスタデータを読み込む。即ち、ブレード1(112a)が2回目以降にOSを起動する場合、まず当該LBAに対応する差分データの有無が調べられ、差分データがあればこの差分データが優先的に読み込まれ、差分データがない場合のみOSマスタデータが読み込まれる。その結果、今回のOS起動以前にOSデータが変更されていれば、ブレード1のメモリには元のOSマスタデータと差分データ(今までに変更されたOSデータ)とが混在した状態が構成される。以下では、ステップ85の処理の詳細を述べる。
1)OSデータが変更され、当該LBAに対応する差分データが存在する場合:
本実施例では、差分管理テーブル115の参照LBA600に図11の処理S59−S62で書き込まれた”200”〜”219”の20個の値が存在する。そのため、ステップS84からS87の処理の繰り返しにおいて、LBA202の値が”200”〜”219”の場合は、差分管理テーブル115に値が存在するため、差分データ102の差分管理テーブル115の差分データ601から対応するデータを読み込む(S85)。
2)OSデータが変更されず、当該LBAに対応する差分データが存在しない場合:
要求コマンドデータ処理105において、ブレード1(112a)では2回目以降のOSの起動が行われているが、差分管理テーブル115の参照LBA600に要求コマンド108のLBAと一致する値”2”(OSマスタデータ101の格納LBAの値)は存在しないため、ブレード1からの要求コマンドデータ108を受け取ったディスクアレイコントローラ103は、OSマスタデータ101からOSデータ120を読み込む(S85)。次に、応答コマンドデータ109のコマンド名称300に”読み込み完了”、データ301に読み込んだデータを格納して、ブレード1(112a)に送信する(S86)。
次に、ディスクアレイコントローラ103の要求コマンドデータ処理105が行なう、ブレード1から受け取った要求コマンドの処理について詳細に説明する。ここではブレード1に対する処理を説明するが、他のブレードについても同様の処理が行なわれる。
ブレード1のOSを起動する場合、ブレード1に変更分を含む最新のOSデータを格納するために、ブレード1からのOSデータの読み込み要求に基づいて、図13のデータ格納場所参照テーブル122のLBAサイズ802に示された値の回数分だけ以下の処理を繰り返す。即ち、LBAの単位となる所定のデータ長のデータブロックごとに以下の処理(読み込み要求処理106)が繰り返される。
a)ブレード1からデータブロックの単位でOSデータの読み込み要求を受け付ける。
b)ブレード1に固有な、OSデータの差分データをブレード1に対応した差分管理テーブル115から検索する。
c)差分管理テーブル115に差分データがあれば、検索されたデータブロック分の差分データをブレード1のメモリに転送する。
d)差分管理テーブル115に差分データがなければ、各ブレードに共通なOSデータを格納したOSマスタデータ108からデータブロック分のOSデータ120を取り出してブレード1のメモリに転送する。
ブレード1の動作中にOSデータが変更された場合、ディスクアレイコントローラ103の要求コマンドデータ処理105における書き込み要求処理107は、ブレード1から変更されたOSデータの書き込み要求を受け取り、受け取った要求に含まれ、変更されたOSデータが格納されたデータブロックを、書き込み要求に含まれるデータブロックの番号(LBA)と共に、ブレード1に対応する差分管理テーブル115に格納する。この時、差分管理テーブル115において、書き込み要求が示すLBAに対応する差分データが既に格納されていれば、新たな書き込み要求によって差分データが更新され、まだ格納されていなければ、差分データが追加される。ブレード1においてOSデータが変更されると、その都度、上記の書き込み処理が実行される。
図8は、要求コマンドデータ処理105の処理の流れを詳細に示す。図8に示すステップS10からステップS17の処理は、1つのLBAごとに、LBAサイズ802の回数だけ繰り返し実行される。
ブレード1(112a)から要求コマンドデータ108を受け取る(S10)と、要求コマンドデータ108の対象LU201の値“0”を取得する。次に、共有LUマッピングテーブル110の共有LU番号400を参照して、先に取得した対象LUの値“0”と一致する共有LU番号400の値“0”に対応しているシステムマッピングテーブル番号401の値“0”を取得する(S11)。次に、要求コマンドデータ108の発行元システム名称204の“ブレード1”を取得して、システムマッピングテーブル0(111)のシステム名称500と一致する“ブレード1”に対応した差分LU番号501の値“1”を取得する(S12)。取得した値“1”をもとに、差分データLU(102)の差分管理テーブル115を参照する(S13)。次に、要求コマンドデータ108のコマンド名称200を取得して、“読み込み要求”であるか“書き込み要求”であるかを判断する(S14)。
判断した結果、コマンド名称200が“読み込み要求”であった場合は、読み込み要求処理106を呼び出す(S15)。このとき、引数として、要求コマンドデータ108を渡す。読み込み要求処理106の処理は図9に示す。
判断した結果、コマンド名称200が“書き込み要求”であった場合は、書き込み要求処理107を呼び出す(S16)。このとき、引数として、要求コマンドデータ108を渡す。書き込み要求処理107の処理は図10に示す。
読み込み要求処理106、または書き込み要求処理107が完了すると応答コマンドデータ109が戻り値として返される。この応答コマンドデータをブレード1に送信する(S17)。
図9は、図8のステップS15に示した読み込み要求処理106の処理を示す。
引数で渡された要求コマンドデータ108のLBA202の値“0”が、差分管理テーブル115の参照LBA600に存在するかを照会する(S21)。参照LBA600に値“0”が存在する場合は(S22)、指定されたOSマスタデータ101のLBAのデータは変更されていると判断して、差分データ601の値データ1を取得する(S23)。即ち、参照LBA600に値“0”が存在するということは、以前にOSマスタデータのLBA0番地になんらかの変更があったことを示しているので、これが要求コマンドデータ202の値“0”と一致する場合は、差分データを読み込み、参照LBA600に値“0”が存在しない場合は、OSマスタデータのLBA0番地からデータを読み込む。取得したデータ1を応答コマンドデータ109のデータ301に格納する(S25)。次に、応答コマンドデータ109のコマンド名称300に“読み込み完了”を格納する。作成した応答コマンドデータを、戻り値として要求コマンドデータ処理105に返す。
ステップS22において、LBA600に値“0”が存在しなかった場合は、指定されたOSマスタデータ101のLBAのデータは変更されていないと判断して、OSマスタデータ101の指定されたLBAのデータを取得する(S24)。取得したデータを応答コマンドデータ109のデータ301に格納する(S25)。次に、応答コマンドデータ109のコマンド名称300に“読み込み完了”を格納する。作成した応答コマンドデータ109を、戻り値として要求コマンドデータ処理105に返す。
図10は、図8のステップS16に示した書き込み要求処理107の処理を示す。
引数で渡された要求コマンドデータ108のLBA202の値“1”が、差分管理テーブル115の参照LBA600に存在するかを照会する(S31)。参照LBA600に値“1”が存在する場合は(S32)、差分管理テーブル115の値“1”に対応する差分データ601のデータ2を、要求コマンドデータ108のデータ203のデータ1で上書きする(S33)。即ち、上記の説明では、要求コマンドデータ108のLBA202が1である場合を説明しており、LBA202の値が“1”ということは、OSマスタデータのLBA1に対する要求です。上記の説明で述べたように、参照LBA600に値“1”が存在すれば、OSマスタデータではなく、差分データを使用するため、書き込み要求である場合は、差分データとして、参照LBA600の値“1”に対応するデータを上書きすることになります。次に、応答コマンドデータ109のコマンド名称300に“書き込み完了”を格納する(S35)。作成した応答コマンドデータ109を、戻り値として要求コマンドデータ処理手続き105に返す。
ステップS32において、LBA600に値“1”が存在しなかった場合は、差分管理テーブル115の参照LBA600と差分データ601に対して、要求コマンドデータ108のLBA202の値“1”、データ203のデータ1を追加する(S34)。次に、応答コマンドデータ109のコマンド名称300に“書き込み完了”を格納する(S35)。作成した応答コマンドデータ109を、戻り値として要求コマンドデータ処理105に返す。
以上に述べた本実施例の方法を実行するためのプログラムを、計算機で読み取り可能な記憶媒体に格納し、これをメモリに読み込んで実行することも可能である。
本発明の実施方法の全体構成を示した説明図である。(実施例1) 各ブレードからディスクシステムに送信されるコマンドデータの詳細である。 ディスクシステムから各ブレードに送信されるコマンドデータの詳細である。 共有LU番号、システムマッピングテーブル番号を格納しているテーブルである。 システム名称、差分LU番号を格納しているテーブルである。 参照LBA、差分データを格納しているテーブルである。 ブレード固有のOSデータを格納しているテーブルである。 要求コマンドデータ処理手続きの処理の流れを示すフローチャートである。 読み込み要求処理手続きの処理の流れを示すフローチャートである。 書き込み要求処理手続きの処理の流れを示すフローチャートである。 ブレード1がはじめて起動する場合の処理の流れを示すフローチャートである。 ブレード1が2回目以降起動する場合の処理の流れを示すフローチャートである。 データが格納されているOSマスタデータの位置を格納しているテーブルである。
符号の説明
100:ディスクシステム
101:OSマスタデータLU
102:差分データLU
103:ディスクアレイコントローラ
104:管理情報
105:要求コマンドデータ処理手続き
106:読み込み要求処理手続き
107:書き込み要求処理手続き
108:要求コマンドデータ
109:応答コマンドデータ
110:共有LUマッピングテーブル
111:システムマッピングテーブル
112:ブレード
113:ファイバーケーブル
114:ブレードシステム
115:差分管理テーブル
116:バス
117:ブレード固有のOSデータ
118:ブートローダ
119:OSローダ
120:OSデータ
121:BIOS
122:データ格納場所参照テーブル

Claims (10)

  1. 複数の計算機に接続されたディスクシステムは、
    前記複数の計算機が起動するための共通のOSデータを格納するOSマスタデータ論理ディスクと、
    前記複数の計算機のそれぞれに固有のOSデータの差分データを格納する、前記複数の計算機のそれぞれに対応した差分データ論理ディスクと、
    前記複数の計算機の一つが起動する場合に、前記計算機からの書き込み要求に応じて前記差分データ論理ディスクにデータを書き込み、前記計算機からの読み込み要求に応じて前記差分データ論理ディスク及び前記OSマスタデータ論理ディスクの順に検索してデータを読み出す要求コマンドデータ処理部とを有することを特徴とするディスクシステム。
  2. 請求項1記載のディスクシステムにおいて、前記要求コマンドデータ処理部は、前記計算機から前記OSマスタデータ論理ディスクに対する差分データの書き込み要求を受け付けたとき、前記OSマスタ論理ディスクに対応した前記差分データ論理ディスクに前記差分データを書き込み、前記計算機から前記OSマスタデータ論理ディスクの読み込み要求を受け付けたとき、前記差分データ論理ディスクにデータがあれば前記差分データ論理ディスクから、データがなければ前記OSマスタデータ論理ディスクからOSデータを読み込んで前記計算機に転送することを特徴とするディスクシステム。
  3. 請求項2記載のディスクシステムにおいて、前記データの読み込みを論理ブロックアドレス単位で所定のブロック数分繰り返し行うことを特徴とするディスクシステム。
  4. 請求項2記載のディスクシステムにおいて、前記データの書き込みを論理ブロックアドレス単位で行うことを特徴とするディスクシステム。
  5. 複数の計算機に接続されたディスクシステムによるOSの起動方法において、
    a)前記複数の計算機に含まれる当該計算機のOSの起動時に、前記当該計算機から所定のデータ長のデータブロックの単位でOSデータの読み込み要求を受け付け、
    b)前記当該計算機に固有な、OSデータの差分データを前記当該計算機に対応した差分管理テーブルから検索し、
    c)前記差分管理テーブルに前記差分データがあれば、検索された前記データブロック分の差分データを前記当該計算機のメモリに転送し、
    d)前記差分管理テーブルに前記差分データがなければ、前記複数の計算機に共通なOSデータを格納したOSマスタデータから前記データブロック分のOSデータを取り出して前記当該計算機のメモリに転送し、
    e)所定の個数のデータブロックの転送が終了するまで、次のデータブロックに対して前記ステップa)からd)を繰り返すことを特徴とするディスクシステムによるOSの起動方法。
  6. 請求項5記載の起動方法において、前記差分データは、前記当該計算機のOSの動作中にOSデータが変更された時に、前記データブロックの単位で、前記変更されたOSデータの書き込み要求を前記当該計算機から受け取り、前記書き込み要求に含まれる前記データブロックの番号と共に、前記当該計算機に対応する差分管理テーブルに格納することを特徴とするディスクシステムによるOSの起動方法。
  7. 請求項6記載の起動方法において、前記受け取った差分データに対応する前記データブロックのデータが既に前記差分管理テーブルに格納されていれば、前記受け取った差分データによって前記差分管理テーブルを書き換え、格納されていなければ前記差分管理テーブルに追加することを特徴とするディスクシステムによるOSの起動方法。
  8. 複数の計算機に接続されたディスクシステムによるOSの起動方法において、
    前記複数の計算機に含まれる当該計算機のOSの動作中にOSデータが変更された時に、所定のデータ長のデータブロックの単位で、前記変更されたOSデータ(が含まれるOSデータ)の書き込み要求を前記当該計算機から受け取り、
    前記受け取ったデータブロックを、前記書き込み要求に含まれる前記データブロックの番号と共に、前記当該計算機に対応する差分管理テーブルに格納することを特徴とするディスクシステムによるOSの起動方法。
  9. 請求項5記載の方法を実行するためのプログラムを格納した、計算機で読み取り可能な記憶媒体。
  10. 請求項8記載の方法を実行するためのプログラムを格納した、計算機で読み取り可能な記憶媒体。
JP2004357543A 2004-12-10 2004-12-10 ディスクシステム Expired - Fee Related JP4613598B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004357543A JP4613598B2 (ja) 2004-12-10 2004-12-10 ディスクシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004357543A JP4613598B2 (ja) 2004-12-10 2004-12-10 ディスクシステム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010157418A Division JP4993005B2 (ja) 2010-07-12 2010-07-12 ディスクシステム

Publications (2)

Publication Number Publication Date
JP2006164095A true JP2006164095A (ja) 2006-06-22
JP4613598B2 JP4613598B2 (ja) 2011-01-19

Family

ID=36666022

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004357543A Expired - Fee Related JP4613598B2 (ja) 2004-12-10 2004-12-10 ディスクシステム

Country Status (1)

Country Link
JP (1) JP4613598B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007145216A1 (ja) 2006-06-13 2007-12-21 Hitachi Maxell, Ltd. ペロブスカイト型酸化物微粒子、ペロブスカイト型酸化物担持粒子、触媒材料、酸素還元用触媒材料、燃料電池用触媒材料、燃料電池用電極
WO2007145215A1 (ja) 2006-06-13 2007-12-21 Hitachi Maxell, Ltd. 微粒子担持カーボン粒子およびその製造方法ならびに燃料電池用電極
JP2009054152A (ja) * 2007-08-24 2009-03-12 Symantec Corp 物理コンピュータ・システムの仮想表現へのオンデマンドのアクセス
JP2010044574A (ja) * 2008-08-12 2010-02-25 Sony Ericsson Mobilecommunications Japan Inc 携帯端末、携帯端末制御方法、及び携帯端末制御プログラム
JP2010237742A (ja) * 2009-03-30 2010-10-21 Nec Corp 仮想マシンサーバ、仮想マシン制御方法及び仮想マシン制御プログラム
JP2011526024A (ja) * 2008-06-26 2011-09-29 エルエスアイ コーポレーション ソリッドステートドライブ、及びリダイレクト・オン・ライトスナップショットを用いた効率的なルートブート方法
US8495348B2 (en) 2008-06-26 2013-07-23 Lsi Corporation Efficient root booting with solid state drives and redirect on write snapshots
JP2014501424A (ja) * 2010-12-28 2014-01-20 オラクル・インターナショナル・コーポレイション ブレードの物理的な位置に基づく自動化されたプロビジョニングおよび設定を可能にする統合型ソフトウェアおよびハードウェアシステム
WO2023242900A1 (ja) * 2022-06-13 2023-12-21 日本電信電話株式会社 振り分け装置、振り分けシステム、振り分け方法およびプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259583A (ja) * 1999-03-12 2000-09-22 Hitachi Ltd 計算機システム
JP2003050649A (ja) * 2001-08-08 2003-02-21 Toshiba It Solution Corp 集中管理システム、集中管理方法および集中管理を行う為のプログラム
JP2003288259A (ja) * 2002-03-28 2003-10-10 Hitachi Ltd 情報処理システム
WO2004061681A1 (ja) * 2002-12-26 2004-07-22 Fujitsu Limited 運用管理方法および運用管理サーバ

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259583A (ja) * 1999-03-12 2000-09-22 Hitachi Ltd 計算機システム
JP2003050649A (ja) * 2001-08-08 2003-02-21 Toshiba It Solution Corp 集中管理システム、集中管理方法および集中管理を行う為のプログラム
JP2003288259A (ja) * 2002-03-28 2003-10-10 Hitachi Ltd 情報処理システム
WO2004061681A1 (ja) * 2002-12-26 2004-07-22 Fujitsu Limited 運用管理方法および運用管理サーバ

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007145216A1 (ja) 2006-06-13 2007-12-21 Hitachi Maxell, Ltd. ペロブスカイト型酸化物微粒子、ペロブスカイト型酸化物担持粒子、触媒材料、酸素還元用触媒材料、燃料電池用触媒材料、燃料電池用電極
WO2007145215A1 (ja) 2006-06-13 2007-12-21 Hitachi Maxell, Ltd. 微粒子担持カーボン粒子およびその製造方法ならびに燃料電池用電極
JP2009054152A (ja) * 2007-08-24 2009-03-12 Symantec Corp 物理コンピュータ・システムの仮想表現へのオンデマンドのアクセス
JP2011526024A (ja) * 2008-06-26 2011-09-29 エルエスアイ コーポレーション ソリッドステートドライブ、及びリダイレクト・オン・ライトスナップショットを用いた効率的なルートブート方法
US8495348B2 (en) 2008-06-26 2013-07-23 Lsi Corporation Efficient root booting with solid state drives and redirect on write snapshots
JP2010044574A (ja) * 2008-08-12 2010-02-25 Sony Ericsson Mobilecommunications Japan Inc 携帯端末、携帯端末制御方法、及び携帯端末制御プログラム
US8826263B2 (en) 2008-08-12 2014-09-02 Sony Corporation Portable terminal, portable terminal control method, and portable terminal control program
JP2010237742A (ja) * 2009-03-30 2010-10-21 Nec Corp 仮想マシンサーバ、仮想マシン制御方法及び仮想マシン制御プログラム
JP2014501424A (ja) * 2010-12-28 2014-01-20 オラクル・インターナショナル・コーポレイション ブレードの物理的な位置に基づく自動化されたプロビジョニングおよび設定を可能にする統合型ソフトウェアおよびハードウェアシステム
US9424023B2 (en) 2010-12-28 2016-08-23 Oracle International Corporation Unified system lifecycle for components in an integrated software and hardware system
US9720682B2 (en) 2010-12-28 2017-08-01 Oracle International Corporation Integrated software and hardware system that enables automated provisioning and configuration of a blade based on its physical location
WO2023242900A1 (ja) * 2022-06-13 2023-12-21 日本電信電話株式会社 振り分け装置、振り分けシステム、振り分け方法およびプログラム

Also Published As

Publication number Publication date
JP4613598B2 (ja) 2011-01-19

Similar Documents

Publication Publication Date Title
US7069393B2 (en) Storage system providing file aware caching and file aware remote copy
EP3502877B1 (en) Data loading method and apparatus for virtual machines
JP4592814B2 (ja) 情報処理装置
US8745342B2 (en) Computer system for controlling backups using wide area network
EP2817725B1 (en) Maintaining system firmware images remotely using a distribute file system protocol
CN102799464A (zh) 虚拟机创建方法及系统、虚拟机重装方法及系统
US6968382B2 (en) Activating a volume group without a quorum of disks in the volume group being active
WO2016117022A1 (ja) ログの管理方法及び計算機システム
CN109407975B (zh) 写数据方法与计算节点以及分布式存储系统
JP4755244B2 (ja) 情報生成方法、情報生成プログラム及び情報生成装置
JP4613598B2 (ja) ディスクシステム
JP4759941B2 (ja) 起動イメージ提供システム及び方法、ブートノード装置、ブートサーバ装置並びにプログラム
US8185500B2 (en) Information processing apparatus, and operation method of storage system
WO2023087622A1 (zh) 虚拟机引导的配置方法、装置、计算机设备和存储介质
US7234039B1 (en) Method, system, and apparatus for determining the physical memory address of an allocated and locked memory buffer
JP4993005B2 (ja) ディスクシステム
US9971532B2 (en) GUID partition table based hidden data store system
US7949632B2 (en) Database-rearranging program, database-rearranging method, and database-rearranging apparatus
JP6757708B2 (ja) 情報処理装置及び構成要素の管理方法
JP2006079155A (ja) 情報処理装置
JP2008217202A (ja) ディスクアレイ装置及びファームウェア更新方法
JP2006085209A (ja) 計算機システムのデプロイメント方式
US11748110B2 (en) Server with setup menu for the bios settings
AU2016201734B2 (en) Alarm assembly and programming key
JPH05334162A (ja) データ処理システム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060425

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100128

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100712

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100721

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

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

R151 Written notification of patent or utility model registration

Ref document number: 4613598

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20131029

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees