JP2009042932A - Update method for control program for storage controller - Google Patents
Update method for control program for storage controller Download PDFInfo
- Publication number
- JP2009042932A JP2009042932A JP2007205865A JP2007205865A JP2009042932A JP 2009042932 A JP2009042932 A JP 2009042932A JP 2007205865 A JP2007205865 A JP 2007205865A JP 2007205865 A JP2007205865 A JP 2007205865A JP 2009042932 A JP2009042932 A JP 2009042932A
- Authority
- JP
- Japan
- Prior art keywords
- storage
- restart
- control device
- host computer
- storage control
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、単一又は複数の記憶装置が接続され、それら記憶装置を使用してホスト計算機に対し論理記憶装置を提供する記憶制御装置に関し、特に、この記憶制御装置が冗長化されている場合に、ホスト計算機から論理記憶装置へのアクセスを停止することなく、オンラインで記憶制御装置の制御プログラムを更新する方法に関する。 The present invention relates to a storage control device in which a single or a plurality of storage devices are connected, and uses these storage devices to provide a logical storage device to a host computer. In particular, the storage control device is made redundant. The present invention also relates to a method for updating a control program of a storage control device online without stopping access from a host computer to a logical storage device.
従来、ホスト計算機と、単一又は複数の記憶装置とに接続され、前記単一又は複数の記憶装置の一部又は全ての領域を使用し、前記ホスト計算機に対し論理記憶装置を提供する記憶制御装置において、記憶制御装置を冗長化し、ホスト計算機から論理記憶装置へのアクセス経路を冗長化する技術が存在する。特に、最近の高機能なディスクアレイ装置について、この技術に基づく記憶制御装置の二重化はもはや標準的な機能となっている。このように記憶制御装置を冗長化することで、記憶制御装置の故障や計画停止などの際に、ホスト計算機はその記憶制御装置以外の記憶制御装置を経由して論理記憶装置へアクセスを継続できるようになり、計算機システムの可用性を大幅に高めることができる。 Conventionally, storage control connected to a host computer and a single or a plurality of storage devices, and using a part or all of the area of the single or a plurality of storage devices to provide a logical storage device to the host computer There is a technology for making a storage controller redundant in a device and making an access path from a host computer to a logical storage device redundant. In particular, for recent high-performance disk array devices, duplication of storage control devices based on this technology is no longer a standard function. By making the storage control device redundant in this way, the host computer can continue to access the logical storage device via a storage control device other than the storage control device in the event of a failure or planned stoppage of the storage control device. As a result, the availability of the computer system can be greatly increased.
ところで、最近のディスクアレイ装置に代表される記憶制御装置は、非常に高機能になってきた一方で、記憶制御装置の機能を実現する制御プログラムはコード量も多くかつ複雑なものとなってきている。その結果として、計算機システムが運用を開始した以降も、不適合の修正や機能の改善などにより記憶制御装置の制御プログラムの更新が度々必要となっている。 By the way, storage control devices represented by recent disk array devices have become very sophisticated, while control programs for realizing the functions of the storage control device have a large code amount and become complicated. Yes. As a result, even after the computer system starts operation, it is often necessary to update the control program of the storage controller due to correction of nonconformity or improvement of functions.
記憶制御装置の制御プログラムを更新するためには、一般的には新しい制御プログラムを記憶制御装置へアップロード(書き込み)した後、その記憶制御装置を一度再起動する必要がある。これを再起動処理という。記憶制御装置の再起動処理を行うと、その間の十数秒〜数十秒の間はこの記憶制御装置はホスト計算機からのアクセスに応答することができなくなり、この記憶制御装置を経由した論理記憶装置へのアクセスができなくなる。 In order to update the control program of the storage control device, generally, after uploading (writing) a new control program to the storage control device, it is necessary to restart the storage control device once. This is called restart processing. When the storage control device is restarted, the storage control device cannot respond to access from the host computer during the tens of seconds to several tens of seconds, and the logical storage device via the storage control device. Can no longer access.
そこで記憶制御装置の制御プログラムの更新を行う際に、作業者は事前にパス切り替えソフトウェアを操作し、論理記憶装置へのアクセスを他の記憶制御装置を経由した経路に全て切り替えてから作業を行っている。このようにすることで、ホスト計算機から論理記憶装置へのアクセスを継続したまま、オンラインで制御プログラムの更新が可能となる。
しかしながら、このような従来の制御プログラムの更新方法では、以下のような問題がある。 However, such a conventional method for updating a control program has the following problems.
すなわち、接続されたホスト計算機の台数や論理記憶装置の台数が増えてくると、これら全てのホスト計算機及び論理記憶装置についてアクセス経路を切り替える作業が大変になってくる。そのため、作業ミスの発生や作業時間が長くなるなどの問題が顕在化してくる。 That is, as the number of connected host computers and the number of logical storage devices increase, the work of switching access paths for all these host computers and logical storage devices becomes difficult. For this reason, problems such as occurrence of work mistakes and longer work time become obvious.
更には、システムのセキュリティなどの関係から、パス切り替えソフトウェアのようなホスト計算機上のソフトウェアの操作は限られた担当者のみしか許可されていない場合もあり、そのような場合はその担当者のスケジュールの確保なども大きな負担になるという問題もある。 Furthermore, due to system security and other reasons, only limited personnel may be permitted to operate software on the host computer such as path switching software. There is also a problem that securing the system is a heavy burden.
これらの結果として、実際には記憶制御装置が冗長化されているにもかかわらず、例えば、上記特許文献1のように、オンラインではなく、計算機システムを停止して制御プログラムを入れ替えることにより更新を行っているようなケースも多く存在している。
As a result of these, despite the fact that the storage control device is actually made redundant, for example, as described in
本発明はこのような事情に鑑みてなされたものであり、記憶制御装置の制御プログラムをオンラインで、より簡単かつ安全に更新することが可能な方法を提供することを目的とする。 The present invention has been made in view of such circumstances, and an object thereof is to provide a method capable of updating a control program of a storage control device online more easily and safely.
上記の目的を達成するために、本発明では、以下のような手段を講じる。 In order to achieve the above object, the present invention takes the following measures.
すなわち、請求項1の発明は、ホスト計算機と、単一又は複数の記憶装置とに接続され、単一又は複数の記憶装置の一部又は全ての領域を使用し、ホスト計算機に対し論理記憶装置を提供する記憶制御装置の制御プログラムを更新する方法であって、記憶制御装置が、論理記憶装置に対して複数接続されることにより冗長化されている。この方法では、ホスト計算機は、冗長化された記憶制御装置のうちのどれを経由して論理記憶装置へアクセスするかを選択し、選択した記憶制御装置にアクセスして、この記憶制御装置の状態を監視する。そして、冗長化された各記憶制御装置は、自己の制御プログラムが書き替えられ、制御プログラムの更新のために必要な自己の再起動処理の要求が入力されると、この要求の入力時から予め定めた時間の経過時に自己の再起動処理を開始し、書き替えられた制御プログラムを使用した動作を実行できるようにするとともに、入力時から再起動処理が行われるまでの間にホスト計算機によってアクセスされた場合には、状態の監視の結果として、自己が再起動処理待ちであることを示す再起動ステータスを応答する。更に、ホスト計算機は、状態を監視している記憶制御装置から再起動ステータスが応答されると、冗長化された各記憶制御装置のうち、再起動ステータスを応答した記憶制御装置以外の記憶制御装置を経由して論理記憶装置へアクセスするように選択を切り替える。
That is, the invention of
請求項2の発明は、請求項1の発明の制御プログラムの更新方法において、選択を切り替えることができない場合、ホスト計算機は、再起動ステータスを応答した記憶制御装置に対して、要求された再起動処理をしないように要求する無効要求コマンドを発行し、無効要求コマンドを発行された記憶制御装置は、要求された再起動処理を行わない。 According to the second aspect of the present invention, in the method for updating a control program according to the first aspect, when the selection cannot be switched, the host computer requests the storage controller that has responded the restart status to the requested restart. The storage control device that has issued an invalid request command requesting not to perform the process and has issued the invalid request command does not perform the requested restart process.
請求項3の発明は、請求項1又は請求項2の発明の制御プログラムの更新方法において、予め定めた時間は、状態の監視がなされる監視周期よりも長い第1の時間と、ホスト計算機から記憶装置に対するアクセス頻度に対して十分長い時間である第2の時間とを合わせてなり、記憶制御装置は、再起動処理の要求の入力時から第1の時間が経過した後であって、更に第2の時間が経過するまでの間にホスト計算機によってアクセスされた場合には、要求された再起動処理を行わない。 According to a third aspect of the present invention, in the control program update method according to the first or second aspect of the present invention, the predetermined time is a first time longer than a monitoring cycle in which the state is monitored, and the host computer. In addition to the second time, which is a sufficiently long time with respect to the access frequency to the storage device, the storage control device is further after the first time has elapsed since the input of the request for the restart process. If it is accessed by the host computer before the second time elapses, the requested restart process is not performed.
請求項4の発明は、請求項1乃至3のうち何れか1項の発明の制御プログラムの更新方法において、ホスト計算機は、再起動ステータスを応答した記憶制御装置にその後アクセスした際に、この記憶制御装置から再起動ステータスの応答がなかった場合には、この記憶制御装置を経由して論理記憶装置へアクセスするように選択を切り替える。 According to a fourth aspect of the present invention, in the control program update method according to any one of the first to third aspects of the present invention, when the host computer subsequently accesses the storage controller that has responded to the restart status, the storage program is updated. If there is no restart status response from the control device, the selection is switched to access the logical storage device via this storage control device.
本発明によれば、記憶制御装置の制御プログラムをオンラインで、より簡単かつ安全に更新することが可能な方法を実現することができる。 According to the present invention, it is possible to realize a method capable of updating a storage control device control program online more easily and safely.
以下に、本発明を実施するための最良の形態について図面を参照しながら説明する。 The best mode for carrying out the present invention will be described below with reference to the drawings.
図1は、本発明の実施の形態に係る記憶制御装置の制御プログラムの更新方法を適用した計算機システムの構成例を示す機能ブロック図である。 FIG. 1 is a functional block diagram showing a configuration example of a computer system to which a method for updating a control program of a storage control device according to an embodiment of the present invention is applied.
すなわち、この計算機システム100は、複数のホスト計算機101(#0〜#n)と、例えばハードディスクである単一又は複数の記憶装置107(#0〜#m)と、ネットワークスイッチ103を介してホスト計算機101(#0〜#n)と、インタフェース108を介して記憶装置107(#0〜#m)とにそれぞれ接続され、記憶装置107(#0〜#m)の一部又は全ての領域を使用し、ホスト計算機101(#0〜#n)に対し論理記憶装置を提供する複数の記憶制御装置105(#0,#1)とを備えている。このように、記憶制御装置105は、論理記憶装置に対して複数接続されることにより冗長化されている。そして、これら複数の記憶制御装置105(#0,#1)と、複数の記憶装置107(#0〜#m)とで外部記憶装置109を構成している。ネットワークスイッチ103及び記憶制御装置105は、一例として2個のみ図示しているが、もちろん、2個に限定されるものではない。
That is, the
ホスト計算機101は、本発明の実施の形態に係る記憶制御装置の制御プログラムの更新方法を実現するパス切り替えソフトウェア及びパス監視ソフトウェアがインストールされている。このようなホスト計算機101の詳細構成については、図3を用いて後述するが、図1では、I/Oポート102のみが示されている。
The
I/Oポート102は、ホスト計算機101を外部記憶装置109に接続するためのインタフェースであり、SAN(Storage area network)構成を実現するために、Fibre channelやiSCSIなどのネットワーク型のインタフェースが一般的である。また、重要な計算機システムでは、システムの可用性を向上させるために、ホスト計算機101に複数のI/Oポート102を装備し(図1では、各ホスト計算機101が2つのI/Oポート102を装備した例を示している)、外部記憶装置109へのアクセス経路を冗長化することも行われている。このようなI/Oポート102は、一般的には、HBA(ホストバスアダプタ)と呼ばれるPCI−Xや、PCI−Expressのカードで実装されることが多い。
The I /
ネットワークスイッチ103は、SAN構成のためのものであり、Fibre channelやiSCSIなどのインタフェースを持つホスト計算機191や外部記憶装置109を相互接続するためのスイッチである。故障によるシステム停止を避けるため、ネットワークスイッチ103を、図1の例に示すように冗長構成とする場合も多い。
The
ネットワークスイッチ103はそれぞれ、ホスト計算機101に接続されたI/Oポート104と、記憶制御装置105に接続されたI/Oポート104’とを備えており、それらの数や種類は、接続するホスト計算機101や外部記憶装置109の台数や、インタフェースによる。
Each of the
記憶制御装置105は、外部記憶装置109の各種機能を実現するものであり、本実施の形態では冗長化されている。図1に示す例では、二重化により冗長化されている。このような記憶制御装置105の詳細構成については、図2を用いて後述するが、図1では、I/Oポート106のみが示されている。
The
I/Oポート106は、例えばFibre channelやiSCSIに準拠し、本実施の形態のように、冗長構成での使用を想定した装置であれば、最低2ポート装備される。
The I /
例えばHDDや光磁気ディスク等である複数の記憶装置107(#0〜#m)は、記憶制御装置105によって組み合わされることにより、仮想的な記憶装置即ち論理記憶装置を構成する。ホスト計算機101からは、この論理記憶装置が一つの記憶装置として認識される。
For example, a plurality of storage devices 107 (# 0 to #m) such as HDDs and magneto-optical disks are combined by the
インタフェース108は、記憶装置107を接続するためのものであり、記憶装置107がHDDである場合、Fibre channelや、SAS、SATA、SCSI等が一般的である。
The
外部記憶装置109は、一般に、記憶制御装置105と記憶装置107とから構成される。実際の製品としては、記憶装置107として複数のHDDを備え、RAIDの手法によりHDD故障に対する可用性を高めたディスクアレイ装置が一般的である。
The
記憶制御装置105の構成例を、図2の機能ブロック図に示す。
An example of the configuration of the
インタフェース制御回路201は、ホスト計算機101を接続するためのインタフェースであるI/Oポート106(図2には図示せず)を制御する回路であり、マイクロプロセッサ203にて動作している制御プログラムの指示で動作する。
The
インタフェース制御回路202は、HDD等の記憶装置107を接続するためのインタフェース(図示せず)を制御する回路であり、マイクロプロセッサ203にて動作している制御プログラムの指示で動作する。
The
マイクロプロセッサ203は、RAM205上の制御プログラムにより動作し、記憶制御装置105の機能を実現するための各種処理を行う。
The
ブリッジ回路204は、PCI−XやPCI−Express等の内部バス213と、マイクロプロセッサ203及びその周辺回路とを接続する。
The
RAM205は、処理上必要となるワークメモリや通信のためのバッファメモリなどとして使用されるほか、制御プログラムのメインのコードが、フラッシュメモリ207からコピーされる。このRAM205上のコードにしたがってマイクロプロセッサ203が動作する。
The
キャッシュメモリ206は、ホスト計算機101と記憶装置107との間でのデータ転送の際に、バッファ用途で使用されるのみならず、アクセス性能を向上させるためのリードキャッシュやライトキャッシュとしても使用可能な大容量のメモリである。
The
フラッシュメモリ207は、記憶制御装置105の制御プログラムを格納する。フラッシュメモリ207内の制御プログラムは書き替えが可能である。記憶制御装置105は、起動されると、フラッシュメモリ207内の制御プログラムをRAM205にコピーし、RAM205のイメージを使用してマイクロプロセッサ203が動作する。よって、記憶制御装置105が動作している状態でフラッシュメモリ207内の制御プログラムを書き替えても、記憶制御装置105はRAM205上の制御プログラムで動作しているため影響がない。
The
通信ポート208は、作業用の端末を接続するためのものである。フラッシュメモリ207内の制御プログラムの書き替え(アップロード)や、記憶制御装置105へ再起動処理要求の入力を行う場合には、この作業用の端末から行う。
The
この通信ポート208を介して、フラッシュメモリ207内の制御プログラムが書き替えられ、制御プログラムの更新のために必要な再起動処理要求が入力されると、記憶制御装置105は、図4のタイミングチャートに示すように、再起動処理要求の入力時t0から時間T1と時間T2とを加えた時t2に自己の再起動処理を行い、書き替えられた制御プログラムを使用した動作を開始できるようにする。このように、制御プログラムが書き替えられると、再起動処理要求の入力時t0から時間T1と時間T2とを加えた時t2に自己の再起動処理を行う処理を再起動処理シーケンスと称する。
When the control program in the
また、再起動処理シーケンス中(再起動処理要求の入力時t0から再起動処理が行われる時t2までの間)にホスト計算機101によってアクセスされた場合には、状態の監視の結果として、図中(a)に示すように、自己が再起動処理実行待ちであることを示す再起動ステータスをホスト計算機101に応答する。
Further, when it is accessed by the
なお、時間T1は、ホスト計算機101に備えられている後述するパス監視ソフトウェア303bによる記憶制御装置105の状態監視周期(例えば、1分)よりも長い第1の時間(例えば、状態監視周期の2〜3倍程度の時間)である。また、時間T2は、ホスト計算機101から記憶装置107に対するリード及びライト頻度に対して十分長い時間であり、一般的に数秒から1分程度であり、時間T1よりも短い。
The time T 1, the state monitoring cycle of path monitoring software 303b by the
そして、記憶制御装置105は、図4の(c)に示すように、再起動処理要求の入力時t0から時間T1が経過した時t1以降であって、更に時間T2が経過する時t2までの間にホスト計算機101によってアクセスされた場合には、再起動処理シーケンスを中止し、再起動処理も行わない。
Then, the
通信ポート209は、記憶制御装置105間(例えば、記憶制御装置105(#0)と記憶制御装置105(#1)との間)で通信するためのポートである。この通信ポート209は、二重化した記憶制御装置105間で、情報のやり取りや処理の同期を取るために使用する。
The
次に、ホスト計算機101の構成例を、図3の機能ブロック図に示す。
Next, a configuration example of the
すなわち、ホスト計算機101は、ソフトウェアであるアプリケーション301、ファイルシステム302、パス切り替えソフトウェア及びパス監視ソフトウェア303、ディスクドライバ304、及びカードドライバ305(一例として、カードドライバ305(#−0)とカードドライバ305(#−1)との2つを示す)がインストールされているとともに、カードドライバ305に対応して備えられたハードウェア306を備えている。
That is, the
アプリケーション301は、アプリケーションソフトウェアやミドルウェアなどである。アプリケーション301から論理記憶装置へアクセスする場合、ファイルシステム302を介してアクセスする方法と直接アクセスする方法がある。
The
ファイルシステム302は、ホスト計算機101にインストールされた各種ソフトウェア(301,303〜305)が扱うファイルの管理や、それに関連した論理記憶装置の管理を行う。
The
パス切り替えソフトウェア及びパス監視ソフトウェア303は、論理記憶装置への冗長化されたアクセス経路の管理を行うためのソフトウェアであるパス切り替えソフトウェア303aとパス監視ソフトウェア303bとからなる。
The path switching software and
パス切り替えソフトウェア303aは、上位のファイルシステム302やアプリケーション301から論理記憶装置へアクセスする際に、そのアクセス要求を受け取ると、アクセス対象の論理記憶装置に対し複数存在するアクセス経路のうちのどれを経由して論理記憶装置にアクセスするのかを選択し、選択した経路を用いて、対応する記憶制御装置105(以下、例えば、記憶制御装置105(#0)とする)を介して論理記憶装置へのアクセスを実行する。また、その経路でアクセス実行できなかった場合は、他の経路に切り替えてアクセスを実行する。これら経路の切り替えをパス切り替えソフトウェア303aが自動的に行うことにより、上位のファイルシステム302やアプリケーション301からは記憶制御装置105の故障などの影響を受けることなく論理記憶装置へのアクセスが継続される。
When the path switching software 303a receives the access request when accessing the logical storage device from the
また、パス監視ソフトウェア303bは、パス切り替えソフトウェア303aによって選択されたアクセス経路に存在する記憶制御装置105(#0)にアクセスし、この記憶制御装置105(#0)の状態を監視するソフトウェアである。記憶制御装置105(#0)について、主にアクセスしている経路だけでなく、代替用に準備した経路についても正常に動作していることを、例えば1分のような所定の監視周期で確認する。これにより経路を切り替えようとした際に代替用の経路が故障している多重故障を抑止する。また経路の監視は、そのアクセス経路に存在する記憶制御装置105(#0)に対しコマンドを発行し、その応答を確認することにより行う。 The path monitoring software 303b is software that accesses the storage control device 105 (# 0) existing in the access path selected by the path switching software 303a and monitors the state of the storage control device 105 (# 0). . For the storage controller 105 (# 0), it is confirmed in a predetermined monitoring cycle such as 1 minute that not only the route that is mainly accessed but also the route that is prepared for replacement is operating normally. To do. This suppresses multiple failures in which the alternative route fails when switching routes. The path is monitored by issuing a command to the storage control device 105 (# 0) existing in the access path and confirming the response.
このコマンドの発行に対して、記憶制御装置105(#0)から、パス監視ソフトウェア303bに再起動ステータスが応答されると、パス切り替えソフトウェア303aは、冗長化された各記憶制御装置105(#0,#1)のうち、再起動ステータスを応答した記憶制御装置105(#0)以外の記憶制御装置105(#1)を経由して論理記憶装置へアクセスするように選択を切り替える。 In response to the issuance of this command, when the restart status is returned from the storage control device 105 (# 0) to the path monitoring software 303b, the path switching software 303a causes each redundant storage control device 105 (# 0). , # 1), the selection is switched so as to access the logical storage device via the storage control device 105 (# 1) other than the storage control device 105 (# 0) that responded with the restart status.
なお、この選択切り替えができない場合、パス監視ソフトウェア303bは、再起動ステータスを応答した記憶制御装置105(#0)に対して、再起動処理シーケンスを中止する(すなわち、再起動処理も行わない)ように要求するリジェクトコマンドを発行する。この場合、図4の(b)に示すように、リジェクトコマンドを発行された記憶制御装置105(#0)は、再起動処理シーケンスを中止する。 If this selection switching cannot be performed, the path monitoring software 303b stops the restart processing sequence (that is, does not perform the restart processing) for the storage control device 105 (# 0) that responded with the restart status. Issue a reject command requesting In this case, as shown in FIG. 4B, the storage control device 105 (# 0) to which the reject command has been issued stops the restart processing sequence.
また、ホスト計算機101が、再起動ステータスを応答した記憶制御装置105(#0)にその後アクセスしたところ、この記憶制御装置105(#0)からパス監視ソフトウェア303bに対して再起動ステータスの応答がなかった場合には、パス切り替えソフトウェア303aは、この記憶制御装置105(#0)を経由して論理記憶装置へアクセスするように選択を切り替える。
Further, when the
ディスクドライバ304は、記憶装置107に対する例えばSCSIコマンドに代表されるコマンド処理を行うソフトウェアである。
The
カードドライバ305は、ハードウェア306を制御するソフトウェアであり、ハードウェア306は、ホスト計算機101をネットワークスイッチ103に接続するI/Oポート102を装備しており、PCI−XやPCI−Express等のHBAで実装されることが多い。
The
インタフェース307は、ホスト計算機101をネットワークスイッチ103に接続するものであり、Fibre channelや、iSCSI等が一般的である。
The
次に、以上のように構成した本発明の実施の形態に係る記憶制御装置105(#0)の制御プログラムの更新方法の詳細を図4のタイミングチャートを用いて説明する。 Next, details of the control program update method of the storage control device 105 (# 0) according to the embodiment of the present invention configured as described above will be described with reference to the timing chart of FIG.
まず、図示しない作業用端末を、記憶制御装置105(#0)の通信ポート208に接続し、この作業用端末を用いて、フラッシュメモリ207内の制御プログラムを、新しい制御プログラムに書き替える。図4では、このタイミングを、時間tkで示す。
First, a work terminal (not shown) is connected to the
次に、この作業用端末などから、記憶制御装置105(#0)に対して、制御プログラムの更新のために必要な処理である再起動処理要求の入力を行う。この再起動処理要求が入力された記憶制御装置105(#0)では、この時点t0から再起動処理シーケンスが開始される。再起動処理シーケンスは、最終的に時間t2において再起動処理が実行されるか、または時間t2に至る前に再起動処理シーケンスが中止されるタイミングまで継続する。 Next, a restart process request, which is a process necessary for updating the control program, is input from the work terminal or the like to the storage control device 105 (# 0). In the restart process request is input storage controller 105 (# 0), restart process sequence is started from the time point t 0. Restart process sequence continues until the timing of a restart process is executed, or restart processing sequence before reaching the time t 2 is stopped at the final time t 2.
そして、このような再起動処理シーケンス中の記憶制御装置105(#0)は、再起動処理シーケンスが開始された時点t0から時間(T1+T2)が経過した時点t2まで待ってから記憶制御装置105(#0)を再起動処理を開始し、再起動処理が完了すると、書き替えられた新しい制御プログラムでの動作を開始できるようになる。 Then, the storage control device 105 (# 0) in such a restart process sequence waits until the time point t 2 when the time (T 1 + T 2 ) elapses from the time point t 0 when the restart process sequence starts. When the storage control device 105 (# 0) starts the restart process and the restart process is completed, the operation with the rewritten new control program can be started.
なお、記憶制御装置105(#0)は、図4中に示す(a)のように、再起動処理シーケンス中に、ホスト計算機101のパス監視ソフトウェア303bからコマンドを受信した場合、そのコマンドに対して再起動ステータスを応答する。このように、再起動ステータスが応答された場合、ホスト計算機101のパス監視ソフトウェア303bは、論理記憶装置へのアクセスを再起動ステータスが応答された記憶制御装置105(#0)ではない記憶制御装置105(#1)を経由して行うよう、パス切り替えソフトウェア303aを操作する。
If the storage control device 105 (# 0) receives a command from the path monitoring software 303b of the
また、記憶制御装置105(#0)を再起動することにより再起動処理シーケンスは完了するため、以降パス監視ソフトウェア303bからのアクセスに対しては、再起動ステータスを応答することはなくなり、通常の応答がされる。この通常の応答を検出したパス監視ソフトウェア303bは、その記憶制御装置105(#0)にて再起動ステータスを検出して他の記憶制御装置105(#1)を経由するよう切り替えていたアクセス経路を、以前の元のアクセス経路に戻す処理を行う。 In addition, since the restart processing sequence is completed by restarting the storage control device 105 (# 0), the restart status is no longer responded to accesses from the path monitoring software 303b. A response is made. The path monitoring software 303b that detected this normal response detected the restart status in the storage control device 105 (# 0) and switched the access route to pass through the other storage control device 105 (# 1). Is returned to the previous original access route.
前述したように、時間T1は、ホスト計算機101に備えられている後述するパス監視ソフトウェア303bによる記憶制御装置105の状態監視周期(例えば、1分)よりも長い(例えば、状態監視周期の2〜3倍程度の時間である)。また、時間T2は、ホスト計算機101から記憶装置107に対するリード及びライト頻度に対して十分長く、一般的に数秒から1分程度である。したがって、記憶制御装置105に接続された複数のホスト計算機101の全てが再起動ステータスを受信することができ、アクセス経路を切り替えることが可能となる。
As described above, the time T 1 is longer than the state monitoring cycle (for example, 1 minute) of the
また、ホスト計算機101は、パス監視ソフトウェア303bが、記憶制御装置105(#0)から再起動ステータスを受信した際に、論理記憶装置へのアクセスについて、再起動ステータスを受信した記憶制御装置105(#0)以外の全ての記憶制御装置105(例えば、記憶制御装置105(#1))を経由してもアクセスが行えない場合、例えば、他の記憶制御装置105(#1)が故障している場合や、ホスト計算機101側のI/Oポート102等が故障しており他の記憶制御装置105(#1)側の経路が使えない場合等に、パス監視ソフトウェア303bは、再起動ステータスを応答した記憶制御装置105(#0)に対し、図4中の(b)に示すように、リジェクトコマンドを発行する。
Further, when the path monitoring software 303b receives the restart status from the storage control device 105 (# 0), the
そして、このリジェクトコマンドを受信した記憶制御装置105(#0)は、自装置105(#0)を経由した論理記憶装置へのアクセスを回避することができないため、再起動処理シーケンスを中止する。 Then, the storage control device 105 (# 0) that has received this reject command cannot avoid access to the logical storage device via its own device 105 (# 0), and therefore stops the restart processing sequence.
また、パス監視ソフトウェア303bが動作していないホスト計算機101が混在して接続されている場合の動作について以下に説明する。
The operation when the
この場合、アクセス経路が切り替えられないまま記憶制御装置105(#0)を再起動すると、その間、そのホスト計算機101からは論理記憶装置へのアクセスが不可能な状態となり、その結果、システム停止の障害となる可能性がある。このような場合に対処するためのガード機構として、本実施の形態に係る制御プログラムの更新方法では、図4中の(c)に示すように、再起動処理シーケンスが開始されてから時間T1経過してから、更に時間T2経過するまでの期間(すなわち、t1からt2までの期間)内に、何れかのホスト計算機101から論理記憶装置に対し、この再起動シーケンス中の記憶制御装置105(#0)を経由してアクセスが発生した場合、動作していないホスト計算機101が存在するものとパス監視ソフトウェア303bが判断し、再起動処理シーケンスを中止する。
In this case, if the storage control device 105 (# 0) is restarted without switching the access path, the
記憶制御装置105(#0)は、再起動処理シーケンスの期間中、図4(b)に示すようなリジェクトコマンドの受信もなく、図4(c)に示すようなアクセスもない場合に、図4(a)に示すように、最終ステップとして再起動処理を実行する。そして、再起動された記憶制御装置105(#0)は、新しい制御プログラムをフラッシュメモリ207(#0)より読み出し、その制御プログラムでの動作を開始できるようになる。同様の手順にて、他の記憶制御装置(例えば、記憶制御装置105(#1))についても制御プログラムの更新を行うことができる。 The storage control device 105 (# 0) does not receive the reject command as shown in FIG. 4B during the restart processing sequence and does not receive the access as shown in FIG. As shown in FIG. 4A, a restart process is executed as the final step. Then, the restarted storage control device 105 (# 0) can read a new control program from the flash memory 207 (# 0), and can start operation with the control program. The control program can be updated for other storage control devices (for example, the storage control device 105 (# 1)) in the same procedure.
次に、再起動処理シーケンス中の記憶制御装置105(#0)の動作例を図5のフローチャートを用いて説明する。 Next, an operation example of the storage control device 105 (# 0) during the restart processing sequence will be described with reference to the flowchart of FIG.
記憶制御装置105(#0)は、再起動処理シーケンスの開始にあたってアクセスカウンタ(ホスト計算機101から論理記憶装置へのアクセスの有無をカウントするためのカウンタ)をゼロクリアする(ステップ502)。なお、アクセスカウンタの動作の詳細については、図6のフローチャートを用いて後述する。 The storage control device 105 (# 0) clears the access counter (counter for counting presence / absence of access to the logical storage device from the host computer 101) to zero at the start of the restart processing sequence (step 502). Details of the operation of the access counter will be described later with reference to the flowchart of FIG.
次に、ホスト計算機101上のパス監視ソフトウェア303bから、状態確認のためのコマンドを受信した場合(ステップ503:状態確認コマンド)は、再起動ステータスを応答し(ステップ504)、ステップ505に進む。 Next, when a command for status confirmation is received from the path monitoring software 303b on the host computer 101 (step 503: status confirmation command), a restart status is returned (step 504), and the process proceeds to step 505.
一方、ステップ503において、パス監視ソフトウェア303bからリジェクトコマンドを受信した場合(ステップ503:リジェクトコマンド)は、直ちに再起動処理シーケンスを中止する(ステップ509)。 On the other hand, if a reject command is received from the path monitoring software 303b in step 503 (step 503: reject command), the restart processing sequence is immediately stopped (step 509).
また、ステップ503において、何れのコマンドも受信しない場合(ステップ503:なし)には、ステップ505に進む。 If no command is received in step 503 (step 503: none), the process proceeds to step 505.
ステップ505では、再起動シーケンスが開始されてから一定時間T1を経過し、時間t1に到達したかが判定される。そして、時間t1に到達すると(ステップ505:Yes)、アクセスカウンタの値を確認し(ステップ506)、アクセスカウンタの値がゼロでない場合(ステップ506:≧0)には、ホスト計算機101からアクセスが発生しているため、再起動処理シーケンスを中止する(ステップ509)。一方、時間t1に到達していない場合(ステップ505:No)には、ステップ503に戻る。
In
ステップ506において、アクセスカウンタの値がゼロであり(ステップ506:=0)、時間t1から更にT2経過し、時間t2に到達した場合(ステップ507:Yes)、この記憶制御装置105(#0)の再起動処理を実行し、再起動処理シーケンスを完了する(ステップ508)。
In
一方、ステップ507において、時間t2に到達していない場合(ステップ507:No)には、ステップ503に戻る。
On the other hand, in
次に、アクセスカウンタの動作の詳細について、図6のフローチャートを用いて説明する。 Next, details of the operation of the access counter will be described using the flowchart of FIG.
アクセスカウンタは、再起動処理シーケンス中であり、ホスト計算機101から論理記憶装置へのアクセスを受信した場合(ステップ602:Yes)、再起動シーケンスが開始されてから一定時間T1を経過し、時間t1に到達したのであれば(ステップ603:Yes)、値をインクリメントし(ステップ604)、アクセス処理を行う(ステップ605)。 Access counter is a restart process in the sequence, when receiving an access to the logical storage device from the host computer 101 (step 602: Yes), elapsed predetermined time T 1 from the restart sequence is initiated, the time if it has reached t 1 (step 603: Yes), increments the value (step 604), it performs an access process (step 605).
なお、ステップ602において、アクセスを受信していない場合(ステップ602:No)、ステップ603において、再起動シーケンスが開始されてから一定時間T1を経過しておらず、時間t1に到達していないのであれば(ステップ603:No)、ステップ605に進む。
Incidentally, in
尚、アクセスカウンタは、桁あふれすることのないよう十分な桁数を用意する。アクセスカウンタの処理以外は、通常のアクセスの処理を行う(ステップ606)。 The access counter is prepared with a sufficient number of digits so as not to overflow. Except for the access counter processing, normal access processing is performed (step 606).
上述したように、本発明の実施の形態に係る記憶制御装置の制御プログラムの更新方法においては、上記のような作用により、記憶制御装置105の制御プログラムをオンラインで、より簡単かつ安全に更新することが可能となる。
As described above, in the method for updating the control program for the storage control device according to the embodiment of the present invention, the control program for the
以上、本発明を実施するための最良の形態について、添付図面を参照しながら説明したが、本発明はかかる構成に限定されない。特許請求の範囲の発明された技術的思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の技術的範囲に属するものと了解される。 The best mode for carrying out the present invention has been described above with reference to the accompanying drawings, but the present invention is not limited to such a configuration. Within the scope of the invented technical idea of the scope of claims, a person skilled in the art can conceive of various changes and modifications. The technical scope of the present invention is also applicable to these changes and modifications. It is understood that it belongs to.
100…計算機システム、101…ホスト計算機、102…I/Oポート、103…ネットワークスイッチ、104…I/Oポート、105…記憶制御装置、106…I/Oポート、107…記憶装置、108…インタフェース、109…外部記憶装置、191…ホスト計算機、201…インタフェース制御回路、202…インタフェース制御回路、203…マイクロプロセッサ、204…ブリッジ回路、205…RAM、206…キャッシュメモリ、207…フラッシュメモリ、208…通信ポート、209…通信ポート、213…内部バス、301…アプリケーション、302…ファイルシステム、303…パス切り替えソフトウェア及びパス監視ソフトウェア、303a…パス切り替えソフトウェア、303b…パス監視ソフトウェア、304…ディスクドライバ、305…カードドライバ、306…ハードウェア、307…インタフェース
DESCRIPTION OF
Claims (4)
前記ホスト計算機が、前記冗長化された記憶制御装置のうちのどれを経由して前記論理記憶装置へアクセスするかを選択し、前記選択した記憶制御装置にアクセスして、この記憶制御装置の状態を監視し、
前記冗長化された各記憶制御装置は、自己の制御プログラムが書き替えられ、前記制御プログラムの更新のために必要な自己の再起動処理の要求が入力されると、この要求の入力時から予め定めた時間の経過時に自己の再起動処理を開始し、前記書き替えられた制御プログラムを使用した動作を実行できるようにするとともに、前記入力時から前記再起動処理が行われるまでの間に前記ホスト計算機によってアクセスされた場合には、前記状態の監視の結果として、自己が再起動処理待ちであることを示す再起動ステータスを応答し、
前記ホスト計算機は、前記状態を監視している記憶制御装置から前記再起動ステータスが応答されると、前記冗長化された各記憶制御装置のうち、前記再起動ステータスを応答した記憶制御装置以外の記憶制御装置を経由して前記論理記憶装置へアクセスするように前記選択を切り替える
ようにした制御プログラムの更新方法。 A storage controller connected to a host computer and a single or a plurality of storage devices, and using a part or all of the area of the single or a plurality of storage devices and providing a logical storage device to the host computer. A method of updating a control program, wherein the storage control device is made redundant by being connected to the logical storage device, and the method includes:
The host computer selects which of the redundant storage control devices to access the logical storage device, accesses the selected storage control device, and the status of the storage control device Monitor
When each redundant storage control device is rewritten with its own control program and a request for its own restart process necessary for updating the control program is input, the storage control device in advance starts from the time this request is input. The self-restart process is started when a predetermined time elapses, and the operation using the rewritten control program can be executed, and the restart process is performed after the input. When accessed by the host computer, as a result of monitoring the state, it responds with a restart status indicating that it is waiting for restart processing,
When the restart status is responded from the storage control device that is monitoring the state, the host computer is one of the redundant storage control devices other than the storage control device that responded to the restart status. A control program update method for switching the selection so as to access the logical storage device via a storage control device.
前記無効要求コマンドを発行された記憶制御装置は、前記要求された再起動処理をしないようにした請求項1に記載の制御プログラムの更新方法。 If the selection cannot be switched, the host computer issues an invalid request command requesting the storage controller that responded the restart status not to perform the requested restart process,
The method of updating a control program according to claim 1, wherein the storage control device that has issued the invalidation request command does not perform the requested restart process.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007205865A JP4635032B2 (en) | 2007-08-07 | 2007-08-07 | Method for updating control program of storage controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007205865A JP4635032B2 (en) | 2007-08-07 | 2007-08-07 | Method for updating control program of storage controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009042932A true JP2009042932A (en) | 2009-02-26 |
JP4635032B2 JP4635032B2 (en) | 2011-02-16 |
Family
ID=40443629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007205865A Expired - Fee Related JP4635032B2 (en) | 2007-08-07 | 2007-08-07 | Method for updating control program of storage controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4635032B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014049013A (en) * | 2012-09-03 | 2014-03-17 | Hitachi Automotive Systems Ltd | Electronic control system for automobile |
JP2014146176A (en) * | 2013-01-29 | 2014-08-14 | Nec Access Technica Ltd | Device state monitoring method |
JP2017010390A (en) * | 2015-06-24 | 2017-01-12 | 富士通株式会社 | Storage control device, storage control program, and storage control method |
US10809997B2 (en) | 2015-11-18 | 2020-10-20 | Fujitsu Limited | Information processing apparatus and program update control method |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01155452A (en) * | 1987-12-11 | 1989-06-19 | Nec Corp | System for confirming connection of data processing system |
JPH04137153A (en) * | 1990-09-28 | 1992-05-12 | Nec Corp | Check system for connection route |
JPH06309117A (en) * | 1993-04-22 | 1994-11-04 | Hitachi Ltd | Uninterruptible maintenance method for disk controller and disk controller |
JPH0962499A (en) * | 1995-08-22 | 1997-03-07 | Hitachi Ltd | Program file updating device |
JPH10260788A (en) * | 1997-03-19 | 1998-09-29 | Toshiba Corp | Disk array system |
JP2002063126A (en) * | 2000-08-18 | 2002-02-28 | Fujitsu Ltd | Multipath computer system |
JP2003131897A (en) * | 2001-10-24 | 2003-05-09 | Hitachi Ltd | Storage with built-in port |
JP2005242574A (en) * | 2004-02-25 | 2005-09-08 | Hitachi Ltd | Information processing system and method |
-
2007
- 2007-08-07 JP JP2007205865A patent/JP4635032B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01155452A (en) * | 1987-12-11 | 1989-06-19 | Nec Corp | System for confirming connection of data processing system |
JPH04137153A (en) * | 1990-09-28 | 1992-05-12 | Nec Corp | Check system for connection route |
JPH06309117A (en) * | 1993-04-22 | 1994-11-04 | Hitachi Ltd | Uninterruptible maintenance method for disk controller and disk controller |
JPH0962499A (en) * | 1995-08-22 | 1997-03-07 | Hitachi Ltd | Program file updating device |
JPH10260788A (en) * | 1997-03-19 | 1998-09-29 | Toshiba Corp | Disk array system |
JP2002063126A (en) * | 2000-08-18 | 2002-02-28 | Fujitsu Ltd | Multipath computer system |
JP2003131897A (en) * | 2001-10-24 | 2003-05-09 | Hitachi Ltd | Storage with built-in port |
JP2005242574A (en) * | 2004-02-25 | 2005-09-08 | Hitachi Ltd | Information processing system and method |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014049013A (en) * | 2012-09-03 | 2014-03-17 | Hitachi Automotive Systems Ltd | Electronic control system for automobile |
JP2014146176A (en) * | 2013-01-29 | 2014-08-14 | Nec Access Technica Ltd | Device state monitoring method |
JP2017010390A (en) * | 2015-06-24 | 2017-01-12 | 富士通株式会社 | Storage control device, storage control program, and storage control method |
US10809997B2 (en) | 2015-11-18 | 2020-10-20 | Fujitsu Limited | Information processing apparatus and program update control method |
Also Published As
Publication number | Publication date |
---|---|
JP4635032B2 (en) | 2011-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5463267B2 (en) | Virtual computer system and virtual computer migration method | |
US7650446B2 (en) | Storage system for back-end communications with other storage system | |
JP4551096B2 (en) | Storage subsystem | |
US7558916B2 (en) | Storage system, data processing method and storage apparatus | |
JP4387116B2 (en) | Storage system control method and storage system | |
JP5286212B2 (en) | Remote copy control method and system in storage cluster environment | |
US8423822B2 (en) | Storage system and method of controlling the same | |
US20100054120A1 (en) | Apparatus and method for cluster recovery | |
JP2005242574A (en) | Information processing system and method | |
US8275958B2 (en) | Storage system with remote copy controllers | |
JP4635032B2 (en) | Method for updating control program of storage controller | |
US7509535B1 (en) | System and method for managing failover in a data storage environment | |
US20160132271A1 (en) | Computer system | |
US10025655B2 (en) | Storage system | |
US7370235B1 (en) | System and method for managing and scheduling recovery after a failure in a data storage environment | |
US20090177916A1 (en) | Storage system, controller of storage system, control method of storage system | |
WO2018011882A1 (en) | Computer system and control method for storage device | |
US7401251B1 (en) | Architecture for managing failover and recovery after failover in a data storage environment | |
US7260680B2 (en) | Storage apparatus having microprocessor redundancy for recovery from soft errors | |
JP6039818B2 (en) | Information system, host system, and access control method | |
US10353613B2 (en) | Computer system and control method therefor for handling path failure | |
US11126514B2 (en) | Information processing apparatus, information processing system, and recording medium recording program | |
JP6764927B2 (en) | Storage systems, storage devices, and how to control storage systems | |
US7480820B2 (en) | Disk array apparatus, method for controlling the same, and program | |
JP2013073258A (en) | Storage device and method for restoring program data in storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100419 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100427 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100625 |
|
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: 20101026 |
|
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: 20101119 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131126 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |