JP4613598B2 - Disk system - Google Patents

Disk system Download PDF

Info

Publication number
JP4613598B2
JP4613598B2 JP2004357543A JP2004357543A JP4613598B2 JP 4613598 B2 JP4613598 B2 JP 4613598B2 JP 2004357543 A JP2004357543 A JP 2004357543A JP 2004357543 A JP2004357543 A JP 2004357543A JP 4613598 B2 JP4613598 B2 JP 4613598B2
Authority
JP
Japan
Prior art keywords
data
request
blade
logical
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.)
Expired - Fee Related
Application number
JP2004357543A
Other languages
Japanese (ja)
Other versions
JP2006164095A (en
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 JP2004357543A priority Critical patent/JP4613598B2/en
Publication of JP2006164095A publication Critical patent/JP2006164095A/en
Application granted granted Critical
Publication of JP4613598B2 publication Critical patent/JP4613598B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、ブレードシステムにおいて外部ディスクシステムからOSを起動する方法およびそのシステムに関するものである。   The present invention relates to a method for booting an OS from an external disk system in a blade system and the system.

特開2002−32153号公報に記載のように、ブレードシステムとはサーバユニット搭載用筐体に多数のサーバユニットを搭載できるとともに、効率よく冷却できる構造を有するサーバユニットである。従来はそのシステムにおいて、ディスクが搭載されていないディスクレスなサーバユニット(ブレード)が、Fibreなどで接続された外部ディスクシステムからOSを起動する場合、ブレードごとに外部ディスクシステムにOSデータを格納していた。   As described in Japanese Patent Laid-Open No. 2002-32153, a blade system is a server unit having a structure in which a large number of server units can be mounted in a server unit mounting housing and can be efficiently cooled. Conventionally, when a diskless server unit (blade) in which no disk is mounted in the system starts the OS from an external disk system connected by Fiber or the like, OS data is stored in the external disk system for each blade. It was.

特開2002−32153号公報JP 2002-32153 A

上記従来技術では、ブレードのOSデータは類似しているにもかかわらず、ブレードの台数分のOSデータが必要となり、ディスクシステムの記憶容量を大きく占有していた。また、セキュリティパッチなどを適応する際にも、全てのOSデータに対して行う必要があり、ユーザや管理者の手間が多かった。   In the above prior art, although the OS data of the blades are similar, the OS data for the number of blades is required, and the storage capacity of the disk system is largely occupied. Also, when applying a security patch or the like, it is necessary to apply to all the OS data, which requires a lot of trouble for users and administrators.

本発明の目的は、ディスク占有量と管理者の手間を軽減する外部ディスクシステムを提供することである。   An object of the present invention is to provide an external disk system that reduces the disk occupation amount and the trouble of an administrator.

上記目的を達成するために、複数の計算機(ブレード)が接続された本発明のディスクシステムは、以下に示す動作を行う。   In order to achieve the above object, the disk system of the present invention to which a plurality of computers (blades) are connected performs the following operation.

例えばブレード1のOSを起動する場合、ブレード1に変更分を含む最新のOSデータを格納するために、ブレード1からのOSデータの読み込み要求に基づいて、所定のデータ長のデータブロックごとに、所定の回数分だけ以下の処理a)からd)を繰り返す。   For example, when the OS of the blade 1 is started, in order to store the latest OS data including the changed portion in the blade 1, based on the OS data read request from the blade 1, for each data block having a predetermined data length, The following processes a) to d) are repeated a predetermined number of times.

a)ブレード1からデータブロックの単位でOSデータの読み込み要求を受け付ける。   a) An OS data read request is received from the blade 1 in units of data blocks.

b)ブレード1に固有な、OSデータの差分データをブレード1に対応した差分管理テーブルから検索する。   b) The OS data difference data unique to the blade 1 is searched from the difference management table corresponding to the blade 1.

c)差分管理テーブルに差分データがあれば、検索されたデータブロック分の差分データをブレード1のメモリに転送する。   c) If there is difference data in the difference management table, the difference data for the retrieved data block is transferred to the memory of the blade 1.

d)差分管理テーブルに差分データがなければ、各ブレードに共通なOSデータを格納したOSマスタデータからデータブロック分のOSデータを取り出してブレード1のメモリに転送する。   d) If there is no difference data in the difference management table, the OS data for the data block is extracted from the OS master data storing the OS data common to each blade and transferred to the memory of the blade 1.

ブレード1の動作中にOSデータが変更された場合、ディスクシステムは、ブレード1から変更されたOSデータの書き込み要求を受け取り、受け取った要求に含まれ、変更されたOSデータが格納されたデータブロックを、書き込み要求に含まれるデータブロックの番号(LBA)と共に、ブレード1に対応する差分管理テーブルに格納する。この時、差分管理テーブルにおいて、書き込み要求が示すLBAに対応する差分データが既に格納されていれば、新たな書き込み要求によって差分データが更新され、まだ格納されていなければ、差分データが追加される。ブレード1においてOSデータが変更されると、その都度、上記の書き込み処理が実行される。   When the OS data is changed during the operation of the blade 1, the disk system receives a write request for the changed OS data from the blade 1, and is included in the received request, and is a data block in which the changed OS data is stored. Are stored in the difference management table corresponding to the blade 1 together with the data block number (LBA) included in the write request. At this time, if difference data corresponding to the LBA indicated by the write request is already stored in the difference management table, the difference data is updated by a new write request, and if not yet stored, the difference data is added. . Each time the OS data is changed in the blade 1, the above-described writing process is executed.

本発明によれば、ディスクシステムのデータ格納において、類似しているOSデータが一つであり、差分データのディスク占有量は少ないため、外部ディスクシステムの記憶容量を節約できる。   According to the present invention, there is only one similar OS data in the data storage of the disk system, and the disk occupation amount of the difference data is small, so that the storage capacity of the external disk system can be saved.

以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明する。   The best mode for carrying out the present invention will be described below in detail with reference to the drawings.

図1は、本発明における一実施例であるディスクシステムの構成を示す。   FIG. 1 shows the configuration of a disk system according to an embodiment of the present invention.

