(57)【特許請求の範囲】
【請求項１】
複数の計算機と一つ以上のストレージ装置とをＩＰネットワークを介して接続されるシステムにおけるストレージアクセス管理機能であって、前記ストレージアクセス管理機能は、各ストレージ装置からストレージセッション情報を収集し、前記ストレージセッション情報に基づいて、ある計算機が使用するディスクリソースが開放されている場合、他の計算機に対してマウントを許可するマウント制御を行う、ことを特徴とするストレージアクセス管理機能。
【請求項２】
請求項１記載のストレージアクセス管理機能であって、
上記ストレージ装置内に存在するストレージセッション情報を取得して、上記ストレージ装置のアクセス状態を監視し、上記アクセス状態の変化をマウント予約サーバに通知することを特徴とするストレージアクセス管理機能。
【請求項３】
請求項１記載のストレージアクセス管理機能であって、
上記ストレージ装置内に存在するストレージセッション情報を監視することによって、上記ストレージセッション情報が存在する場合、アクセス状態をアクセス中と判断し、上記ストレージセッション情報が存在しない場合、アクセス状態をアクセス停止と判断することを特徴とするストレージアクセス管理機能。
【請求項４】
請求項１記載のストレージアクセス管理機能であって、
上記アクセス状態の変化を契機として、上記アクセス状態、アクセス元の計算機の情報、アクセス先のストレージ装置の情報、及びアクセス状態の変化日時を含むメッセージを、マウント予約サーバに通知することを特徴とするストレージアクセス管理機能。
【請求項５】
請求項１記載のストレージアクセス管理機能であって、
上記ストレージ装置は、上記マウント予約サーバから送信されてきたディスクリソースの範囲であるスコープ定義を受信し、このスコープ定義に従ってストレージセッション情報を監視し、上記マウント予約サーバにアクセス状態の変化を契機としてストレージセッション情報を通知することを特徴とするストレージアクセス管理機能。
【請求項６】
請求項１記載のストレージアクセス管理機能であって、
上記マウント制御は、予約時刻の早い順にマウント要求の許可を行うことを特徴とするストレージアクセス管理機能。
【請求項７】
請求項１記載のストレージアクセス管理機能であって、
上記マウント制御は、計算機毎あるいはディスクリソース毎のマウント処理の優先度を、所定の計算機から受け付け、予め設定された上記優先度に応じて、優先度の高い順にマウント要求の許可を行うことを特徴とするストレージアクセス管理機能。
【請求項８】
請求項１記載のストレージアクセス管理機能であって、前記ディスクリソースが開放されているか否かを判断し、開放されていない場合、前記ディスクリソースを他の計算機に対してマウントを許可しないことを特徴とするストレージアクセス管理機能。
【請求項９】
複数の計算機と１つ以上のストレージ装置とをＩＰネットワークを介して接続したストレージ・エリア・ネットワークに用いられるストレージアクセス管理システムであって、
ストレージセッション情報を取得してマウント予約サーバに通知するストレージ装置と、
各ストレージ装置から収集したストレージセッション情報に基づいて、ある計算機が使用するディスクリソースが開放されている間だけ、他の計算機に対してマウントを許可するマウント制御を行うマウント予約サーバと、
を備えたストレージアクセス管理システム。
【請求項１０】
請求項９記載のストレージアクセス管理システムであって、
上記ストレージ装置は、上記ストレージセッション情報を取得して、上記ストレージ装置へのアクセス状態を監視し、上記アクセス状態の変化を上記マウント予約サーバに通知することを特徴とするストレージアクセス管理システム。
【請求項１１】
複数の計算機とＩＰネットワークを介して接続され、ストレージ・エリア・ネットワークを構成するストレージ装置であって、
バスによって連結されたディスクとＣＰＵとメモリとを有しており、上記ＣＰＵが上記メモリ上のアクセス状態監視モジュールを起動して、上記ストレージ装置内に存在するストレージセッション情報を取得して、上記ストレージ装置へのアクセス状態を監視し、上記アクセス状態の変化をマウント予約サーバに通知することを特徴とするストレージ装置。
【請求項１２】
請求項１１記載のストレージ装置であって、
上記ＣＰＵが、上記ストレージ装置内に存在するストレージセッション情報を監視することによって、上記ストレージセッション情報が存在する場合、アクセス状態をアクセス中と判断し、上記ストレージセッション情報が存在しない場合、アクセス状態をアクセス停止と判断することを特徴とするストレージ装置。
【請求項１３】
請求項１１記載のストレージ装置であって、
上記ＣＰＵが、上記アクセス状態の変化を契機として、上記アクセス状態、アクセス元の計算機の情報、アクセス先のストレージ装置の情報、及びアクセス状態の変化日時を含むメッセージを、上記マウント予約サーバに通知することを特徴とするストレージ装置。
【請求項１４】
請求項１１記載のストレージ装置であって、
上記ＣＰＵが、上記ストレージ装置は、上記マウント予約サーバから送信されてきたディスクリソースの範囲であるスコープ定義を受信し、このスコープ定義に従ってストレージセッション情報を監視し、上記マウント予約サーバに対してアクセス状態の変化を通知することを特徴とするストレージ装置。
【請求項１５】
複数の計算機と１つ以上のストレージ装置とをＩＰネットワークを介して接続したストレージ・エリア・ネットワークに接続されるマウント予約サーバであって、
バスによって連結されたディスクとＣＰＵとメモリとを有しており、上記ＣＰＵが上記メモリ上のマウント予約モジュールを起動して、各ストレージ装置から収集したストレージセッション情報に基づいて、ある計算機が使用するディスクリソースが開放されている間だけ、他の計算機に対してマウントを許可するマウント制御を行うことを特徴とするマウント予約サーバ。
【請求項１６】
請求項１５記載のマウント予約サーバであって、
上記ＣＰＵが、上記ストレージ装置からのメッセージを受信すると、メッセージの内容を、ストレージリソース毎に記録したアクセス状態リストに反映することを特徴とするマウント予約サーバ。
【請求項１７】
請求項１５記載のマウント予約サーバであって、
上記ＣＰＵが、管理サーバからのマウント要求を受信すると、予約順序を制御しながら、マウント要求の内容を、ストレージリソース毎に記録したマウント予約リストに反映することを特徴とするマウント予約サーバ。
【請求項１８】
請求項１５記載のマウント予約サーバであって、
上記ＣＰＵが、予約時刻に応じて、あるいは、計算機又はストレージ装置の優先度に応じて、予約順序の制御を行うことを特徴とするマウント予約サーバ。
【請求項１９】
請求項１５記載のマウント予約サーバであって、
上記ＣＰＵが、上記ストレージ装置からのメッセージを受信し、メッセージの内容に応じて、アクセス中であれば、他の計算機のマウント要求は実行せず、アクセス停止であれば、マウント予約リスト中で該当するストレージリソースに対して次に予約されている他の計算機に対してマウント許可のメッセージを通知し、マウント予約リストから該当するホストの予約内容を削除することを特徴とするマウント予約サーバ。
【請求項２０】
請求項１５記載のマウント予約サーバであって、
上記ＣＰＵが、優先度の高い計算機からのマウント要求があった場合には、優先度の低いマウント中の計算機に対してアンマウント要求を通知して、既にマウント済みのディスクリソースを開放し、優先度の高い計算機にアクセス許可を行うマウント制御を行うことを特徴とするマウント予約サーバ。
【請求項２１】
請求項１５記載のマウント予約サーバであって、
上記ＣＰＵが、上記ストレージ装置に対してディスクリソースの範囲を設定したスコープ定義を送信し、上記スコープ定義で設定された範囲のディスクリソースが開放されたことを契機として上記ストレージ装置から通知されたアクセス状態の変化に基づいて、上記スコープ定義の範囲のディスクリソースに対するマウントを許可するマウント制御を行うことを特徴とするマウント予約サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書及び図面で開示される技術は、ストレージアクセス管理に関し、特に、インターネット・プロトコル・ネットワーク（Internet  Protocol  Network、以下、「ＩＰネットワーク」と略称する。）を用いたストレージ・エリア・ネットワーク（Storage  Area  Network、以下、「ＳＡＮ」と略称する。）におけるストレージアクセス管理方法及び管理システムに関するものである。以下、ＩＰネットワークを用いたＳＡＮのことを、「ＩＰ−ＳＡＮ」と表記する。
【背景技術】
【０００２】
特許文献１には、ディスクアレイ装置の論理ボリューム間のコピー（バックアップ）指示やアクセスを行う場合に、上位装置から上記ディスクアレイ装置にマウント要求を発行してアクセス可能にし、マウント／アンマウント要求に対応したマウント状態を判定することにより、同一の論理ボリュームデータを異なる上位装置が書き換えてしまう予期しないデータ障害の発生を防ぐ記憶制御装置及び方法の発明が記載されている。
【特許文献１】米国特許出願公開  ＵＳ２００４０２０５２９３
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記の特許文献１に記載された記憶制御装置では、ストレージ装置において、ユーザアクセスの有無を単にユーザ端末からのマウント／アンマウント要求によってのみ判断していた。しかしながら、マウント／アンマウント要求と、実際のマウント状態は必ずしも等価ではないため、ユーザアクセスは停止しているのにこれを検知できない場合があった。
【０００４】
例えば、計算機システムにおいて、ユーザがストレージ装置にアクセスしないタイミングにおいて、バックアップサーバがストレージ装置のデータをバックアップするという方法がある。ユーザ端末とストレージ装置のディスクは既にマウント完了状態にあるとする。
ここで、何らかの障害により、アンマウント要求が出ていないにも関らずマウントが切れた場合、ストレージ装置はユーザアクセス停止を検知できない。このため、バックアップサーバがバックアップ処理のため同ディスクにマウントしようとしても、まだユーザアクセス中と判断され、マウントできないという問題点があった。
【０００５】
上記の問題点を解決するためには、計算機システムにおいて、ストレージに対するマウント／アンマウント要求の有無ではなく、実際のマウント／アンマウント状態を監視することにより、ディスクリソースを排他的に利用するユーザ端末や管理サーバに対して、正確かつリアルタイムにアクセス状態の変化を監視して通知する仕組みが必要である。
【課題を解決するための手段】
【０００６】
本発明の一実施形態は、ＩＰネットワークを用いたストレージ・エリア・ネットワーク（ＩＰ−ＳＡＮ）において、ストレージ装置へのマウントを監視／制御するマウント予約サーバを設け、ストレージ装置において、ストレージセッション情報を取得して、ユーザのアクセス状態を監視し、アクセス状態に変化が生じた場合、マウント予約サーバに対して状態変化の内容を通知し、これを受けたマウント予約サーバが予めマウントしたい計算機から受けて保持していたマウント要求と比較することにより、ユーザアクセスが停止しているディスクリソースについてのみ計算機のマウント予約を実行することにより、正確かつリアルタイムなアクセス状態の変化に対応したマウント管理を実現する。
【発明の効果】
【０００７】
本発明の一実施形態により、ＩＰネットワークを用いたストレージ・エリア・ネットワークにおけるストレージへのマウント状態を正確かつリアルタイムに監視することができ、バックアップサービスやウィルスチェックサービスなどの定常的な運用管理サービスを効率よく実施することが可能となる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態を、図面を用いて詳細に説明する。
【実施例１】
【０００９】
本発明の実施例１では、ユーザ端末とストレージ装置を直結する計算機システムにおいて、ユーザ端末が、ストレージ装置にアクセスしていないタイミングにおいて、管理者サイトにて自動的にバックアップサービスを実行する高効率な計算機システムの例を挙げる。
尚、本発明の一実施形態は、あらゆる形態のＩＰ−ＳＡＮに適用可能である。
図１は、本発明の実施例１であるＩＰ−ＳＡＮのシステム構成を表している。
【００１０】
ユーザサイトのＩＰネットワーク１２０１には、ユーザ端末１１００が接続され、ユーザ端末１１００は、バスＩＦ１１０２にて連結されたディスク１１０１、ＣＰＵ１１０３、メモリ１１０４を有しており、ＣＰＵ１１０３は、メモリ１１０４上のアプリケーション１１０５が起動して制御を行う。また、ユーザサイトのＩＰネットワーク１２０１に接続するためのｉＳＣＳＩホストバスアダプタ１１０６は、ｉＳＣＳＩドライバ１１０７上で動作するｉＳＣＳＩイニシエータ１１０８を有しており、ポート１１０９およびＩＰネットワークの回線１２００によってユーザサイト１２０１に接続される。
【００１１】
ユーザサイトのＩＰネットワーク１２０１と管理者サイトのＩＰネットワーク１２０３は、ＩＰネットワークの回線１２０２によって接続される。ユーザサイトのＩＰネットワーク１２０１と、管理者サイトのＩＰネットワーク１２０３は、互いに異なるネットワークであっても良いし、同じネットワークであっても良い。また、ユーザサイトのＩＰネットワーク１２０１と管理者サイトのＩＰネットワーク１２０３とを、一つのＩＰネットワークで構成することもできる。
【００１２】
管理者サイトのＩＰネットワーク１２０３には、ストレージ装置１３００が接続され、ストレージ装置１３００は、バスＩＦ１３０５によって連結されたディスク１３０８、ＣＰＵ１３０６、メモリ１３１０を有しており、メモリ１３１０は、アクセス状態監視モジュール１３０９、セッション情報ファイル１３１１とスコープ定義ファイル１３１２を保持している。ＣＰＵ１３０６は、メモリ１３０９上のアクセス状態監視モジュール１３０９を起動して、セッション情報ファイル１３１１の監視とスコープ定義ファイル１３１２の更新を行い、アクセス状態の監視を行う。
【００１３】
ここで、スコープ定義とは、計算機がアクセスするストレージ装置のディスクリソースの範囲を示すものであり、スコープ定義ファイル１３１１とは、アクセス状態監視モジュール１３０９がセッション情報ファイル１３１０を監視する上で、ストレージ単位、ボリューム単位、ユーザ定義のグループ単位など、どの範囲でディスクリソースが開放されたときにｉＳＣＳＩマウント予約サーバ１６００に対してアクセス状態変化メッセージ１２０８を通知するか、といった監視ポリシーを定義するためのファイルである。
【００１４】
また、管理者サイトのＩＰネットワーク１２０３と接続するためのｉＳＣＳＩチャネルアダプタ１３０４は、ｉＳＣＳＩドライバ１３０２上で動作するｉＳＣＳＩターゲット１３０３を有しており、ポート１３０１およびＩＰネットワークの回線１２０４によって管理者サイトのＩＰネットワーク１２０３に接続される。
また、管理者サイトには、バックアップモジュール１４０１を備えたバックアップサーバ１４００と、ｉＳＣＳＩマウント予約サーバ１６００の操作端末となる管理者端末１５００が、ＩＰネットワークの回線１２０５、１２０６を介して接続されている。
【００１５】
また、管理者サイトには、ｉＳＣＳＩマウント予約サーバ１６００がＩＰネットワークの回線１２０７とポート１６０９により接続されている。ｉＳＣＳＩマウント予約サーバ１６００は、バスＩＦ１６０８によって連結されたディスク１６０７、ＣＰＵ１６０６、メモリ１６０２を有しており、メモリ１６０２は、ｉＳＣＳＩマウント予約モジュール１６０１、マウント予約リスト１６０３、アクセス状態リスト１６０４、優先度定義ファイル１６０５を保持している。ＣＰＵ１６０６は、メモリ１６０２上のｉＳＣＳＩマウント予約モジュール１６０１を起動して、アクセス状態リストの情報を読み書きし、マウント予約リスト１６０３の情報を読み書きして、マウント制御を行う。
【００１６】
ここで、ストレージ装置１３００のメモリ１３０９上で動作するアクセス状態監視モジュール１３０９は、ｉＳＣＳＩドライバ１３０２と通信することにより、常時あるいは定期的に最新のセッション情報を取得し、取得したセッション情報を元にして作成したセッション情報ファイル１３１０を常時あるいは定期的に監視し、セッション情報に変化が生じているか否かをチェックする。変化が生じていない間は何も実行せず、変化が生じた時点で、現在時刻とセッション情報とを含むアクセス状態変化メッセージ１２０８をｉＳＣＳＩマウント予約サーバ１６００に対して通知する。
【００１７】
本発明の実施例１では、ストレージセッションを解析した結果であるユーザのアクセス状態に変化が生じた場合においてのみ通知を行うため、ネットワークに対して与える管理用トラフィックの負荷を最小限に抑制することができる。
【００１８】
本発明の実施例１では、セッション情報１３１０およびスコープ定義ファイル１３１１がメモリ１３０９上にある場合を取り上げたが、セッション情報１３１０は、自マシンのメモリ１３０９上にあってもよいし、ディスク１３０８上にあってもよいし、ｉＳＣＳＩチャネルアダプタ１３０４上にあってもよい。
【００１９】
図２に、ストレージ装置１３００上で動作するアクセス状態監視モジュール１３０９のモジュール構成図を示す。アクセス状態監視モジュール１３０９は、ｉＳＣＳＩマウント予約サーバ１６００およびｉＳＣＳＩドライバ１３０２と通信可能な場所であれば、物理的な配置に制約はない。
アクセス状態監視モジュール１３０９は、状態変化判定部２２００、ｉＳＣＳＩマウント予約サーバ通信部２２０１、アクセス状態監視部２２０３から構成され、アクセス状態監視部２２０３が主体となって、一連のアクセス状態の監視処理を行う。
【００２０】
アクセス状態監視部２２０３は、常時あるいは定期的にｉＳＣＳＩドライバ１３０２と通信（処理２１０３）することにより取得したセッション情報を、セッション情報ファイル１３１０として保持し、現在通信中のｉＳＣＳＩセッションだけでなく、以前生成されたが現在は破棄されたｉＳＣＳＩセッションなども管理している（処理２１０４）。
【００２１】
図９に、セッション情報ファイルの例を示す。
このセッション情報ファイル１３１０は、セッション情報の最終更新時刻の情報と、アクセス元となるｉＳＣＳＩイニシエータの名前の情報と、アクセス先となるｉＳＣＳＩターゲットの名前の情報と、現在のセッション状態としてセッションが有効であるか無効であるかの情報と、ｉＳＣＳＩターゲットがアクセスするディスクリソースを一意に識別するための情報として、論理ユニット番号（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ：以下、ＬＵＮと表記）や、複数のＬＵＮをグルーピングしたものに対して割り当てられた識別子の情報から構成される。従って、１つのセッションに対して割り当てられるディスクリソースは、１つであっても複数であってもよい。
【００２２】
具体的には、ｉＳＣＳＩプロトコルにおいては、アクセス元となるｉＳＣＳＩイニシエータとアクセス先となるｉＳＣＳＩターゲットとの間のセッション状態を示すセッション識別情報（ＳＳＩＤ）が定義されており、ストレージセッション情報として、ストレージ装置をｉＳＣＳＩターゲットとするセッション識別情報（ＳＳＩＤ）を用いることができる。
即ち、ストレージ装置１３００内に設置されたアクセス状態監視モジュール１３０９内のアクセス状態監視部２２０３が、ストレージ装置１３００に設置されたｉＳＣＳＩチャネルアダプタ１３０４内のｉＳＣＳＩドライバ１３０２と常時あるいは定期的に通信して、ユーザ端末１１００に設置されたｉＳＣＳＩホストバスアダプタ１１０６内のｉＳＣＳＩイニシエータ１１０８と、ストレージ装置１３００に設置されたｉＳＣＳＩチャネルアダプタ１３０４内のｉＳＣＳＩイニシエータ１３０３(この場合は、ｉＳＣＳＩターゲットとなる)との間で生成されるセッション識別記号（ＳＳＩＤ）を、ストレージセッション情報として取得することができる。
【００２３】
なお、本発明の実施例１では、計算機とストレージ装置がｉＳＣＳＩプロトコルによりＩＰネットワーク接続する例が示されているが、ｉＳＣＳＩプロトコル以外のＩＰネットワークプロトコルを採用してＩＰ−ＳＡＮを構成した場合には、上記のｉＳＣＳＩプロトコルでのセッション情報（ＳＳＩＤ）に代えて、採用したＩＰネットワークプロトコルに対応したセッション情報をストレージセッション情報として用いることが可能である。
【００２４】
以上のように、本発明の実施例１では、ストレージセッション情報を計算機側ではなく、ストレージ装置側で取得することにより、集約されたストレージセッションを効率よく採取することができ、また管理システムを管理者サイトに集約することができ、ストレージセッション状態の取得手段として、処理の効率化とネットワーク負荷の最小化を実現する。
【００２５】
一方、アクセス状態監視部２２０３は、ｉＳＣＳＩマウント予約サーバ１６００から送られてきた最新のスコープ定義メッセージ２１００を、ｉＳＣＳＩマウント予約サーバ通信部２２０１を用いて受信し、この情報を元に、スコープ定義ファイル１３１１を生成し、新たなスコープ定義メッセージ２１００を受信する度に、スコープ定義ファイル１３１１を更新する。
【００２６】
また、アクセス状態監視部２２０３は、セッション情報ファイル１３１０の情報に変化が生じたか否かについて、状態変化判定部２２００を用いて判定を行い、以前のｉＳＣＳＩセッションに比べて変化が生じている場合は、ｉＳＣＳＩマウント予約サーバ通信部２２０１を用いて、ｉＳＣＳＩマウント予約サーバ１６００に対してアクセス状態変化メッセージ１２０８を送信する。
【００２７】
図３に、ｉＳＣＳＩマウント予約サーバ１６００上で動作するｉＳＣＳＩマウント予約モジュール１６０１の構成を表す各機能モジュール図を示す。ＩＰ−ＳＡＮ内の各装置と通信可能な場所であれば、物理的な配置に制約はない。
ｉＳＣＳＩマウント予約モジュール１６０１は、アクセス状態収集部３１００、管理サーバ通信部３１０１、マウント制御部３１０２、アクセス状態リスト管理部３１０３、マウント予約リスト管理部３１０４から構成される。以下、それぞれの機能モジュール毎にその特徴を述べる。
【００２８】
アクセス状態収集部３１００は、ストレージ装置１３００からのアクセス状態変化メッセージ１２０８を受信し、ユーザのアクセス状態の変化を取得して、これをマウント制御部３１０２に伝えるためのモジュールである。図１では、ストレージ装置を１台しか設置していないが、実際には複数台のストレージ装置から送られてきたメッセージを集約してマウント制御部３１０２にアクセス状態変化通知メッセージ３２００として伝える。
【００２９】
管理サーバ通信部３１０１は、管理サーバからのマウント要求メッセージ１２０９を受信し、管理サーバのＩＰアドレスあるいはホスト名の情報と、マウント要求を受信した時間およびマウントを実行したい時間の情報と共に、マウント制御部２１０２に対してマウント要求メッセージ３２０１を通知する。図１では、バックアップサーバを１台しか置いていないが、実際には複数台のバックアップサーバから送られてきたメッセージを集約してマウント制御部３１０２にマウント要求メッセージ３２０１として伝える。
【００３０】
マウント制御部３１０２は、アクセス状態収集部３１００からのアクセス状態変化通知メッセージ３２００、あるいは管理サーバ通信部３１０１からのマウント要求メッセージ３２０１を受信した事を契機として、必要に応じ、アクセス状態リストの情報を読み書きし、マウント予約リスト１６０３の情報を読み書きすることにより、ユーザからディスクリソースが開放された時点で、バックアップサーバ１４００からのマウント要求に対してマウント許可メッセージ１２１０を送信することによってマウントを許可するモジュールである。
【００３１】
マウント制御部３１０２に対して、アクセス状態収集部３１００からアクセス状態変化通知メッセージ３２００を受信した場合、アクセス状態リスト管理部３１０３に対してアクセス状態の変化内容をアクセス状態の変更命令３２０２として伝える。
これを受けたアクセス状態管理３１０３は、最新のアクセス状態に応じてアクセス状態リストの更新３２０５を行う。この際、アクセス状態が、アクセス中からアクセス停止に遷移した場合について、マウント制御部３１０２はマウント予約リスト管理部３１０４に対して予約内容の検索命令３２０３を出す。
【００３２】
マウント予約リスト管理部３１０４は、ユーザのアクセス状態が、アクセス中からアクセス停止に遷移したディスクリソースに対するマウント要求がマウント予約リスト１６０３に存在するか否か検索（３２０６）し、存在すれば、マウント制御部３１０２にその旨を応答する。これを受けたマウント制御部３１０２は、管理サーバ通信部３１０１を介してバックアップサーバ１４００に対して、マウント許可メッセージ１２１０を通知する。マウント許可メッセージ１２１０を受けたバックアップサーバ１４００は、目的のディスクリソースにマウント完了時点で、自動的にバックアップサービスを起動し、セカンダリストレージ装置１４００に対するバックアップ処理を実行する。
【００３３】
優先度定義ファイル管理部３１０５は、管理端末１５００からＧＵＩ提供部３１０６の提供するＧＵＩ画面から入力された優先度定義３２０８を、ＧＵＩ提供部３１０６を介して受信（処理３２１０）し、この内容に従って優先度定義ファイル１６０５を更新する。また、上記ＧＵＩを用いて、管理端末１５００からは最新の優先度定義を確認することができる。
【００３４】
スコープ設定部３１０７は、管理端末１５００からＧＵＩ提供部３１０６の提供するＧＵＩ画面から入力されたスコープ定義３２１２を、ＧＵＩ提供部３１０６を介して受信（処理３２０９）し、この情報に従ってスコープ定義メッセージ３２１１を生成し、ストレージ装置１３００に対して送信する。また、上記ＧＵＩを用いて、ストレージ装置に関するＩＰアドレスやホスト名などの固有情報を入力すれば、ストレージ装置毎の最新のスコープ定義を確認することができる。
【００３５】
図４に、アクセス状態監視モジュール１３０９の基本的な処理フローを示す。ストレージ装置１３００上でアクセス状態監視モジュール１３０９が起動（処理４０００）されると、マウント予約サーバ１６００およびｉＳＣＳＩドライバ１３０２との通信の可否をチェック（処理４００１）する。いずれかにアクセス不可である場合、ｉＳＣＳＩマウント予約サーバ１６００への障害通知を行う（処理４００８）と共に、アクセス状態監視モジュール１３０９を停止（処理４００９）する。処理４００１にて、アクセス可である場合、ｉＳＣＳＩセッションのセッション情報１３１０を取得（処理３００４）する。
【００３６】
アクセス状態監視モジュール１３０９は、取得したｉＳＣＳＩセッション情報１３１０内を検索し、ｉＳＣＳＩイニシエータ１１０８とｉＳＣＳＩターゲット１３０３との間で、現在ｉＳＣＳＩセッションが生成されているか否かをチェック（処理３００５）する。既にｉＳＣＳＩセッションが生成されていれば、アクセス状態をアクセス中とし（処理３００５）、未だｉＳＣＳＩセッションが生成されていなければ、アクセス状態はアクセス停止とする（処理３００６）。この際、直前のアクセス状態と比較して変化するか否かをチェック（処理３００７）し、変化しない場合は、そのまま処理３００４に戻って処理を継続し、変化する場合は、ｉＳＣＳＩマウント予約サーバ１６００に対して、変化後のアクセス状態を通知（処理３００８）し、処理３００４に戻って上記処理を継続する。
【００３７】
図５に、ｉＳＣＳＩマウント予約モジュール１６０１の基本的な処理フローを示す。ｉＳＣＳＩマウント予約サーバ１６００上で、ｉＳＣＳＩマウント予約モジュール１６０１が起動（処理５０００）されると、ストレージ装置１３００上のアクセス状態監視モジュール１３０９および他のサーバ（本実施例ではバックアップサーバ１４００との通信の可否をチェック（処理５００１）し、いずれかに通信不可である場合、ｉＳＣＳＩマウント予約モジュール１６０１を停止（処理５０１３）し、通信可である場合、アクセス状態監視モジュール１３０９からの通知がないかを確認し、通知がある場合はこれを受信（処理５００２）する。
【００３８】
本発明の実施例１ではアクセス状態監視モジュール１３０９からの通知を受信することによってアクセス状態の変化を取得しているが、ｉＳＣＳＩマウント予約モジュール１６０１が主体となって、ストレージ装置１３００に対して最新のセッション状態を定期的に取得にいってもよい。
【００３９】
但し、本発明の実施例１で取り上げたアクセス状態監視モジュール１３０９からの通知を受信する方法では、アクセス状態に変化が生じた場合において通知を行うため、ネットワークに対して与える負荷を最小限に抑制することができる。
【００４０】
アクセス状態変化の通知の有無に応じて（処理５００３）、通知があった場合は、アクセス状態リスト１６０４にその内容を反映（処理５００４）して、処理５００５へ進み、通知がなかった場合は、そのまま処理５００５へ進む。処理５００５では、管理サーバからのマウント要求メッセージ１２０９を受け付け、さらに、マウント要求の予約があるか否かを、マウント予約リストを検索（処理５００６）し、リアルタイムのマウント要求か、マウント予約リストの要求か、いずれかの要求が存在するか判定（処理５００７）し、存在した場合、マウント要求先のディスクはユーザアクセス中であるか否かをアクセス状態リストを検索することによってチェック（処理５００８）し、ユーザアクセス中である場合は、マウント処理は実行せず、管理サーバに対して直ちにマウント実行できないためマウント予約中である旨を伝えるメッセージを通知（処理５００８）し、マウント要求をマウント予約リスト１６０３に追加（処理５００９）して、処理５００２へ戻り、上記処理を続行する。
【００４１】
いずれのマウント要求も存在しない場合は、そのまま処理５００２に戻る。また、ユーザアクセス停止である場合は、管理サーバに対してマウント許可メッセージ１２１０を発行（処理５０１２）する。これを受けたバックアップサーバ１４００は、ストレージ装置１３００のディスク１３０８に対してマウント処理を行い、マウント処理が完了した時点で、ディスク１３０８からセカンダリストレージ装置１４００のディスク１５０１に対するバックアップ処理を実行する。
【００４２】
ｉＳＣＳＩマウント予約モジュール１６０１は、マウント許可メッセージ１２１０を発行すると共に、マウント予約リスト１６０３から許可を出したバックアップサーバ１４００の予約内容を削除する。
【００４３】
図６に各種ファイルのフォーマット例を示す。
６０００は、アクセス状態リストの例である。アクセス状態リスト６０００は、最終状態変化時刻カラム、ストレージ装置カラム、ディスクカラム、アクセス元カラム、アクセス状態カラムから成る。最終状態変化時刻カラムの情報は、アクセス状態監視モジュール１３０９がセッション情報１３１０から最後に状態変化を検出した時刻である。ストレージ装置カラムの情報は、ストレージ装置を一意に識別するための固有情報であり、ストレージ装置のＩＰアドレスでもホスト名でも良い。ディスクカラムの情報は、上記ストレージ装置内のディスクを一意に識別するための固有情報であり、物理ディスク番号であっても、論理ディスク番号であっても、物理あるいは論理ディスクをグルーピングしたものに付与される番号であってもよい。アクセス元カラムの情報は、アクセス元となるユーザ端末あるいは管理サーバあるいはストレージ装置のｉＳＣＳＩイニシエータの名前が入る。アクセス状態カラムの情報は、アクセス元装置が当ディスクリソースに対してアクセス中であるか、アクセス停止であるかを示す情報である。
【００４４】
６００１は、マウント予約リストの例である。マウント予約リスト６００１は、予約時刻カラム、マウント実行時刻カラム、ホストカラム、管理対象カラムから成る。予約時刻カラムの情報は、バックアップサーバ１４００など管理サーバが送信したマウント要求メッセージ１２０９をｉＳＣＳＩマウント予約サーバ１６００が受信した時刻である。マウント実行時刻カラムの情報は、バックアップサーバ１４００など管理サーバが実際にマウント処理を開始したい時刻である。
【００４５】
ホストカラムの情報は、バックアップサーバ１４００などホストを一意に識別するための情報であり、ホストのＩＰアドレスでもホスト名でも良い。管理対象カラムの情報は、管理対象となるディスクリソースを一意に識別するための情報であり、物理ディスク番号であっても、論理ディスク番号であっても、物理あるいは論理ディスクをグルーピングされるものに付与される番号であっても良い。
【００４６】
６００２は、優先度定義ファイルの例である。優先度定義ファイル６００２は、優先度カラムとホストカラムから成る。優先度カラムは、どのディスクに対する管理サービスの適用を優先するかを定義するカラムであり、例えば、この値が若い数字である程優先度が高い。ホストカラムの情報は、ユーザ端末あるいは管理サーバなど、あらゆるホストを一意に識別するための情報として、ＩＰアドレスでもホスト名でも良い。
【００４７】
次に、図６で示したファイルの実際の使われ方について、処理フローと照らし合わせながら、以下に述べる。
図５で示したｉＳＣＳＩマウント予約サーバ１６００の処理フローにおいて、ｉＳＣＳＩマウント予約サーバ１６００は、処理５００５にて管理サーバからのマウント要求を待つが、例えばこのときマウント要求が送られて来なかったとする。そこで、リアルタイムなマウント要求がなくとも、過去にマウント要求がなかったかどうかを調べるため、ｉＳＣＳＩマウント予約サーバ１６００は、処理５００６にてマウント予約リスト１６０３を検索した結果、図６に示すマウント予約リスト６００１に示す予約内容を取得したものとする。
【００４８】
マウント予約リスト６００１内で現在時刻ｔ１に実行されるよう予約された内容は２つある。１つ目は、時刻Ｔ１に予約され、バックアップサーバ１４００が時刻ｔ１に、ディスク１３０８に対してＩＰアドレスＤ．Ｅ．Ｆ．０を持つホストがマウントしたいという要求であり、２つ目は、時刻Ｔ２に予約され、ＩＰアドレス  Ｄ．Ｅ．Ｆ．１を持つホストが時刻ｔ１に、ディスク１３０８に対してマウントしたいという要求である。
【００４９】
ここで、ＩＰアドレスＤ．Ｅ．Ｆ．０を持つホストはバックアップサーバ１４００であり、ＩＰアドレスＤ．Ｅ．Ｆ．１を持つホストはこれ以外の何らかの管理サーバであるものとする。また、現在時刻がｔ１であり、時刻Ｔ２より時刻Ｔ１が過去であるものとする。前者の予約が後者の予約よりも先に予約されているため、予約時間を優先して前者の予約をマウント許可の候補とする。この場合、バックアップサーバ１４００のマウント要求を優先して、マウント許可の候補とする。
【００５０】
ここで、Ｔ１とＴ２が同時刻であった場合、管理者によって予め設定された優先度定義ファイル６００２に記述されたＩＰアドレスＤ．Ｅ．Ｆ．０を持つホストとＩＰアドレスＤ．Ｅ．Ｆ．１を持つホストの優先度を比較し、前者のホストの方が優先度が高いため、これをマウント許可の候補とする。この場合、ユーザ端末１１００のマウント要求を優先して、マウント許可の候補とする。
【００５１】
さらに、ｉＳＣＳＩマウント予約サーバ１６００は、マウント許可の候補としたホストが実際にディスクリソースにアクセス可能であるか否かを判定するため、マウント要求先のディスクがユーザアクセス中かどうかを処理５００８にてチェックする。この結果、例えば、図６のアクセス状態リスト６０００に示すようなアクセス状態を取得する。ここで、時刻Ｔ１よりＴ０が過去になるものとする。マウント許可の候補となっているバックアップサーバ１４００のアクセス先であるディスク１３０８は、マウントが実行されようとしている時刻Ｔ１よりも過去の時刻Ｔ０において、ユーザ端末１１００からのアクセスが停止し、現在はディスクリソースが開放されていることが分かる。これにより、ｉＳＣＳＩマウント予約サーバ１６００は、バックアップサーバ１４００に対して、マウント許可メッセージ１２１０を送信してディスク１３０８へのマウントを許可する。
ここまでは、管理サーバとしてバックアップサーバを用いた場合の例である。
【００５２】
次に、バックアップサーバに限らず、競合的にディスクリソースを共有するあらゆるホスト（ユーザ端末や管理サーバなど）に適用可能であり、以下に管理サーバとしてウィルスチェックサーバを適用した場合の例を示す。
【００５３】
管理サーバとして、ウィルスチェックサーバを用いた場合でも、図１におけるバックアップサーバ１４００がウィルスチェックサーバと入れ替わるだけであり、システムの基本構成は変わらない。また、マウント予約サーバ１６００の基本機能は、実際のユーザアクセス状態に応じて管理サーバにマウント許可を与えることであり、データフローおよび管理する情報なども変わらない。従って、バックアップサーバを用いた場合と同様、ユーザに影響を与えないタイミングで、ウィルスチェックサーバがストレージ装置１３００のいずれかのディスクにマウントし、ウィルスチェックサービスが実行される。
【００５４】
また、本発明の実施例１では、ユーザ端末とストレージ装置を直結する計算機システムの形態を取り扱ったが、本発明はあらゆる計算機システムの形態に適用可能であり、その１つとして、ディスクレスブレードを介する計算機システムにもそのまま適用可能であることを以下に述べる。
【００５５】
図１において、ユーザ端末１１００とストレージ装置１３００の間で、ユーザサイトのＩＰネットワーク１２０１部分にディスクレスブレードが接続されたシステム構成を想定する。通常このシステム構成において、ユーザ端末１１００とディスクレスブレードとの間ではＩＰプロトコルの通信が行われ、ディスクレスブレードとストレージ装置１３００の間ではｉＳＣＳＩプロトコルの通信が行われる。従って、先に説明したバックアップサーバを用いた実施例１におけるユーザ端末１１００が、ディスクレスブレードに相当する位置関係になるだけであり、基本的なシステム構成に変わりなく適用可能である。
【実施例２】
【００５６】
本発明の実施例２は、ユーザからの接続要求を受信したことを契機として、ユーザ端末に対して、既にマウント済みのディスクリソースを開放して、ユーザ端末にアクセスさせるものである。
管理サーバからのマウント要求よりもユーザ端末からのマウント要求を優先したい場合は、図６の優先度定義ファイル６００２に示すように、予めユーザ端末の優先度の方を高く設定しておく。
【００５７】
本発明の実施例２では、優先度定義ファイル６００２に示す優先度を用いて、例えば、管理サーバが既にマウント済で、何らかの管理サービスが実行中である場合であっても、マウント要求がユーザ端末１１００から送信されてきた際、ユーザ端末のマウント要求の優先度の方が高いため、ｉＳＣＳＩマウント予約モジュール１６０１は、管理サーバに対して、アンマウント要求の旨を伝えるメッセージを送信する。同時に、ユーザ端末１１００へのマウント許可メッセージ１２１０を送信して、ユーザ端末１１００とストレージ装置１３００のマウントを復帰させる。
【００５８】
これにより、ユーザがストレージ装置にアクセスしないタイミングにおいて、管理者サイトのＩＰネットワーク１２０３で管理サービスを実行し、ユーザからのマウント要求時には、管理サーバ側をアンマウントして、ユーザ側のマウントを復帰できるため、ユーザに影響を与えずに、管理サービスを実行することが可能である。
【００５９】
これにより、マウント状態を正確かつリアルタイムに監視することができ、バックアップサービスやウィルスチェックサービスなどの定常的な運用管理サービスを効率よく実施することが可能となる。また、ディスクやストレージ装置の交換など、メンテナンス作業において、確実にユーザアクセスに影響を与えないタイミングで作業開始することが可能となる。
【実施例３】
【００６０】
本発明の実施例３は、ストレージ装置１３００以外にも、図７に示すように、ストレージ装置７１００など複数台のストレージ装置が管理者サイトのＩＰネットワーク１２０３に接続されている場合に、スコープ定義ファイル１３１１を用いてアクセス状態の監視を行うものである。
【００６１】
ここで、スコープ定義ファイル１３１１は、図８に示すような様々な視点で定義することができる。
スコープ定義ファイル８０００では、ストレージ装置１３００内のディスク１３０８、７０００、７００１を１つのディスクリソースのグループとして定義している。別のスコープ定義ファイル８００１では、ストレージ装置７１００内のディスク７１０１、７１０２を１つのディスクリソースのグループとして定義している。
【００６２】
また別のスコープ定義ファイル８００２では、ストレージ装置１３００、７１００を１つのディスクリソースのグループとして定義している。各スコープ定義ファイルには、スコープの定義だけでなく、そのスコープの構成要素である個々のディスクリソースが開放されているか、占有されているか、といったリソース開放状態の情報を持っている。
スコープ定義ファイルは、このリソース開放状態の情報と共に、ストレージ装置とディスクの対応関係、さらに、ディスクと論理ボリューム（以下、ＬＵと記述）の対応関係も記述することができる。
リソースの単位には、スコープ８００２のように、ＬＵもディスクも含めたストレージ装置の単位や、スコープ８０００やスコープ８００１のように、ＬＵを含めたディスク単位や、スコープ８００３のように、ディスクの構成要素として、ＬＵ単位があり、スコープ定義ファイルは、これら任意の単位で定義することができる。スコープ定義ファイルにおけるリソース開放状態は、リソースの最小単位について保持する。
アクセス状態監視モジュール１３０９は、ホスト計算機からアクセスしてくる単位と、監視対象の単位が異なる場合、スコープ定義ファイルに定義されているリソースの最小単位を参照する。スコープ定義ファイル８００３の例の場合、リソースの最小単位は、ＬＵとなる。この最小単位のリソース全てが占有あるいは開放された時点で、開放状態を占有あるいは開放に切り替える処理を行う。これにより、例えば、ユーザアクセスの単位がＬＵ単位で、監視の単位がディスク単位であったとしても、監視対象のディスクに含まれる全てのＬＵが開放された時点で、リソース開放とみなすため、正しいストレージアクセス管理が行われる。
【００６３】
アクセス状態監視モジュール１３０９、７１０４は、スコープ定義ファイル８０００、８００１、８００２のうちいずれの定義がなされた場合であっても、スコープが他のストレージ装置をまたぐ定義になっているか否かを確認し、もし他のストレージ装置をまたぐ定義になっている場合、各ストレージ装置に配置されたアクセス状態監視モジュール１３０９、７１０４は、互いに管理者サイトのＩＰネットワーク１２０３を介して通信を行い、常に、あるいは定期的にスコープ定義ファイルの情報を交換して、ディスクリソースのグループ全体で開放状態を最新に保つ。
【００６４】
スコープとして定義されたディスクリソースの全ての要素がリソース開放された場合においてのみ、アクセス状態監視モジュール１３０９は、ｉＳＣＳＩマウント予約サーバ１６００に対してアクセス状態変化メッセージ１２０８を通知する。
尚、実際にアクセス状態変化メッセージ１２０８を通知するのは、複数個設置されたアクセス状態監視モジュールのうち、最後にリソース全体の開放を検知したアクセス状態監視モジュール１３０９が通知するものとする。
【００６５】
これにより、全てのアクセス状態の変化について、アクセス状態変化メッセージ１２０８を通知するのではなく、予めスコープとして定めておいたディスクリソースのグループ全体がリソース開放された時点でアクセス状態変化メッセージ１２０８を通知することができ、ネットワークに対して与える管理用トラフィックの負荷を最小限に抑制することができる。
【図面の簡単な説明】
【００６６】
【図１】本発明の実施例１におけるＩＰ−ＳＡＮのシステム構成図である。
【図２】本発明の実施例１におけるアクセス状態監視モジュールの機能モジュール図である。
【図３】本発明の実施例１におけるｉＳＣＳＩマウント予約モジュールの機能モジュール図である。
【図４】本発明の実施例１におけるアクセス状態監視モジュールの処理フローである。
【図５】本発明の実施例１におけるｉＳＣＳＩマウント予約モジュールの処理フローである。
【図６】本発明の実施例１における各種ファイルの例である。
【図７】本発明の実施例３におけるスコープの概念図である。
【図８】本発明の実施例３におけるスコープ定義ファイルの例である。
【図９】本発明の実施例１におけるセッション情報ファイルの例である。
【符号の説明】
【００６７】
１１００    ユーザ端末
１１０１    ユーザ端末のディスク
１１０２    ユーザ端末のバスＩＦ
１１０３    ユーザ端末のＣＰＵ
１１０４    ユーザ端末のメモリ
１１０５    ユーザ端末のアプリケーション
１１０６    ユーザ端末のｉＳＣＳＩホストバスアダプタ
１１０７    ユーザ端末のｉＳＣＳＩドライバ
１１０８    ユーザ端末のｉＳＣＳＩイニシエータ
１１０９    ユーザ端末の物理ポート
１２００    ＩＰネットワーク（ネットワーク回線）
１２０１    ＩＰネットワーク（ユーザサイト）
１２０２    ＩＰネットワーク（ネットワーク回線）
１２０３    ＩＰネットワーク（管理者サイト）
１２０４    ＩＰネットワーク（ネットワーク回線）
１２０５    ＩＰネットワーク（ネットワーク回線）
１２０６    ＩＰネットワーク（ネットワーク回線）
１２０７    ＩＰネットワーク（ネットワーク回線）
１２０８    アクセス状態変化メッセージ
１２０９    マウント要求メッセージ
１２１０    マウント許可メッセージ
１３００    ストレージ装置
１３０１    ストレージ装置のポート
１３０２    ストレージ装置のｉＳＣＳＩドライバ
１３０３    ストレージ装置のｉＳＣＳＩイニシエータ
１３０４    ストレージ装置のｉＳＣＳＩチャネルアダプタ
１３０５    ストレージ装置のホストバスアダプタ
１３０６    ストレージ装置のＣＰＵ
１３０８    ストレージ装置のディスク
１３０９    ストレージ装置のアクセス状態監視モジュール
１３１０    ストレージ装置のメモリ
１３１１    ストレージ装置のセッション情報ファイル
１３１２    ストレージ装置のスコープ定義ファイル
１４００    バックアップサーバ
１４０１    バックアップサーバのバックアップモジュール
１５００    管理者端末
１６００    ｉＳＣＳＩマウント予約サーバ
１６０１    ｉＳＣＳＩマウント予約サーバのｉＳＣＳＩマウント予約モジュール
１６０２    ｉＳＣＳＩマウント予約サーバのメモリ
１６０３    ｉＳＣＳＩマウント予約サーバのマウント予約リスト
１６０４    ｉＳＣＳＩマウント予約サーバのアクセス状態リスト
１６０５    ｉＳＣＳＩマウント予約サーバの優先度定義ファイル
１６０６    ｉＳＣＳＩマウント予約サーバのＣＰＵ
１６０７    ｉＳＣＳＩマウント予約サーバのディスク
１６０８    ｉＳＣＳＩマウント予約サーバのバスＩＦ
１６０９    ｉＳＣＳＩマウント予約サーバのポート
【図１】
0004566874.tif 000002
【図２】
0004566874.tif 000003
【図３】
0004566874.tif 000004
【図４】
0004566874.tif 000005
【図５】
0004566874.tif 000006
【図６】
0004566874.tif 000007
【図７】
0004566874.tif 000008
【図８】
0004566874.tif 000009
【図９】
0004566874.tif 000010