JP4635032B2 - 記憶制御装置の制御プログラムの更新方法 - Google Patents

記憶制御装置の制御プログラムの更新方法 Download PDF

Info

Publication number
JP4635032B2
JP4635032B2 JP2007205865A JP2007205865A JP4635032B2 JP 4635032 B2 JP4635032 B2 JP 4635032B2 JP 2007205865 A JP2007205865 A JP 2007205865A JP 2007205865 A JP2007205865 A JP 2007205865A JP 4635032 B2 JP4635032 B2 JP 4635032B2
Authority
JP
Japan
Prior art keywords
storage
control device
restart
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.)
Expired - Fee Related
Application number
JP2007205865A
Other languages
English (en)
Other versions
JP2009042932A (ja
Inventor
享一 笹本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2007205865A priority Critical patent/JP4635032B2/ja
Publication of JP2009042932A publication Critical patent/JP2009042932A/ja
Application granted granted Critical
Publication of JP4635032B2 publication Critical patent/JP4635032B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、単一又は複数の記憶装置が接続され、それら記憶装置を使用してホスト計算機に対し論理記憶装置を提供する記憶制御装置に関し、特に、この記憶制御装置が冗長化されている場合に、ホスト計算機から論理記憶装置へのアクセスを停止することなく、オンラインで記憶制御装置の制御プログラムを更新する方法に関する。
従来、ホスト計算機と、単一又は複数の記憶装置とに接続され、前記単一又は複数の記憶装置の一部又は全ての領域を使用し、前記ホスト計算機に対し論理記憶装置を提供する記憶制御装置において、記憶制御装置を冗長化し、ホスト計算機から論理記憶装置へのアクセス経路を冗長化する技術が存在する。特に、最近の高機能なディスクアレイ装置について、この技術に基づく記憶制御装置の二重化はもはや標準的な機能となっている。このように記憶制御装置を冗長化することで、記憶制御装置の故障や計画停止などの際に、ホスト計算機はその記憶制御装置以外の記憶制御装置を経由して論理記憶装置へアクセスを継続できるようになり、計算機システムの可用性を大幅に高めることができる。
ところで、最近のディスクアレイ装置に代表される記憶制御装置は、非常に高機能になってきた一方で、記憶制御装置の機能を実現する制御プログラムはコード量も多くかつ複雑なものとなってきている。その結果として、計算機システムが運用を開始した以降も、不適合の修正や機能の改善などにより記憶制御装置の制御プログラムの更新が度々必要となっている。
記憶制御装置の制御プログラムを更新するためには、一般的には新しい制御プログラムを記憶制御装置へアップロード(書き込み)した後、その記憶制御装置を一度再起動する必要がある。これを再起動処理という。記憶制御装置の再起動処理を行うと、その間の十数秒〜数十秒の間はこの記憶制御装置はホスト計算機からのアクセスに応答することができなくなり、この記憶制御装置を経由した論理記憶装置へのアクセスができなくなる。
そこで記憶制御装置の制御プログラムの更新を行う際に、作業者は事前にパス切り替えソフトウェアを操作し、論理記憶装置へのアクセスを他の記憶制御装置を経由した経路に全て切り替えてから作業を行っている。このようにすることで、ホスト計算機から論理記憶装置へのアクセスを継続したまま、オンラインで制御プログラムの更新が可能となる。
特開2007−25933号公報
しかしながら、このような従来の制御プログラムの更新方法では、以下のような問題がある。
すなわち、接続されたホスト計算機の台数や論理記憶装置の台数が増えてくると、これら全てのホスト計算機及び論理記憶装置についてアクセス経路を切り替える作業が大変になってくる。そのため、作業ミスの発生や作業時間が長くなるなどの問題が顕在化してくる。
更には、システムのセキュリティなどの関係から、パス切り替えソフトウェアのようなホスト計算機上のソフトウェアの操作は限られた担当者のみしか許可されていない場合もあり、そのような場合はその担当者のスケジュールの確保なども大きな負担になるという問題もある。
これらの結果として、実際には記憶制御装置が冗長化されているにもかかわらず、例えば、上記特許文献1のように、オンラインではなく、計算機システムを停止して制御プログラムを入れ替えることにより更新を行っているようなケースも多く存在している。
本発明はこのような事情に鑑みてなされたものであり、記憶制御装置の制御プログラムをオンラインで、より簡単かつ安全に更新することが可能な方法を提供することを目的とする。
上記の目的を達成するために、本発明では、以下のような手段を講じる。
すなわち、請求項1の発明は、ホスト計算機と、単一又は複数の記憶装置とに接続され、単一又は複数の記憶装置の一部又は全ての領域を使用し、ホスト計算機に対し論理記憶装置を提供する記憶制御装置の制御プログラムを更新する方法であって、記憶制御装置が、論理記憶装置に対して複数接続されることにより冗長化されている。この方法では、ホスト計算機は、冗長化された記憶制御装置のうちのどれを経由して論理記憶装置へアクセスするかを選択し、選択した記憶制御装置にアクセスして、この記憶制御装置の状態を監視する。そして、冗長化された各記憶制御装置は、自己の制御プログラムが書き替えられ、制御プログラムの更新のために必要な自己の再起動処理の要求が入力された場合、この要求の入力時から予め定めた時間の経過時に自己の再起動処理を開始し、書き替えられた制御プログラムを使用した動作を実行できるようにするとともに、入力時から再起動処理が行われるまでの間にホスト計算機によってアクセスされた場合には、状態の監視の結果として、自己が再起動処理待ちであることを示す再起動ステータスを応答する。更に、ホスト計算機は、状態を監視している記憶制御装置から再起動ステータスが応答された場合、冗長化された各記憶制御装置のうち、再起動ステータスを応答した記憶制御装置以外の記憶制御装置を経由して論理記憶装置へアクセスするように選択を切り替える。
請求項2の発明は、請求項1の発明の制御プログラムの更新方法において、選択を切り替えることができない場合、ホスト計算機は、再起動ステータスを応答した記憶制御装置に対して、要求された再起動処理をしないように要求する無効要求コマンドを発行し、無効要求コマンドを発行された記憶制御装置は、要求された再起動処理を行わない。
請求項3の発明は、請求項1又は請求項2の発明の制御プログラムの更新方法において、予め定めた時間は、状態の監視がなされる監視周期よりも長い第1の時間と、ホスト計算機から記憶装置に対するアクセス頻度に対して十分長い時間である第2の時間とを合わせてなり、記憶制御装置は、再起動処理の要求の入力時から第1の時間が経過した後であって、更に第2の時間が経過するまでの間にホスト計算機によってアクセスされた場合には、要求された再起動処理を行わない。
請求項4の発明は、請求項1乃至3のうち何れか1項の発明の制御プログラムの更新方法において、ホスト計算機は、再起動ステータスを応答した記憶制御装置にその後アクセスした際に、この記憶制御装置から再起動ステータスの応答がなかった場合には、この記憶制御装置を経由して論理記憶装置へアクセスするように選択を切り替える。
本発明によれば、記憶制御装置の制御プログラムをオンラインで、より簡単かつ安全に更新することが可能な方法を実現することができる。
以下に、本発明を実施するための最良の形態について図面を参照しながら説明する。
図1は、本発明の実施の形態に係る記憶制御装置の制御プログラムの更新方法を適用した計算機システムの構成例を示す機能ブロック図である。
すなわち、この計算機システム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個に限定されるものではない。
ホスト計算機101は、本発明の実施の形態に係る記憶制御装置の制御プログラムの更新方法を実現するパス切り替えソフトウェア及びパス監視ソフトウェアがインストールされている。このようなホスト計算機101の詳細構成については、図3を用いて後述するが、図1では、I/Oポート102のみが示されている。
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のカードで実装されることが多い。
ネットワークスイッチ103は、SAN構成のためのものであり、Fibre channelやiSCSIなどのインタフェースを持つホスト計算機191や外部記憶装置109を相互接続するためのスイッチである。故障によるシステム停止を避けるため、ネットワークスイッチ103を、図1の例に示すように冗長構成とする場合も多い。
ネットワークスイッチ103はそれぞれ、ホスト計算機101に接続されたI/Oポート104と、記憶制御装置105に接続されたI/Oポート104’とを備えており、それらの数や種類は、接続するホスト計算機101や外部記憶装置109の台数や、インタフェースによる。
記憶制御装置105は、外部記憶装置109の各種機能を実現するものであり、本実施の形態では冗長化されている。図1に示す例では、二重化により冗長化されている。このような記憶制御装置105の詳細構成については、図2を用いて後述するが、図1では、I/Oポート106のみが示されている。
I/Oポート106は、例えばFibre channelやiSCSIに準拠し、本実施の形態のように、冗長構成での使用を想定した装置であれば、最低2ポート装備される。
例えばHDDや光磁気ディスク等である複数の記憶装置107(#0〜#m)は、記憶制御装置105によって組み合わされることにより、仮想的な記憶装置即ち論理記憶装置を構成する。ホスト計算機101からは、この論理記憶装置が一つの記憶装置として認識される。
インタフェース108は、記憶装置107を接続するためのものであり、記憶装置107がHDDである場合、Fibre channelや、SAS、SATA、SCSI等が一般的である。
外部記憶装置109は、一般に、記憶制御装置105と記憶装置107とから構成される。実際の製品としては、記憶装置107として複数のHDDを備え、RAIDの手法によりHDD故障に対する可用性を高めたディスクアレイ装置が一般的である。
記憶制御装置105の構成例を、図2の機能ブロック図に示す。
インタフェース制御回路201は、ホスト計算機101を接続するためのインタフェースであるI/Oポート106(図2には図示せず)を制御する回路であり、マイクロプロセッサ203にて動作している制御プログラムの指示で動作する。
インタフェース制御回路202は、HDD等の記憶装置107を接続するためのインタフェース(図示せず)を制御する回路であり、マイクロプロセッサ203にて動作している制御プログラムの指示で動作する。
マイクロプロセッサ203は、RAM205上の制御プログラムにより動作し、記憶制御装置105の機能を実現するための各種処理を行う。
ブリッジ回路204は、PCI−XやPCI−Express等の内部バス213と、マイクロプロセッサ203及びその周辺回路とを接続する。
RAM205は、処理上必要となるワークメモリや通信のためのバッファメモリなどとして使用されるほか、制御プログラムのメインのコードが、フラッシュメモリ207からコピーされる。このRAM205上のコードにしたがってマイクロプロセッサ203が動作する。
キャッシュメモリ206は、ホスト計算機101と記憶装置107との間でのデータ転送の際に、バッファ用途で使用されるのみならず、アクセス性能を向上させるためのリードキャッシュやライトキャッシュとしても使用可能な大容量のメモリである。
フラッシュメモリ207は、記憶制御装置105の制御プログラムを格納する。フラッシュメモリ207内の制御プログラムは書き替えが可能である。記憶制御装置105は、起動されると、フラッシュメモリ207内の制御プログラムをRAM205にコピーし、RAM205のイメージを使用してマイクロプロセッサ203が動作する。よって、記憶制御装置105が動作している状態でフラッシュメモリ207内の制御プログラムを書き替えても、記憶制御装置105はRAM205上の制御プログラムで動作しているため影響がない。
通信ポート208は、作業用の端末を接続するためのものである。フラッシュメモリ207内の制御プログラムの書き替え(アップロード)や、記憶制御装置105へ再起動処理要求の入力を行う場合には、この作業用の端末から行う。
この通信ポート208を介して、フラッシュメモリ207内の制御プログラムが書き替えられ、制御プログラムの更新のために必要な再起動処理要求が入力されると、記憶制御装置105は、図4のタイミングチャートに示すように、再起動処理要求の入力時tから時間Tと時間Tとを加えた時tに自己の再起動処理を行い、書き替えられた制御プログラムを使用した動作を開始できるようにする。このように、制御プログラムが書き替えられると、再起動処理要求の入力時tから時間Tと時間Tとを加えた時tに自己の再起動処理を行う処理を再起動処理シーケンスと称する。
また、再起動処理シーケンス中(再起動処理要求の入力時tから再起動処理が行われる時tまでの間)にホスト計算機101によってアクセスされた場合には、状態の監視の結果として、図中(a)に示すように、自己が再起動処理実行待ちであることを示す再起動ステータスをホスト計算機101に応答する。
なお、時間Tは、ホスト計算機101に備えられている後述するパス監視ソフトウェア303bによる記憶制御装置105の状態監視周期(例えば、1分)よりも長い第1の時間(例えば、状態監視周期の2〜3倍程度の時間)である。また、時間Tは、ホスト計算機101から記憶装置107に対するリード及びライト頻度に対して十分長い時間であり、一般的に数秒から1分程度であり、時間Tよりも短い。
そして、記憶制御装置105は、図4の(c)に示すように、再起動処理要求の入力時tから時間Tが経過した時t以降であって、更に時間Tが経過する時tまでの間にホスト計算機101によってアクセスされた場合には、再起動処理シーケンスを中止し、再起動処理も行わない。
通信ポート209は、記憶制御装置105間(例えば、記憶制御装置105(#0)と記憶制御装置105(#1)との間)で通信するためのポートである。この通信ポート209は、二重化した記憶制御装置105間で、情報のやり取りや処理の同期を取るために使用する。
次に、ホスト計算機101の構成例を、図3の機能ブロック図に示す。
すなわち、ホスト計算機101は、ソフトウェアであるアプリケーション301、ファイルシステム302、パス切り替えソフトウェア及びパス監視ソフトウェア303、ディスクドライバ304、及びカードドライバ305(一例として、カードドライバ305(#−0)とカードドライバ305(#−1)との2つを示す)がインストールされているとともに、カードドライバ305に対応して備えられたハードウェア306を備えている。
アプリケーション301は、アプリケーションソフトウェアやミドルウェアなどである。アプリケーション301から論理記憶装置へアクセスする場合、ファイルシステム302を介してアクセスする方法と直接アクセスする方法がある。
ファイルシステム302は、ホスト計算機101にインストールされた各種ソフトウェア(301,303〜305)が扱うファイルの管理や、それに関連した論理記憶装置の管理を行う。
パス切り替えソフトウェア及びパス監視ソフトウェア303は、論理記憶装置への冗長化されたアクセス経路の管理を行うためのソフトウェアであるパス切り替えソフトウェア303aとパス監視ソフトウェア303bとからなる。
パス切り替えソフトウェア303aは、上位のファイルシステム302やアプリケーション301から論理記憶装置へアクセスする際に、そのアクセス要求を受け取ると、アクセス対象の論理記憶装置に対し複数存在するアクセス経路のうちのどれを経由して論理記憶装置にアクセスするのかを選択し、選択した経路を用いて、対応する記憶制御装置105(以下、例えば、記憶制御装置105(#0)とする)を介して論理記憶装置へのアクセスを実行する。また、その経路でアクセス実行できなかった場合は、他の経路に切り替えてアクセスを実行する。これら経路の切り替えをパス切り替えソフトウェア303aが自動的に行うことにより、上位のファイルシステム302やアプリケーション301からは記憶制御装置105の故障などの影響を受けることなく論理記憶装置へのアクセスが継続される。
また、パス監視ソフトウェア303bは、パス切り替えソフトウェア303aによって選択されたアクセス経路に存在する記憶制御装置105(#0)にアクセスし、この記憶制御装置105(#0)の状態を監視するソフトウェアである。記憶制御装置105(#0)について、主にアクセスしている経路だけでなく、代替用に準備した経路についても正常に動作していることを、例えば1分のような所定の監視周期で確認する。これにより経路を切り替えようとした際に代替用の経路が故障している多重故障を抑止する。また経路の監視は、そのアクセス経路に存在する記憶制御装置105(#0)に対しコマンドを発行し、その応答を確認することにより行う。
このコマンドの発行に対して、記憶制御装置105(#0)から、パス監視ソフトウェア303bに再起動ステータスが応答されると、パス切り替えソフトウェア303aは、冗長化された各記憶制御装置105(#0,#1)のうち、再起動ステータスを応答した記憶制御装置105(#0)以外の記憶制御装置105(#1)を経由して論理記憶装置へアクセスするように選択を切り替える。
なお、この選択切り替えができない場合、パス監視ソフトウェア303bは、再起動ステータスを応答した記憶制御装置105(#0)に対して、再起動処理シーケンスを中止する(すなわち、再起動処理も行わない)ように要求するリジェクトコマンドを発行する。この場合、図4の(b)に示すように、リジェクトコマンドを発行された記憶制御装置105(#0)は、再起動処理シーケンスを中止する。
また、ホスト計算機101が、再起動ステータスを応答した記憶制御装置105(#0)にその後アクセスしたところ、この記憶制御装置105(#0)からパス監視ソフトウェア303bに対して再起動ステータスの応答がなかった場合には、パス切り替えソフトウェア303aは、この記憶制御装置105(#0)を経由して論理記憶装置へアクセスするように選択を切り替える。
ディスクドライバ304は、記憶装置107に対する例えばSCSIコマンドに代表されるコマンド処理を行うソフトウェアである。
カードドライバ305は、ハードウェア306を制御するソフトウェアであり、ハードウェア306は、ホスト計算機101をネットワークスイッチ103に接続するI/Oポート102を装備しており、PCI−XやPCI−Express等のHBAで実装されることが多い。
インタフェース307は、ホスト計算機101をネットワークスイッチ103に接続するものであり、Fibre channelや、iSCSI等が一般的である。
次に、以上のように構成した本発明の実施の形態に係る記憶制御装置105(#0)の制御プログラムの更新方法の詳細を図4のタイミングチャートを用いて説明する。
まず、図示しない作業用端末を、記憶制御装置105(#0)の通信ポート208に接続し、この作業用端末を用いて、フラッシュメモリ207内の制御プログラムを、新しい制御プログラムに書き替える。図4では、このタイミングを、時間tで示す。
次に、この作業用端末などから、記憶制御装置105(#0)に対して、制御プログラムの更新のために必要な処理である再起動処理要求の入力を行う。この再起動処理要求が入力された記憶制御装置105(#0)では、この時点tから再起動処理シーケンスが開始される。再起動処理シーケンスは、最終的に時間tにおいて再起動処理が実行されるか、または時間tに至る前に再起動処理シーケンスが中止されるタイミングまで継続する。
そして、このような再起動処理シーケンス中の記憶制御装置105(#0)は、再起動処理シーケンスが開始された時点tから時間(T+T)が経過した時点tまで待ってから記憶制御装置105(#0)を再起動処理を開始し、再起動処理が完了すると、書き替えられた新しい制御プログラムでの動作を開始できるようになる。
なお、記憶制御装置105(#0)は、図4中に示す(a)のように、再起動処理シーケンス中に、ホスト計算機101のパス監視ソフトウェア303bからコマンドを受信した場合、そのコマンドに対して再起動ステータスを応答する。このように、再起動ステータスが応答された場合、ホスト計算機101のパス監視ソフトウェア303bは、論理記憶装置へのアクセスを再起動ステータスが応答された記憶制御装置105(#0)ではない記憶制御装置105(#1)を経由して行うよう、パス切り替えソフトウェア303aを操作する。
また、記憶制御装置105(#0)を再起動することにより再起動処理シーケンスは完了するため、以降パス監視ソフトウェア303bからのアクセスに対しては、再起動ステータスを応答することはなくなり、通常の応答がされる。この通常の応答を検出したパス監視ソフトウェア303bは、その記憶制御装置105(#0)にて再起動ステータスを検出して他の記憶制御装置105(#1)を経由するよう切り替えていたアクセス経路を、以前の元のアクセス経路に戻す処理を行う。
前述したように、時間Tは、ホスト計算機101に備えられている後述するパス監視ソフトウェア303bによる記憶制御装置105の状態監視周期(例えば、1分)よりも長い(例えば、状態監視周期の2〜3倍程度の時間である)。また、時間Tは、ホスト計算機101から記憶装置107に対するリード及びライト頻度に対して十分長く、一般的に数秒から1分程度である。したがって、記憶制御装置105に接続された複数のホスト計算機101の全てが再起動ステータスを受信することができ、アクセス経路を切り替えることが可能となる。
また、ホスト計算機101は、パス監視ソフトウェア303bが、記憶制御装置105(#0)から再起動ステータスを受信した際に、論理記憶装置へのアクセスについて、再起動ステータスを受信した記憶制御装置105(#0)以外の全ての記憶制御装置105(例えば、記憶制御装置105(#1))を経由してもアクセスが行えない場合、例えば、他の記憶制御装置105(#1)が故障している場合や、ホスト計算機101側のI/Oポート102等が故障しており他の記憶制御装置105(#1)側の経路が使えない場合等に、パス監視ソフトウェア303bは、再起動ステータスを応答した記憶制御装置105(#0)に対し、図4中の(b)に示すように、リジェクトコマンドを発行する。
そして、このリジェクトコマンドを受信した記憶制御装置105(#0)は、自装置105(#0)を経由した論理記憶装置へのアクセスを回避することができないため、再起動処理シーケンスを中止する。
また、パス監視ソフトウェア303bが動作していないホスト計算機101が混在して接続されている場合の動作について以下に説明する。
この場合、アクセス経路が切り替えられないまま記憶制御装置105(#0)を再起動すると、その間、そのホスト計算機101からは論理記憶装置へのアクセスが不可能な状態となり、その結果、システム停止の障害となる可能性がある。このような場合に対処するためのガード機構として、本実施の形態に係る制御プログラムの更新方法では、図4中の(c)に示すように、再起動処理シーケンスが開始されてから時間T経過してから、更に時間T経過するまでの期間(すなわち、tからtまでの期間)内に、何れかのホスト計算機101から論理記憶装置に対し、この再起動シーケンス中の記憶制御装置105(#0)を経由してアクセスが発生した場合、動作していないホスト計算機101が存在するものとパス監視ソフトウェア303bが判断し、再起動処理シーケンスを中止する。
記憶制御装置105(#0)は、再起動処理シーケンスの期間中、図4(b)に示すようなリジェクトコマンドの受信もなく、図4(c)に示すようなアクセスもない場合に、図4(a)に示すように、最終ステップとして再起動処理を実行する。そして、再起動された記憶制御装置105(#0)は、新しい制御プログラムをフラッシュメモリ207(#0)より読み出し、その制御プログラムでの動作を開始できるようになる。同様の手順にて、他の記憶制御装置(例えば、記憶制御装置105(#1))についても制御プログラムの更新を行うことができる。
次に、再起動処理シーケンス中の記憶制御装置105(#0)の動作例を図5のフローチャートを用いて説明する。
記憶制御装置105(#0)は、再起動処理シーケンスの開始にあたってアクセスカウンタ(ホスト計算機101から論理記憶装置へのアクセスの有無をカウントするためのカウンタ)をゼロクリアする(ステップ502)。なお、アクセスカウンタの動作の詳細については、図6のフローチャートを用いて後述する。
次に、ホスト計算機101上のパス監視ソフトウェア303bから、状態確認のためのコマンドを受信した場合(ステップ503:状態確認コマンド)は、再起動ステータスを応答し(ステップ504)、ステップ505に進む。
一方、ステップ503において、パス監視ソフトウェア303bからリジェクトコマンドを受信した場合(ステップ503:リジェクトコマンド)は、直ちに再起動処理シーケンスを中止する(ステップ509)。
また、ステップ503において、何れのコマンドも受信しない場合(ステップ503:なし)には、ステップ505に進む。
ステップ505では、再起動シーケンスが開始されてから一定時間Tを経過し、時間tに到達したかが判定される。そして、時間tに到達すると(ステップ505:Yes)、アクセスカウンタの値を確認し(ステップ506)、アクセスカウンタの値がゼロでない場合(ステップ506:≧0)には、ホスト計算機101からアクセスが発生しているため、再起動処理シーケンスを中止する(ステップ509)。一方、時間tに到達していない場合(ステップ505:No)には、ステップ503に戻る。
ステップ506において、アクセスカウンタの値がゼロであり(ステップ506:=0)、時間tから更にT経過し、時間tに到達した場合(ステップ507:Yes)、この記憶制御装置105(#0)の再起動処理を実行し、再起動処理シーケンスを完了する(ステップ508)。
一方、ステップ507において、時間tに到達していない場合(ステップ507:No)には、ステップ503に戻る。
次に、アクセスカウンタの動作の詳細について、図6のフローチャートを用いて説明する。
アクセスカウンタは、再起動処理シーケンス中であり、ホスト計算機101から論理記憶装置へのアクセスを受信した場合(ステップ602:Yes)、再起動シーケンスが開始されてから一定時間Tを経過し、時間tに到達したのであれば(ステップ603:Yes)、値をインクリメントし(ステップ604)、アクセス処理を行う(ステップ605)。
なお、ステップ602において、アクセスを受信していない場合(ステップ602:No)、ステップ603において、再起動シーケンスが開始されてから一定時間Tを経過しておらず、時間tに到達していないのであれば(ステップ603:No)、ステップ605に進む。
尚、アクセスカウンタは、桁あふれすることのないよう十分な桁数を用意する。アクセスカウンタの処理以外は、通常のアクセスの処理を行う(ステップ606)。
上述したように、本発明の実施の形態に係る記憶制御装置の制御プログラムの更新方法においては、上記のような作用により、記憶制御装置105の制御プログラムをオンラインで、より簡単かつ安全に更新することが可能となる。
以上、本発明を実施するための最良の形態について、添付図面を参照しながら説明したが、本発明はかかる構成に限定されない。特許請求の範囲の発明された技術的思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の技術的範囲に属するものと了解される。
本発明の実施の形態に係る記憶制御装置の制御プログラムの更新方法を適用した計算機システムの構成例を示す機能ブロック図。 記憶制御装置の詳細構成を示す機能ブロック図。 ホスト計算機の構成例を示す機能ブロック図。 再起動処理シーケンスの詳細を示すタイミングチャート。 再起動処理シーケンス中の記憶制御装置の動作例を示すフローチャート。 アクセスカウンタの動作の詳細例を示すフローチャート。
符号の説明
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…インタフェース

Claims (4)

  1. ホスト計算機と、単一又は複数の記憶装置とに接続され、前記単一又は複数の記憶装置の一部又は全ての領域を使用し、前記ホスト計算機に対し論理記憶装置を提供する記憶制御装置の制御プログラムを更新する方法であって、前記記憶制御装置は、前記論理記憶装置に対して複数接続されることにより冗長化されており、前記方法は、
    前記ホスト計算機が、前記冗長化された記憶制御装置のうちのどれを経由して前記論理記憶装置へアクセスするかを選択し、前記選択した記憶制御装置にアクセスして、この記憶制御装置の状態を監視し、
    前記冗長化された各記憶制御装置は、自己の制御プログラムが書き替えられ、前記制御プログラムの更新のために必要な自己の再起動処理の要求が入力された場合、この要求の入力時から予め定めた時間の経過時に自己の再起動処理を開始し、前記書き替えられた制御プログラムを使用した動作を実行できるようにするとともに、前記入力時から前記再起動処理が行われるまでの間に前記ホスト計算機によってアクセスされた場合には、前記状態の監視の結果として、自己が再起動処理待ちであることを示す再起動ステータスを応答し、
    前記ホスト計算機は、前記状態を監視している記憶制御装置から前記再起動ステータスが応答された場合、前記冗長化された各記憶制御装置のうち、前記再起動ステータスを応答した記憶制御装置以外の記憶制御装置を経由して前記論理記憶装置へアクセスするように前記選択を切り替える
    ようにした制御プログラムの更新方法。
  2. 前記選択を切り替えることができない場合、前記ホスト計算機は、前記再起動ステータスを応答した記憶制御装置に対して、前記要求された再起動処理をしないように要求する無効要求コマンドを発行し、
    前記無効要求コマンドを発行された記憶制御装置は、前記要求された再起動処理をしないようにした請求項1に記載の制御プログラムの更新方法。
  3. 前記予め定めた時間は、前記状態の監視がなされる監視周期よりも長い第1の時間と、前記ホスト計算機から前記記憶装置に対するアクセス頻度に対して十分長い時間である第2の時間とを合わせてなり、前記記憶制御装置は、前記再起動処理の要求の入力時から前記第1の時間が経過した後であって、更に前記第2の時間が経過するまでの間に前記ホスト計算機によってアクセスされた場合には、前記要求された再起動処理をしないようにした請求項1又は請求項2に記載の制御プログラムの更新方法。
  4. 前記ホスト計算機は、前記再起動ステータスを応答した記憶制御装置にその後アクセスした際に、この記憶制御装置から再起動ステータスの応答がなかった場合には、この記憶制御装置を経由して前記論理記憶装置へアクセスするように前記選択を切り替えるようにした請求項1乃至3のうち何れか1項に記載の制御プログラムの更新方法。
JP2007205865A 2007-08-07 2007-08-07 記憶制御装置の制御プログラムの更新方法 Expired - Fee Related JP4635032B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007205865A JP4635032B2 (ja) 2007-08-07 2007-08-07 記憶制御装置の制御プログラムの更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007205865A JP4635032B2 (ja) 2007-08-07 2007-08-07 記憶制御装置の制御プログラムの更新方法

Publications (2)

Publication Number Publication Date
JP2009042932A JP2009042932A (ja) 2009-02-26
JP4635032B2 true JP4635032B2 (ja) 2011-02-16

Family

ID=40443629

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007205865A Expired - Fee Related JP4635032B2 (ja) 2007-08-07 2007-08-07 記憶制御装置の制御プログラムの更新方法

Country Status (1)

Country Link
JP (1) JP4635032B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6129499B2 (ja) * 2012-09-03 2017-05-17 日立オートモティブシステムズ株式会社 自動車用電子制御システム
JP5801330B2 (ja) * 2013-01-29 2015-10-28 Necプラットフォームズ株式会社 デバイスの状態監視方法
JP2017010390A (ja) * 2015-06-24 2017-01-12 富士通株式会社 ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法
JP6555096B2 (ja) 2015-11-18 2019-08-07 富士通株式会社 情報処理装置およびプログラム更新制御方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002063126A (ja) * 2000-08-18 2002-02-28 Fujitsu Ltd マルチパス計算機システム
JP2003131897A (ja) * 2001-10-24 2003-05-09 Hitachi Ltd ポートを内蔵したストレージ
JP2005242574A (ja) * 2004-02-25 2005-09-08 Hitachi Ltd 情報処理システム、および情報処理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0644254B2 (ja) * 1987-12-11 1994-06-08 日本電気株式会社 データ処理システムの接続確認方式
JPH04137153A (ja) * 1990-09-28 1992-05-12 Nec Corp 接続経路のチェック方式
JPH06309117A (ja) * 1993-04-22 1994-11-04 Hitachi Ltd ディスク制御装置の無停止保守方法およびディスク制御装置
JP3224970B2 (ja) * 1995-08-22 2001-11-05 株式会社日立製作所 プログラム交換可能な磁気記憶装置制御システム及びプログラム交換方法
JPH10260788A (ja) * 1997-03-19 1998-09-29 Toshiba Corp ディスクアレイシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002063126A (ja) * 2000-08-18 2002-02-28 Fujitsu Ltd マルチパス計算機システム
JP2003131897A (ja) * 2001-10-24 2003-05-09 Hitachi Ltd ポートを内蔵したストレージ
JP2005242574A (ja) * 2004-02-25 2005-09-08 Hitachi Ltd 情報処理システム、および情報処理方法

Also Published As

Publication number Publication date
JP2009042932A (ja) 2009-02-26

Similar Documents

Publication Publication Date Title
JP4551096B2 (ja) ストレージサブシステム
US7650446B2 (en) Storage system for back-end communications with other storage system
JP5463267B2 (ja) 仮想計算機システムおよび仮想計算機の移行方法
US7464236B2 (en) Storage system and storage management method
JP4387116B2 (ja) ストレージシステムの制御方法、及びストレージシステム
US7558916B2 (en) Storage system, data processing method and storage apparatus
JP5222617B2 (ja) 情報システム及びi/o処理方法
JP4884885B2 (ja) 記憶制御装置及び記憶制御装置の障害回復方法
US8423822B2 (en) Storage system and method of controlling the same
US7509535B1 (en) System and method for managing failover in a data storage environment
JP5286212B2 (ja) ストレージクラスタ環境でのリモートコピー制御方法及びシステム
US7401251B1 (en) Architecture for managing failover and recovery after failover in a data storage environment
US7370235B1 (en) System and method for managing and scheduling recovery after a failure in a data storage environment
JP2005242574A (ja) 情報処理システム、および情報処理方法
JP2006227856A (ja) アクセス制御装置及びそれに搭載されるインターフェース
US8275958B2 (en) Storage system with remote copy controllers
JP4635032B2 (ja) 記憶制御装置の制御プログラムの更新方法
US20090228672A1 (en) Remote copy system and check method
US7480820B2 (en) Disk array apparatus, method for controlling the same, and program
US20090177916A1 (en) Storage system, controller of storage system, control method of storage system
US10025655B2 (en) Storage system
JP6039818B2 (ja) 情報システム、ホストシステム、及びアクセス制御方法
US11126514B2 (en) Information processing apparatus, information processing system, and recording medium recording program
US7260680B2 (en) Storage apparatus having microprocessor redundancy for recovery from soft errors
US10353613B2 (en) Computer system and control method therefor for handling path failure

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