本実施例では、ファイバーケーブル113で互いに接続されたブレードシステム114とディスクシステム100で実現されている。ブレードシステム114とディスクシステム100は、要求コマンドデータ108と応答コマンドデータ109の送受信によって通信する。   In this embodiment, this is realized by a blade system 114 and a disk system 100 connected to each other by a fiber cable 113. The blade system 114 and the disk system 100 communicate by transmitting / receiving request command data 108 and response command data 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などはディスクのロジカルユニット番号である。
The blade system 114 is equipped with a plurality of boards (blades) each having the function of one computer, and an operation corresponding to a predetermined application is performed by a combination of one or a plurality of blades among them. It is possible to change the combination of blades corresponding to the application according to the situation.
The blade system 114 includes blade 1 (112a) and blade 2 (112b), and the disk system 100 includes a master logical disk (hereinafter referred to as LU0) including OS master data which is OS (operating system) data common to the blades. (101)), a differential logical disk (hereinafter referred to as LU1 (102a), LU2 (102b)) including a difference management table 115 for managing OS data (change information for OS master data) unique to each blade, and management information 104 And the disk array controller 103 including the request command data processing 105. Here, LU0, LU1, LU2, etc. are logical unit numbers of the disks.

管理情報104と要求コマンドデータ処理105は、ディスクアレイコントローラ103内のメモリ130に格納されている。   The management information 104 and request command data processing 105 are stored in the memory 130 in the disk array controller 103.

差分管理テーブル115には、ブレード1に固有のOSデータ117が格納される。差分論理ディスクLU2(102b)も同様に、差分管理テーブルを有し、このテーブルにはブレード2に固有のOSデータが格納される。管理情報104には、共有LUマッピングテーブル110とシステムマッピングテーブル111が含まれ、要求コマンドデータ処理手続き105には、読み込み要求処理手続き106と書き込み要求処理手続き107が含まれる。   The difference management table 115 stores OS data 117 unique to the blade 1. Similarly, the differential logical disk LU2 (102b) also has a differential management table in which OS data unique to the blade 2 is stored. The management information 104 includes a shared LU mapping table 110 and a system mapping table 111, and the request command data processing procedure 105 includes a read request processing procedure 106 and a write request processing procedure 107.

図1において、OSマスタデータが1つであるため、セキュリティパッチを適応する際に、一つのOSデータに適応するだけで良く、管理者の手間が軽減できる。また、差分データが原因でおきた障害時のリカバリの際に、OSマスタデータと差分データが分離しているため、差分データとのリンクを切り離して、OSマスタデータから起動することにより、復旧時間を短縮できる。   In FIG. 1, since there is one OS master data, it is only necessary to adapt to one OS data when applying a security patch, and the labor of the administrator can be reduced. In addition, since the OS master data and the difference data are separated at the time of recovery in the event of a failure caused by the difference data, the recovery time can be reduced by separating the link with the difference data and starting from the OS master data. Can be shortened.

本実施例では、ブレード1とブレード2の2台と、差分データを含むLU1とLU2で実施例を示しているが、ブレードの台数や差分データを含むLUの数は任意でもよい。   In this embodiment, two blades 1 and 2 and LU1 and LU2 including difference data are shown, but the number of blades and the number of LUs including difference data may be arbitrary.

次に、図1で示した構成の各要素について詳細に説明する。   Next, each element of the configuration shown in FIG. 1 will be described in detail.

図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では、所定のデータ長の論理ブロックの単位でデータの入出力動作が行われる。   FIG. 2 shows request command data 108 transmitted from the blade 1 (112 a) included in the blade system 114 to the disk array controller 103 included in the disk system 100. The request command data 108 includes a command name 200, a target LU 201, a logical block address LBA (Logical Block Address) 202 of data to be requested, data 203, and an issuer system name 204. The command name 200 is designated as either writing or reading, and is referred to when determining whether the request is data reading or writing in the request command data processing 105 shown in FIG. The target LU 201 stores the logical unit (LU) number managed by the disk system 100 and is referred to when determining which LU the request is in the request command data processing 105. The logical block address (LBA) is stored in the LBA 202, and is referred to when determining which address on the disk the request is in the read request process 106 or the write request process 107. The data 203 stores binary data to be written at the time of the write request, and is referred to when writing data to the disk in the write request processing 107. The issuer system name 204 stores data that uniquely determines each blade included in the blade system 114, and is referred to when determining which blade the request is from in the request command processing 105. In the read request process 106 or the write request process 107, data input / output operations are performed in units of logical blocks having a predetermined data length.

図3は、ディスクシステム100に含まれるディスクアレイコントローラ103からブレードシステム114に含まれるブレード1(112a)に対して、要求コマンドデータに応答して返す、応答コマンドデータ109を示す。応答コマンドデータ108には、コマンド名称300、データ301が含まれる。コマンド名称300には、書き込み完了と読み込み完了のいずれかが指定され、読み込み要求処理106、または書き込み要求処理107において、処理が完了した際に格納される。データ301には、ブレードシステム114からの読み込み要求に対応する応答時に、読み込んだバイナリデータが格納され、ブレードシステム114がこのデータを受け取る。   FIG. 3 shows response command data 109 returned from the disk array controller 103 included in the disk system 100 to the blade 1 (112a) included in the blade system 114 in response to the request command data. The response command data 108 includes a command name 300 and data 301. The command name 300 designates either writing completion or reading completion, and is stored when processing is completed in the read request processing 106 or the write request processing 107. In the data 301, the read binary data is stored at the time of a response corresponding to the read request from the blade system 114, and the blade system 114 receives this data.

図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を作成する際に、システム管理者が作成する。   FIG. 4 shows a shared LU mapping table 110 that is included in the disk array controller 103 and associates the OS master data LU0 (101) with the system mapping table 111. The shared LU mapping table 110 includes a shared LU number 400 and a system mapping table number 401. The shared LU number 400 stores the LU number of the OS master data LU0 (101) used by multiple blades to start the OS. In the request command data processing 105, the shared LU that matches the target LU of the request command data 108 is stored. Refer to it when specifying the number. The system mapping table number 401 stores the number of the system mapping table 111 corresponding to the shared LU number, and is referred to when specifying the system mapping table 111 corresponding to the shared LU number 400 in the request command data processing 105. In the embodiment, an example in which “0” of the system mapping table number 401 corresponding to the LU number 0 of the OS master data LU0 (101) is shown, but the number of the shared LU number 400 and the system mapping table number 401 to be registered is shown. May be arbitrary, and a plurality of OS master data LU0 (101) can be used. This table is created by the system administrator when the OS master data 101 is created in the disk system 100.

図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を作成する際に、管理者が作成する。   FIG. 5 shows a system mapping table 111 that is included in the disk array controller 103 and associates the blade 1 and the blade 2 with the corresponding difference data LU 102. The system mapping table 111 includes a system name 500 and a differential LU number 501. Data for uniquely determining each blade included in the blade system 114 is stored in the system name 500, and in the request command data processing 105, a blade that matches the issuer system name 204 of the request command data 108 is specified. Refer to. The difference LU number 501 stores the number of the difference LU used by each blade, and is referred to when specifying the difference data LU (102) corresponding to each blade in the request command data processing 105. In this embodiment, an example is shown in which there are differential LU numbers (501) 1 and 2 corresponding to blade 1 (112a) and blade 2 (112b), respectively, but the number of system names 500 and differential LU numbers 501 is arbitrary. But you can. In the present embodiment, an example in which the system mapping table 0 exists is shown, but there are as many system mapping tables 111 as the number of system mapping table numbers in the shared LU mapping table 110 illustrated in FIG. This table is created by the administrator when creating the difference data 102 for the number of blades in the disk system 100.

図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の個数は、必要に応じて増減する。   FIG. 6 shows the difference management table 115 that stores the LBA indicating the storage location of data and the data when there is a write request to the OS master data LU0 (101), which is included in the difference LU data (102). Show. The difference management table 115 includes a reference LBA 600 and difference data 601. The reference LBA 600 stores the LBA requested to be written to the OS master data LU0 (101). In the read request process 106 or the write request process 107, the reference LBA 600 matching the LBA of the request command data 108 is specified. Referenced when doing. The difference data 601 stores binary data at the time of a write request to the OS master data LU0 (101). In the read request process 106 or the write request process 107, the difference data 601 corresponding to the reference LBA 600 is referred to when reading or writing. In this embodiment, “200”, “201”, and “202” exist as the reference LBA 600, and “data 1-1”, “data 1-2”, and “data 1-3” exist as the difference data 601. Although an example is shown, the numbers of the reference LBA 600 and the difference data 601 increase or decrease as necessary.

図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データとして他の情報も書き込婿とができる。   FIG. 7 shows OS data 117 specific to each blade stored in the difference data 601 of the difference management table 115. The OS data 117 unique to each blade includes device information 700, driver information 701, OS information 702, and application information 703. These data are OS data changed during the OS operation in each blade, and are stored in the difference management table 115 as difference data 601 with the OS master data LU0 (101) in units of LBA. This data alone has no meaning as stored data. In this embodiment, the device information 700, the driver information 701, the OS information 702, and the application information 703 exist. However, other information can be written as OS data unique to each blade.

図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データも含むことができる。   FIG. 13 shows a data storage location reference table 122 that is referred to when specifying the data storage location when the blade 1 transmits the request command data 108 to the disk array controller 103. Each blade 112 holds this table 122. The data storage location reference table 122 includes a data name 800, a storage LBA 801, and an LBA size 802. The data name 800 stores the target data name when a read or write request is generated by the blade 1 (112a), and an item that matches the requested data name when the request command data 108 is transmitted. Refer to when searching. The storage LBA 801 stores the LBA of the disk in which each data is stored, and is referred to when specifying the LBA storing the requested data when transmitting the request command data 108. The LBA size 802 stores the size of each data, and is referred to when determining the number of times to transmit the request command data 108 when transmitting the request command data 108. In this embodiment, an example in which “boot loader”, “OS loader”, “OS data”, “write data 1”, and “write data 2” exist as the data name 800 is shown. Other OS data can also be included depending on.

次に、全体の処理の流れについて詳細に説明する。   Next, the entire processing flow will be described in detail.

図11は、図1においてブレード1(112a)がはじめてOSを起動する場合の処理を示したものである。図1に示すブレード1の起動処理は、1)ブートローダ起動、2)OSローダ起動、3)OS起動、及び4)OS変更の4つの処理ブロックからなる。   FIG. 11 shows processing when the blade 1 (112a) starts up the OS for the first time in FIG. The startup process of the blade 1 shown in FIG. 1 includes four processing blocks: 1) boot loader startup, 2) OS loader startup, 3) OS startup, and 4) OS change.

ブレード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)。
When the blade 1 (112a) is powered on, the BIOS 121 is activated (S40).
1) Boot loader activation:
Next, in order to read the boot loader 118, the value “0” of the storage LBA 801 and the value “1” of the LBA size 802 corresponding to “boot loader” of the data name 800 in the data storage location reference table 122 are acquired (S41). Next, the command name 200 of the request command data 108 is “read”, the LU number “0” of the OS master data 101 is stored in the target LU 201, the value “0” of the stored LBA 801 acquired in the LBA 202, and “blade” is stored in the issuer system name 204. 1 ″ is stored and transmitted to the disk array controller 103 (S42).

要求コマンドデータ108を受け取ったディスクアレイコントローラ103は、要求コマンドデータ処理手続き105を実行して、OSマスタデータ101からブートローダ118を読み込む(S43)。次に、応答コマンドデータ109のコマンド名称300に”読み込み完了”を格納し、データ301に読み込んだデータ(ブートローダ118)を格納して、ブレード1(112a)に送信する(S44)。   The disk array controller 103 that has received the request command data 108 executes the request command data processing procedure 105 and reads the boot loader 118 from the OS master data 101 (S43). Next, “read complete” is stored in the command name 300 of the response command data 109, the read data (boot loader 118) is stored in the data 301, and transmitted to the blade 1 (112a) (S44).

ブレード1(112a)は、応答コマンドデータ109からブートローダ118を取り出してメモリにロードする(S45)。次に、先に取得したデータ格納場所参照テーブル122のLBAサイズ802の値”1”をデクリメントして、結果が0であるため、ブートローダ118をすべてブレード1のメモリに読み込んだと判断して、ブートローダを起動する(S46)。   The blade 1 (112a) extracts the boot loader 118 from the response command data 109 and loads it into the memory (S45). Next, the value “1” of the LBA size 802 of the data storage location reference table 122 acquired previously is decremented, and since the result is 0, it is determined that all the boot loaders 118 have been read into the memory of the blade 1, The boot loader is activated (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)。
In this embodiment, an example in which the LBA size 802 of the boot loader 118 is “1” is shown, but the value of the LBA 802 may be arbitrary. In that case, the processing of steps S42 to S45 is repeated until the decremented result becomes zero.
2) OS loader startup:
The boot loader 118 activated by the blade 1 (112a), in order to activate the OS loader 119, the value “1” of the storage LBA 801 corresponding to the “OS loader” of the data name 800 of the data storage location reference table 122, the LBA size The value “1” of 802 is acquired (S47). Next, the command name 200 of the request command data 108 is “read”, the LU number “0” of the OS master data 101 is stored in the target LU 201, the stored LBA 801 value “1” acquired in the LBA 202, and the “blade” is stored in the issuer system name 204. 1 ″ is stored and transmitted to the disk array controller 103 (S48).

ブレード1(112a)で起動されたブートローダ118からの要求コマンドデータ108を受け取ったディスクアレイコントローラ103は、要求コマンドデータ処理手続き105を実行して、OSマスタデータ101からOSローダ119を読み込む(S49)。次に、応答コマンドデータ109のコマンド名称300に”読み込み完了”、データ301に読み込んだデータ(OSローダ119)を格納して、ブレード1(112a)に送信する(S50)。   The disk array controller 103 that has received the request command data 108 from the boot loader 118 activated by the blade 1 (112a) executes the request command data processing procedure 105 and reads the OS loader 119 from the OS master data 101 (S49). . Next, “read complete” is stored in the command name 300 of the response command data 109, and the read data (OS loader 119) is stored in the data 301 and transmitted to the blade 1 (112a) (S50).

ブレード1(112a)は、応答コマンドデータ109からOSローダ119をメモリにロードする(S51)。次に、先に取得したデータ格納場所参照テーブル122のLBAサイズ802の値”1”をデクリメントして、結果が0であるため、OSローダ119をすべて読み込んだと判断して、OSローダ119を起動する(S52)。   The blade 1 (112a) loads the OS loader 119 from the response command data 109 into the memory (S51). Next, the value “1” of the LBA size 802 of the data storage location reference table 122 acquired previously is decremented, and since the result is 0, it is determined that all the OS loaders 119 have been read, and the OS loader 119 is Start (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)。
In this embodiment, an example in which the LBA size 802 of the OS loader 119 is “1” is shown, but the value of the LBA 802 may be arbitrary. In that case, the processing from step S48 to S51 is repeated until the decremented result becomes zero.
3) OS startup:
The OS loader 119 activated by the blade 1 (112a) has a value “2” of the storage LBA 801 corresponding to the “OS data” of the data name 800 of the data storage location reference table 122 and the LBA size 802 in order to activate the OS. Value "600" is acquired (S53). Next, the command name 200 of the request command data 108 is “read”, the LU number “0” of the master OS data 101 is stored in the target LU 201, the value “2” of the stored LBA 801 acquired in the LBA 202, and “blade” is stored in the issuer system name 204. 1 ″ is stored and transmitted to the disk array controller 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)。   The disk array controller 103 that has received the request command data 108 from the OS loader 119 activated by the blade 1 (112 a) executes the read request processing 106 of the request command data processing 105. In step S32 of the write request process 107 (see FIG. 10 described later), since the OS is activated for the first time in the blade 1, the value L2 stored in the OS master data 101 is stored in the reference LBA 600 of the difference management table 115 “2”. "Does not exist. Therefore, the OS data 120 is read from the OS master data 101 (S55). Next, “reading completed” is stored in the command name 300 of the response command data 109, and the read data is stored in the data 301 and transmitted to the blade 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”の書き込みについて説明する。
The blade 1 (112a) loads the OS data 120 from the response command data 109 into the memory (S57). Next, the previously acquired value “600” of the LBA size 802 is decremented, and since the result is not 0, the value of the LBA 202 of the request command data 108 is decremented, and the processing of steps S54 to S57 is repeated. If the decrement result is 0, it is determined that all the OS data 120 has been read, and the OS is activated (S58).
4) OS change:
When the OS is started on the blade 1, a request to write OS data 117 (OS change data) unique to the blade 1 such as device information 700, driver information 701, OS information 702, and application information 703 unique to the blade is generated. To do. In this embodiment, writing of “write data 1” will be described.

OSはデータ格納場所参照テーブル122のデータ名称800の”書き込みデータ1”に対応する格納LBA801の値”200”、LBAサイズ802の値”20”を取得する(S59)。次に、要求コマンドデータ108のコマンド名称に”書き込み”、対象LU201にOSマスタデータ101のLU番号”0”、LBA201に取得した格納LBA801の値”200”、発行元システム名称204に”ブレード1”をそれぞれ格納して、ディスクアレイコントローラ103に送信する(S60)。   The OS acquires the value “200” of the storage LBA 801 and the value “20” of the LBA size 802 corresponding to “write data 1” of the data name 800 in the data storage location reference table 122 (S59). Next, “write” is written in the command name of the request command data 108, the LU number “0” of the OS master data 101 is stored in the target LU 201, the value “200” of the stored LBA 801 acquired in the LBA 201, “blade 1” "Are stored and transmitted to the disk array controller 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)。   The disk array controller 103 that has received the request command data 108 from the blade 1 (112a) has the system mapping table number “0” corresponding to the value “0” of the target LU 201 in the write request process 107 of the request command data process 105. The system obtains the differential LU number “1” whose system name 500 is “Blade 1” and refers to the differential management table 115 of the differential data 102. Since the blade 1 starts up the OS for the first time this time, there is no data in the difference management table 115. Therefore, “200” is newly added to the reference LBA 600, and data 203 is newly added to the difference data 601 (S61). Next, “write complete” is stored in the command name 300 of the response command data 109 and transmitted to the blade 1 (112a) (S62).

ブレード1(112a)は、応答コマンドデータ109を受け取ると、先に取得したLBAサイズ802の値”20”をデクリメントして、結果が0でないため、要求コマンドデータ108のLBA202の値をデクリメントして、データ203の値をLBA202に対応するデータに書き換えて、ステップS60からS62の処理を繰り返す。デクリメントした結果が0になるとデータ(OSの変更データ)の書き込みがすべて終了したと判断する。   When the blade 1 (112a) receives the response command data 109, the value "20" of the LBA size 802 obtained earlier is decremented. Since the result is not 0, the value of the LBA 202 of the request command data 108 is decremented. Then, the value of the data 203 is rewritten to data corresponding to the LBA 202, and the processing of steps S60 to S62 is repeated. When the decremented result is 0, it is determined that all writing of data (OS change data) has been completed.

図12は、図1においてブレード1(112a)が2回目以降にOSを起動する場合の処理の流れを示す。ここで、ステップS85以外の処理は図11と同じであるため、説明を省略する。   FIG. 12 shows a process flow when the blade 1 (112a) starts the OS after the second time in FIG. Here, the processing other than step S85 is the same as in FIG.

ステップ85では、OSの起動時に、要求コマンドデータ処理105において、当該LBAに対応する差分データがあれば、OSデータとしてこの差分データを読み込み、差分データがなければ、OSデータとしてOSマスタデータを読み込む。即ち、ブレード1(112a)が2回目以降にOSを起動する場合、まず当該LBAに対応する差分データの有無が調べられ、差分データがあればこの差分データが優先的に読み込まれ、差分データがない場合のみOSマスタデータが読み込まれる。その結果、今回のOS起動以前にOSデータが変更されていれば、ブレード1のメモリには元のOSマスタデータと差分データ(今までに変更されたOSデータ)とが混在した状態が構成される。以下では、ステップ85の処理の詳細を述べる。   In step 85, at the time of starting the OS, in the request command data processing 105, if there is difference data corresponding to the LBA, this difference data is read as OS data, and if there is no difference data, OS master data is read as OS data. . That is, when the blade 1 (112a) starts up the OS for the second time or later, first, the presence or absence of difference data corresponding to the LBA is checked. If there is difference data, the difference data is preferentially read and the difference data is stored. Only when there is no OS master data is read. As a result, if the OS data has been changed before the current OS startup, a state in which the original OS master data and the difference data (the OS data changed so far) are mixed in the memory of the blade 1 is configured. The Hereinafter, details of the processing in step 85 will be described.

1)OSデータが変更され、当該LBAに対応する差分データが存在する場合:
本実施例では、差分管理テーブル115の参照LBA600に図11の処理S59−S62で書き込まれた”200”〜”219”の20個の値が存在する。そのため、ステップS84からS87の処理の繰り返しにおいて、LBA202の値が”200”〜”219”の場合は、差分管理テーブル115に値が存在するため、差分データ102の差分管理テーブル115の差分データ601から対応するデータを読み込む(S85)。
1) When OS data is changed and differential data corresponding to the LBA exists:
In this embodiment, there are 20 values “200” to “219” written in steps S59 to S62 in FIG. 11 in the reference LBA 600 of the difference management table 115. Therefore, when the value of the LBA 202 is “200” to “219” in the repetition of the processing from step S84 to S87, since the value exists in the difference management table 115, the difference data 601 in the difference management table 115 of the difference data 102 is stored. The corresponding data is read from (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)。
2) When OS data is not changed and there is no difference data corresponding to the LBA:
In the request command data processing 105, the blade 1 (112 a) has started the OS for the second and subsequent times, but the reference LBA 600 in the difference management table 115 has a value “2” (OS master) that matches the LBA of the request command 108. Since the storage LBA value of the data 101 does not exist, the disk array controller 103 that has received the request command data 108 from the blade 1 reads the OS data 120 from the OS master data 101 (S85). Next, “reading completed” is stored in the command name 300 of the response command data 109, and the read data is stored in the data 301 and transmitted to the blade 1 (112a) (S86).

次に、ディスクアレイコントローラ103の要求コマンドデータ処理105が行なう、ブレード1から受け取った要求コマンドの処理について詳細に説明する。ここではブレード1に対する処理を説明するが、他のブレードについても同様の処理が行なわれる。   Next, processing of the request command received from the blade 1 performed by the request command data processing 105 of the disk array controller 103 will be described in detail. Although the process for the blade 1 will be described here, the same process is performed for the other blades.

ブレード1のOSを起動する場合、ブレード1に変更分を含む最新のOSデータを格納するために、ブレード1からのOSデータの読み込み要求に基づいて、図13のデータ格納場所参照テーブル122のLBAサイズ802に示された値の回数分だけ以下の処理を繰り返す。即ち、LBAの単位となる所定のデータ長のデータブロックごとに以下の処理(読み込み要求処理106)が繰り返される。   When the OS of the blade 1 is started, the LBA of the data storage location reference table 122 in FIG. 13 is stored based on the OS data read request from the blade 1 in order to store the latest OS data including the change in the blade 1. The following processing is repeated for the number of times indicated by the size 802. That is, the following process (read request process 106) is repeated for each data block having a predetermined data length as a unit of LBA.

a)ブレード1からデータブロックの単位でOSデータの読み込み要求を受け付ける。   a) An OS data read request is received from the blade 1 in units of data blocks.

b)ブレード1に固有な、OSデータの差分データをブレード1に対応した差分管理テーブル115から検索する。   b) The OS data difference data unique to the blade 1 is retrieved from the difference management table 115 corresponding to the blade 1.

c)差分管理テーブル115に差分データがあれば、検索されたデータブロック分の差分データをブレード1のメモリに転送する。   c) If there is difference data in the difference management table 115, the difference data for the retrieved data block is transferred to the memory of the blade 1.

d)差分管理テーブル115に差分データがなければ、各ブレードに共通なOSデータを格納したOSマスタデータ108からデータブロック分のOSデータ120を取り出してブレード1のメモリに転送する。   d) If there is no difference data in the difference management table 115, the OS data 120 for the data block is extracted from the OS master data 108 storing the OS data common to each blade and transferred to the memory of the blade 1.

ブレード1の動作中にOSデータが変更された場合、ディスクアレイコントローラ103の要求コマンドデータ処理105における書き込み要求処理107は、ブレード1から変更されたOSデータの書き込み要求を受け取り、受け取った要求に含まれ、変更されたOSデータが格納されたデータブロックを、書き込み要求に含まれるデータブロックの番号(LBA)と共に、ブレード1に対応する差分管理テーブル115に格納する。この時、差分管理テーブル115において、書き込み要求が示すLBAに対応する差分データが既に格納されていれば、新たな書き込み要求によって差分データが更新され、まだ格納されていなければ、差分データが追加される。ブレード1においてOSデータが変更されると、その都度、上記の書き込み処理が実行される。   When the OS data is changed during the operation of the blade 1, the write request processing 107 in the request command data processing 105 of the disk array controller 103 receives the changed OS data write request from the blade 1, and is included in the received request. Then, the data block storing the changed OS data is stored in the difference management table 115 corresponding to the blade 1 together with the data block number (LBA) included in the write request. At this time, if difference data corresponding to the LBA indicated by the write request is already stored in the difference management table 115, the difference data is updated by a new write request, and if not yet stored, the difference data is added. The Each time the OS data is changed in the blade 1, the above-described writing process is executed.

図8は、要求コマンドデータ処理105の処理の流れを詳細に示す。図8に示すステップS10からステップS17の処理は、1つのLBAごとに、LBAサイズ802の回数だけ繰り返し実行される。   FIG. 8 shows the processing flow of the request command data processing 105 in detail. The processing from step S10 to step S17 shown in FIG. 8 is repeatedly executed for each LBA by the number of times of the LBA size 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)。   When the request command data 108 is received from the blade 1 (112a) (S10), the value “0” of the target LU 201 of the request command data 108 is acquired. Next, referring to the shared LU number 400 of the shared LU mapping table 110, the system mapping table number corresponding to the value “0” of the shared LU number 400 that matches the previously acquired value “0” of the target LU. The value “0” of 401 is acquired (S11). Next, “blade 1” of the issuer system name 204 of the request command data 108 is acquired, and the value of the differential LU number 501 corresponding to “blade 1” that matches the system name 500 of the system mapping table 0 (111). “1” is acquired (S12). Based on the acquired value “1”, the difference management table 115 of the difference data LU (102) is referred to (S13). Next, the command name 200 of the request command data 108 is acquired, and it is determined whether it is a “read request” or a “write request” (S14).

判断した結果、コマンド名称200が“読み込み要求”であった場合は、読み込み要求処理106を呼び出す(S15)。このとき、引数として、要求コマンドデータ108を渡す。読み込み要求処理106の処理は図9に示す。   If the command name 200 is “read request” as a result of the determination, the read request processing 106 is called (S15). At this time, the request command data 108 is passed as an argument. The processing of the read request processing 106 is shown in FIG.

判断した結果、コマンド名称200が“書き込み要求”であった場合は、書き込み要求処理107を呼び出す(S16)。このとき、引数として、要求コマンドデータ108を渡す。書き込み要求処理107の処理は図10に示す。   As a result of the determination, if the command name 200 is “write request”, the write request processing 107 is called (S16). At this time, the request command data 108 is passed as an argument. The process of the write request process 107 is shown in FIG.

読み込み要求処理106、または書き込み要求処理107が完了すると応答コマンドデータ109が戻り値として返される。この応答コマンドデータをブレード1に送信する(S17)。   When the read request process 106 or the write request process 107 is completed, response command data 109 is returned as a return value. This response command data is transmitted to the blade 1 (S17).

図9は、図8のステップS15に示した読み込み要求処理106の処理を示す。   FIG. 9 shows the processing of the read request processing 106 shown in step S15 of FIG.

引数で渡された要求コマンドデータ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に返す。   It is inquired whether the value “0” of the LBA 202 of the request command data 108 passed as an argument exists in the reference LBA 600 of the difference management table 115 (S21). When the value “0” exists in the reference LBA 600 (S22), it is determined that the LBA data of the designated OS master data 101 has been changed, and the value data 1 of the difference data 601 is acquired (S23). . That is, the presence of the value “0” in the reference LBA 600 indicates that there has been some change in the LBA 0 address of the OS master data before, and this matches the value “0” of the request command data 202. In this case, the difference data is read. When the value “0” does not exist in the reference LBA 600, the data is read from the LBA address 0 of the OS master data. The acquired data 1 is stored in the data 301 of the response command data 109 (S25). Next, “read complete” is stored in the command name 300 of the response command data 109. The created response command data is returned to the request command data processing 105 as a return value.

ステップS22において、LBA600に値“0”が存在しなかった場合は、指定されたOSマスタデータ101のLBAのデータは変更されていないと判断して、OSマスタデータ101の指定されたLBAのデータを取得する(S24)。取得したデータを応答コマンドデータ109のデータ301に格納する(S25)。次に、応答コマンドデータ109のコマンド名称300に“読み込み完了”を格納する。作成した応答コマンドデータ109を、戻り値として要求コマンドデータ処理105に返す。   If the value “0” does not exist in the LBA 600 in step S22, it is determined that the LBA data of the designated OS master data 101 has not been changed, and the designated LBA data of the OS master data 101 is determined. Is acquired (S24). The acquired data is stored in the data 301 of the response command data 109 (S25). Next, “read complete” is stored in the command name 300 of the response command data 109. The created response command data 109 is returned to the request command data processing 105 as a return value.

図10は、図8のステップS16に示した書き込み要求処理107の処理を示す。   FIG. 10 shows the processing of the write request processing 107 shown in step S16 of FIG.

引数で渡された要求コマンドデータ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に返す。   An inquiry is made as to whether the value “1” of the LBA 202 of the request command data 108 passed as an argument exists in the reference LBA 600 of the difference management table 115 (S31). When the value “1” exists in the reference LBA 600 (S32), the data 2 of the difference data 601 corresponding to the value “1” of the difference management table 115 is overwritten with the data 1 of the data 203 of the request command data 108 ( S33). That is, in the above description, the case where the LBA 202 of the request command data 108 is 1 is described. When the value of the LBA 202 is “1”, this is a request for the OS master data LBA1. As described in the above description, when the value “1” exists in the reference LBA 600, the difference data is used instead of the OS master data. Therefore, in the case of a write request, the value “reference LBA 600” is used as the difference data. The data corresponding to 1 ”will be overwritten. Next, “write complete” is stored in the command name 300 of the response command data 109 (S35). The created response command data 109 is returned to the request command data processing procedure 105 as a return value.

ステップS32において、LBA600に値“1”が存在しなかった場合は、差分管理テーブル115の参照LBA600と差分データ601に対して、要求コマンドデータ108のLBA202の値“1”、データ203のデータ1を追加する(S34)。次に、応答コマンドデータ109のコマンド名称300に“書き込み完了”を格納する(S35)。作成した応答コマンドデータ109を、戻り値として要求コマンドデータ処理105に返す。   In step S32, if the value “1” does not exist in the LBA 600, the value “1” of the LBA 202 of the request command data 108 and the data 1 of the data 203 are compared with the reference LBA 600 and the difference data 601 of the difference management table 115. Is added (S34). Next, “write complete” is stored in the command name 300 of the response command data 109 (S35). The created response command data 109 is returned to the request command data processing 105 as a return value.

以上に述べた本実施例の方法を実行するためのプログラムを、計算機で読み取り可能な記憶媒体に格納し、これをメモリに読み込んで実行することも可能である。   It is also possible to store a program for executing the method of the present embodiment described above in a computer-readable storage medium and read it into a memory for execution.

本発明の実施方法の全体構成を示した説明図である。(実施例1)It is explanatory drawing which showed the whole structure of the implementation method of this invention. Example 1 各ブレードからディスクシステムに送信されるコマンドデータの詳細である。It is the details of command data transmitted from each blade to the disk system. ディスクシステムから各ブレードに送信されるコマンドデータの詳細である。It is the detail of the command data transmitted to each blade from a disk system. 共有LU番号、システムマッピングテーブル番号を格納しているテーブルである。It is a table that stores shared LU numbers and system mapping table numbers. システム名称、差分LU番号を格納しているテーブルである。It is a table storing system names and differential LU numbers. 参照LBA、差分データを格納しているテーブルである。It is a table storing reference LBA and difference data. ブレード固有のOSデータを格納しているテーブルである。It is a table storing blade-specific OS data. 要求コマンドデータ処理手続きの処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of a request command data processing procedure. 読み込み要求処理手続きの処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of a read request processing procedure. 書き込み要求処理手続きの処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of a write request processing procedure. ブレード1がはじめて起動する場合の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process in case the blade 1 starts for the first time. ブレード1が2回目以降起動する場合の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process in case the braid | blade 1 starts from the 2nd time. データが格納されているOSマスタデータの位置を格納しているテーブルである。It is a table storing the location of OS master data in which data is stored.

符号の説明Explanation of symbols

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:データ格納場所参照テーブル
100: Disk system 101: OS master data LU
102: Difference data LU
103: Disk array controller 104: Management information 105: Request command data processing procedure 106: Read request processing procedure 107: Write request processing procedure 108: Request command data 109: Response command data 110: Shared LU mapping table 111: System mapping table 112 : Blade 113: Fiber cable 114: Blade system 115: Difference management table 116: Bus 117: Blade specific OS data 118: Boot loader 119: OS loader 120: OS data 121: BIOS
122: Data storage location reference table

Claims (1)

複数の計算機の各々が、複数のOSのうちの1つを起動するために接続されたディスクシステムであって、
前記ディスクシステムは、
前記複数のOSのうち、前記複数の計算機の各々が共通に使用する一つのOSを起動するために共通で使用するOSデータを格納する複数のOSマスタデータ論理ディスクと、
前記複数のOSのうち、前記複数の計算機の各々が共通に使用する一つのOSに対応した前記OSマスタデータ論理ディスクの各々に対して書き込んだ差分データを格納する、前記複数の計算機の各々に対応した複数の差分データ論理ディスクと、
前記複数のOSマスタデータ論理ディスクと前記複数の差分データ論理ディスクとに接続し、前記複数の計算機の各々からのアクセス要求を処理する要求コマンドデータ処理部とを有し、
前記要求コマンドデータ処理部は、
前記複数のOSマスタデータ論理ディスクの各々を特定するロジカルユニット番号を格納した共通LUマッピングテーブルと、前記ロジカルユニット番号毎に前記差分データ論理ディスクとの対応関係を格納する複数のシステムマッピングテーブルとを記憶し、前記共通LUマッピングテーブルは、各々の前記ロジカルユニット番号に対応する前記システムマッピングテーブルを特定するためのシステムマッピングテーブル番号を前記ロジカルユニット番号に対応付けて格納し、前記システムマッピングテーブルは、前記複数の計算機の各々を特定するシステム名称と前記差分データ論理ディスクを特定する差分ロジカルユニット番号との対応関係を格納し、
前記計算機から発行された前記アクセス要求が前記共通LUマッピングテーブルに格納された前記ロジカルユニット番号に対する要求であるかどうか判定し、
前記アクセス要求が前記共通LUマッピングテーブルに格納された前記ロジカルユニット番号に対する要求であった場合に、前記複数のOSマスタデータ論理ディスクのうち前記ロジカルユニット番号に対応するOSマスタデータ論理ディスクを特定し、当該ロジカルユニット番号に対応する前記システムマッピングテーブルを前記共通LUマッピングテーブルに対応づけて格納されたシステムマッピングテーブル番号から特定し、特定された前記システムマッピングテーブルに格納された前記システム名称から、受領した前記アクセス要求を発行した計算機に対応する前記差分データ論理ディスクを特定し、
受領した前記アクセス要求が書き込み要求であった場合、前記書き込み要求に付随した書き込みデータを前記差分データとして前記差分データ論理ディスクに書き込み、前記書き込み要求に付随した書き込み位置を差分情報として前記差分データ論理ディスクに書き込み、
受領した前記アクセス要求が読み込み要求であった場合、特定した前記差分データ論理ディスクに記憶する前記差分情報から前記読み込み要求に対応する前記差分データの有無を判断し、前記差分データがあれば前記差分データ論理ディスクから前記読み込み要求と対応する前記差分データを読み出して前記計算機へ応答し、前記差分データがなければ前記読み込み要求と対応する前記OSデータを前記特定したOSマスタデータ論理ディスクから読み出して前記計算機へ応答する、
ことを特徴とするディスクシステム。
Each of a plurality of computers is a disk system connected to start one of a plurality of OSs;
The disk system is
A plurality of OS master data logical disks for storing OS data commonly used to start one OS commonly used by each of the plurality of computers among the plurality of OSs;
Each of the plurality of computers storing differential data written to each of the OS master data logical disks corresponding to one OS commonly used by each of the plurality of computers among the plurality of OSs. Multiple supported differential data logical disks,
Wherein the plurality of OS master data logical disk connected plurality of the differential data logical disk, before SL and a request command data processing unit for processing the access request from each of a plurality of computers,
The request command data processing unit
A common LU mapping table storing a logical unit number for specifying each of the plurality of OS master data logical disks, and a plurality of system mapping tables storing a correspondence relationship with the differential data logical disk for each logical unit number. Storing the system mapping table number for identifying the system mapping table corresponding to each of the logical unit numbers in association with the logical unit number, and storing the system mapping table Storing a correspondence relationship between a system name that identifies each of the plurality of computers and a differential logical unit number that identifies the differential data logical disk;
Determining if the issued said access request from the computer is a request for said common the logical unit number LU stored in the mapping table,
When the access request is a request for the logical unit number stored in the common LU mapping table, an OS master data logical disk corresponding to the logical unit number is specified from the plurality of OS master data logical disks. The system mapping table corresponding to the logical unit number is identified from the system mapping table number stored in association with the common LU mapping table, and received from the system name stored in the identified system mapping table. Identify the differential data logical disk corresponding to the computer that issued the access request,
When the received access request is a write request, the write data associated with the write request is written as the differential data to the differential data logical disk, and the write position associated with the write request is used as the differential information as the differential data logical Burn to disc,
When the received access request is a read request, the presence / absence of the difference data corresponding to the read request is determined from the difference information stored in the specified difference data logical disk. The differential data corresponding to the read request is read from the data logical disk and responded to the computer. If the differential data is not present, the OS data corresponding to the read request is read from the specified OS master data logical disk. Respond to the computer,
A disk system characterized by that.
JP2004357543A 2004-12-10 2004-12-10 Disk system Expired - Fee Related JP4613598B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004357543A JP4613598B2 (en) 2004-12-10 2004-12-10 Disk system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004357543A JP4613598B2 (en) 2004-12-10 2004-12-10 Disk system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010157418A Division JP4993005B2 (en) 2010-07-12 2010-07-12 Disk system

Publications (2)

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

Family

ID=36666022

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004357543A Expired - Fee Related JP4613598B2 (en) 2004-12-10 2004-12-10 Disk system

Country Status (1)

Country Link
JP (1) JP4613598B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2037519A4 (en) 2006-06-13 2012-12-26 Toyota Motor Co Ltd Fine particle of perovskite oxide, particle having deposited perovskite oxide, catalyst material, catalyst material for oxygen reduction, catalyst material for fuel cell, and electrode for fuel cell
JP4875410B2 (en) 2006-06-13 2012-02-15 トヨタ自動車株式会社 Fine particle-supporting carbon particles, method for producing the same, and fuel cell electrode
US8166476B2 (en) * 2007-08-24 2012-04-24 Symantec Corporation On-demand access to a virtual representation of a physical computer system
EP2291771A4 (en) * 2008-06-26 2012-07-18 Lsi Corp Efficient root booting with solid state drives and redirect on write snapshots
US8495348B2 (en) 2008-06-26 2013-07-23 Lsi Corporation Efficient root booting with solid state drives and redirect on write snapshots
JP2010044574A (en) 2008-08-12 2010-02-25 Sony Ericsson Mobilecommunications Japan Inc Portable terminal, portable terminal control method and portable terminal control program
JP5428455B2 (en) * 2009-03-30 2014-02-26 日本電気株式会社 Virtual machine server, virtual machine control method, and virtual machine control program
US8607225B2 (en) * 2010-12-28 2013-12-10 Oracle International Corporation Managed upgrades of components in an integrated software and hardware system
WO2023242900A1 (en) * 2022-06-13 2023-12-21 日本電信電話株式会社 Sorting device, sorting system, sorting method, and program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259583A (en) * 1999-03-12 2000-09-22 Hitachi Ltd Computer system
JP2003050649A (en) * 2001-08-08 2003-02-21 Toshiba It Solution Corp Centralized control system, its method and program for performing centralized control
JP2003288259A (en) * 2002-03-28 2003-10-10 Hitachi Ltd Information processing system
WO2004061681A1 (en) * 2002-12-26 2004-07-22 Fujitsu Limited Operation managing method and operation managing server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259583A (en) * 1999-03-12 2000-09-22 Hitachi Ltd Computer system
JP2003050649A (en) * 2001-08-08 2003-02-21 Toshiba It Solution Corp Centralized control system, its method and program for performing centralized control
JP2003288259A (en) * 2002-03-28 2003-10-10 Hitachi Ltd Information processing system
WO2004061681A1 (en) * 2002-12-26 2004-07-22 Fujitsu Limited Operation managing method and operation managing server

Also Published As

Publication number Publication date
JP2006164095A (en) 2006-06-22

Similar Documents

Publication Publication Date Title
JP4592814B2 (en) Information processing device
JP5772127B2 (en) Virtual machine management method, information processing apparatus, and virtual machine management program
US7334157B1 (en) Restore of data to a computer system having different hardware
EP2477111B1 (en) Computer system and program restoring method thereof
JP2018028715A (en) Storage control device, storage system, and storage control program
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 (en) Virtual machine creation method, virtual machine creation system, virtual machine resetting method and virtual machine resetting system
US6968382B2 (en) Activating a volume group without a quorum of disks in the volume group being active
WO2018173164A1 (en) Data processing system
WO2016117022A1 (en) Log management method and computer system
JP4613598B2 (en) Disk system
CN109407975B (en) Data writing method, computing node and distributed storage system
EP3654167B1 (en) Operating system installation
JP4755244B2 (en) Information generation method, information generation program, and information generation apparatus
US20200210088A1 (en) Installation of operating system
JP4759941B2 (en) Boot image providing system and method, boot node device, boot server device, and program
CN114756290A (en) Operating system installation method, device and readable storage medium
WO2023087622A1 (en) Virtual machine boot configuration method and apparatus, computer device, and storage medium
JP4993005B2 (en) Disk system
JP4390618B2 (en) Database reorganization program, database reorganization method, and database reorganization apparatus
JP6497157B2 (en) Information management apparatus, information management method, information management program, data structure, and software asset management system
JP2006079155A (en) Information processor
JP5725546B2 (en) Storage system
AU2016201734B2 (en) Alarm assembly and programming key

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