(57)【特許請求の範囲】
【請求項１】
各々独立したオペレーティングシステムが走行する複数のコンピュータと、前記複数のコンピュータとネットワークで接続され、ディスクボリュームを有するディスクサブシステムとを含む計算機システムにおけるディスクボリューム管理方法であって、
前記各コンピュータは、前記ネットワークを介して前記ディスクサブシステムの前記ディスクボリュームへアクセスし、マウント操作によって、当該コンピュータがその後アクセスする前記ディスクボリュームに対応するデバイスファイル名を割り当て、
前記各コンピュータは、前記ディスクサブシステムに、前記ディスクサブシステムの前記ディスクボリュームを指定して、当該コンピュータ名、当該ディスクボリュームに対応付けられたデバイスファイル名、及び、これらを前記ディスクサブシステムが有するメモリに登録することを前記ディスクサブシステムに指示するコマンドを、前記ネットワークを介して送信し、
前記ディスクサブシステムは、前記コマンドを受信し、指定された前記ディスクボリュームと、前記コマンド内の前記コンピュータ名と、及び、前記コマンド内の前記デバイスファイル名とを対応付けたボリュームを管理するための第一情報を前記メモリに記録し、
前記ディスクサブシステムは、当該ディスクサブシステムに接続される管理装置からの要求に応じ、前記第一情報を前記管理装置に返送することを特徴とするディスクボリューム管理方法。
【請求項２】
請求項１記載のディスクボリューム管理方法であって、更に、
前記ディスクサブシステムは、前記ディスクボリュームと対応して当該ディスクボリュームに対応するアクセス頻度を表す第二情報を前記メモリに格納し、
前記管理装置は、前記メモリに格納された第一情報と、前記第二情報とを用い、負荷の高いボリュームを使用しているコンピュータ名と、そのコンピュータ上でボリュームに割り当てられたデバイスファイル名を取得することを特徴とするディスクボリューム管理方法。
【請求項３】
各々独立したオペレーティングシステムが走行する複数のコンピュータと、前記複数のコンピュータとネットワークで接続され、ディスクボリュームを有するディスクサブシステムとを含む計算機システムであって、
前記各コンピュータは、前記ネットワークを介して前記ディスクサブシステムの前記ディスクボリュームへアクセスし、マウント操作によって、当該コンピュータがその後アクセスする前記ディスクボリュームに対応するデバイスファイル名を割り当てる手段と、前記ディスクサブシステムに、前記ディスクサブシステムの前記ディスクボリュームを指定して、当該コンピュータ名、当該ディスクボリュームに対応付けられたデバイスファイル名、及び、これらを前記ディスクサブシステムが有するメモリに登録することを前記ディスクサブシステムに指示するコマンドを、前記ネットワークを介して送信する手段とを有し、
前記ディスクサブシステムは、前記コマンドを受信し、指定された前記ディスクボリュームと、前記コマンド内の前記コンピュータ名と、及び、前記コマンド内の前記デバイスファイル名とを対応付けたボリュームを管理するための第一情報を前記メモリに記録する手段と、当該ディスクサブシステムに接続される管理装置からの要求に応じ、前記第一情報を前記管理装置に返送する手段とを有することを特徴とする計算機システム。
【請求項４】
請求項３記載の計算機システムであって、更に、
前記ディスクサブシステムは、前記ディスクボリュームと対応して当該ディスクボリュームに対応するアクセス頻度を表す第二情報を前記メモリに格納する手段を有し、
前記管理装置は、前記メモリに格納された第一情報と、前記第二情報とを用い、負荷の高いボリュームを使用しているコンピュータ名と、そのコンピュータ上でボリュームに割り当てられたデバイスファイル名を取得する手段を有することを特徴とする計算機システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディスクボリュームを管理するコンピュータシステムに係わり、特にディスクボリュームに関する情報をディスクサブシステム内で管理する方法及びその装置に関する。
【０００２】
【従来の技術】
コンピュータでディスクボリュームを認識し、使用する際に、オペレーティングシステム（ＯＳ）やアプリケーションプログラムは各論理ボリュームを管理するために様々な情報を生成する。例えばいくつかの既存のオペレーティングシステムは、ディスクボリュームに対して「デバイスファイル」を割り当て、各デバイスをファイルとして管理する。これによりアプリケーションプログラムは、デバイスファイルにアクセスすることにより、ディスクボリュームにアクセスできる。
【０００３】
このようにあるコンピュータがディスクボリュームごとに割り当てた情報を、別のコンピュータから知りたい場合がある。例えば性能チューニングの目的で、ディスクアレイ管理用コンピュータにおいて、アクセス負荷の高いボリュームとそのボリュームを使用しているコンピュータを調査する場合、まずディスクアレイ管理プログラムでディスクアレイのアクセス統計情報を参照し、負荷の高いボリュームをボリューム番号により特定する。管理者は、ボリューム番号とそのボリュームを使用しているコンピュータおよびデバイスファイル名の対応表をあらかじめ作成しておくことにより、負荷の高いボリュームを使用しているコンピュータとそのデバイスファイル名を知ることができる。
【０００４】
【発明が解決しようとする課題】
前述の方法では、ボリューム番号とそれを使用しているコンピュータおよびデバイスファイル名の対応表を管理者が作成するため、ボリュームとコンピュータとの間に介在するインタフェース、スイッチなどの物理的な接続関係や、各オペレーティングシステムによるデバイスファイルの割り当て方法に関する知識が必要である。このような接続関係が複雑な大規模システムや、異なるオペレーティングシステムが混在する環境では管理者の負担が大きくなり、対応表の設定誤りが発生しやすい。
【０００５】
本発明の目的は、各ディスクボリュームに対応して各コンピュータが識別する論理情報を、コンピュータから参照可能なようにディスクサブシステム内に設定する方法及びそのようなディスクサブシステムを提供することにある。
【０００６】
【課題を解決するための手段】
本発明は、各々独立したオペレーティングシステムが走行する複数のコンピュータとディスクボリュームを制御するディスクサブシステムとを含む計算機システムに関して、各コンピュータがディスクボリュームと対応して識別する論理情報とディスクボリュームとを一元的に対応づける方法であって、上記コンピュータの各々からディスクボリュームと対応して論理情報をディスクサブシステムへ送信し、ディスクサブシステムによって指定されたディスクボリュームと対応して受信した論理情報を記憶手段に格納するディスクボリューム管理方法を特徴とする。またこのような論理情報を保持するディスクサブシスムを特徴とする。
【０００７】
【発明の実施の形態】
本実施形態は、ディスクアレイ管理用コンピュータから各ディスクボリュームの負荷情報を参照し、負荷の高いボリュームを使用しているコンピュータ名と、そのコンピュータ上でボリュームに割り当てられたデバイスファイル名を取得する例である。
(1)システム構成の説明
図1に本実施形態の全体構成を示す。2台のコンピュータ100, 110が、ファイバチャネルケーブル131, 132, 133およびファイバチャネル（ＦＣ）スイッチ130を介してディスクアレイ140のファイバチャネルインタフェース（ＦＣＩ／Ｆ）141に接続されている。コンピュータ100, 110は、それぞれボリューム情報更新プログラム101, 111を実行する。またディスクアレイ管理コンソール120はLANケーブル134を介してディスクアレイ140のLANインタフェース（ＬＡＮＩ／Ｆ）142に接続されている。ディスクアレイ管理コンソール120は、ディスクアレイ管理プログラム121を実行する。
【０００８】
ディスクアレイ140内には、ディスクコントローラ145によって制御される論理的なディスク146, 147, 148があり、それぞれの記憶領域をボリューム150,151,152としてコンピュータに提供する。メモリ144には、CPU143によって実行されるディスクアレイ制御プログラム161があり、ディスクアレイ全体の動作を制御する。またディスクアレイ140がボリュームを管理するための情報、およびそのボリュームを認識するコンピュータ名とデバイスファイル名を記録するボリューム管理表162をメモリ144内に持つ。なおディスクアレイ140は、一般的にはディスク制御装置又はディスクサブシステムでもよい。
【０００９】
ボリューム管理表162の構成を図2に示す。各ボリュームは、ボリューム番号201であらわされ、それぞれのボリュームへのアクセス頻度に応じて負荷情報202が記録されている。ディスクアレイ140内のプログラムは、各ボリューム150,151,152に対して行われる読み／書きの回数を計数し、負荷情報202に格納する。高中低は、このアクセス回数またはアクセス頻度を区分する情報である。さらにコンピュータから登録される情報を記録するエントリ(203,204)を持つ。これらのエントリは、登録数に応じて増減するリンクリストなどによって構成できる。各エントリは、そのボリュームに接続するコンピュータの識別子であるコンピュータ名と与えられた論理デバイス名であるデバイスファイル名を格納する。デバイスファイルは、各論理ボリュームに１対１に対応し、各コンピュータのＯＳが認識するボリュームの識別名に相当する。図２の例では、ボリューム151がコンピュータ100,110によって共用されることを示している。
(2) コンピュータからの情報の登録・削除
コンピュータ101,111が電源オンされると各々のＯＳが立ち上がり、接続されているボリュームにアクセスを試行してボリューム管理テーブルを作成し、マウント操作によって各ボリュームにデバイスファイルを割り当てる。次にボリューム情報更新プログラム101,111が実行され、ディスクアレイ140にコンピュータ名とディバイスファイル名から成るエントリを登録する。ボリューム情報更新プログラム101,111は、ＯＳの一部又はアプリケーションプログラムであり、コンピュータ稼動中のマウント操作に伴い管理者によって手動で起動される。ただしデバイスファイルの作成作業の後にボリューム情報更新プログラム101,111を実行するスクリプトプログラムを用意しておくことにより、デバイスファイル作成と連動して自動的に実行することも可能である。
【００１０】
ボリューム情報更新プログラム101,111の処理について図3のフローチャートで説明する。プログラムを起動すると、まずステップ301でコマンドにより登録対象のデバイスファイルのリストが入力される。コンピュータ名とデバイスファイル名をディスクアレイ140に送るためには、SCSI Mode Selectコマンドを利用する。Mode Selectのベンダ固有ページに、コンピュータ名、デバイスファイル名、およびそれらを登録することをディスクアレイに指示するためのコマンドをエントリし、対象とするディスクボリュームに発行する(ステップ301)。Mode Selectコマンドを発行するためには、まず登録対象であるディスクボリュームに割り当てられたデバイスファイルをオープンする(ステップ303)。このデバイスファイルはMode Selectページにエントリされたデバイスファイルと同一である。次にそのデバイスファイルに対して登録情報を含むMode Selectコマンドを発行する(ステップ304)。Mode Selectコマンドは、例えばioctl()システムコールにより発行する。コマンドを発行した後にデバイスファイルをクローズする(ステップ305)。この処理(ステップ303から305)を登録する全てのデバイスファイルについて繰り返す。リスト中の全てのデバイスファイルについて登録が終わったとき(ステップ302Yes)、プログラムを終了する。
【００１１】
登録した情報を削除する場合は、削除することをディスクアレイ140に指示するためのコマンドをMode Selectコマンドにエントリし、上記と同様に対象ディスクボリュームに発行する。
【００１２】
図３において、Mode Selectコマンドを発行する前にそのディスクボリュームがボリューム管理表162を備えたディスクアレイ140上にあることを確認し、管理表を持たないディスクアレイや単体ディスクであった場合はただちにステップ305に進むことにより、エラーステータスの受信を避けることもできる。管理表を持つかどうかは、例えばSCSI Inquiryコマンドで得られるディスクアレイの製品番号等により確認できる。
(3) ディスクアレイ内の登録情報管理
コンピュータから情報の登録を指示するMode Selectコマンドを受信したディスクアレイ140の処理について図4のフローチャートで説明する。コマンドを受信すると(ステップ400)、ディスクアレイ制御プログラム161はベンダ固有ページからコンピュータ名とデバイスファイル名を取得する(ステップ401)。次に登録対象のディスクボリューム、すなわちコマンドの宛て先となっていたディスクボリュームをボリューム管理表162から探す(ステップ402)。既に登録内容と同じエントリが表中に存在するとき(ステップ403)、エラーステータスを返送して終了する(ステップ405)。もし該当するエントリがなければ、新たにエントリを作成しコンピュータ名とデバイスファイル名を記録する(ステップ404)。図2は、コンピュータ100がボリューム150,151をそれぞれ/dev/rdsk/XXXX,/dev/rdsk/YYYYのデバイスファイル名で認識し（その管理下に置き）、コンピュータ110が、ボリューム151, 152を/dev/rhdiskB, /dev/rhdiskAのデバイスファイル名で認識している状態を表す。
【００１３】
受信したMode Selectコマンドが情報の削除を指示するものであれば、上記と同様にボリュームをボリューム管理表から探し、該当する情報を削除する。存在しない情報の削除を指示された場合は、エラーステータスを返す。
(4) 登録情報の参照
ディスクアレイ管理コンソール120上で動作するディスクアレイ管理プログラム121は、ディスクアレイ140の構成定義や状態監視を行う。各ディスクボリュームの負荷情報を表示するためには、管理者がディスクアレイ管理プログラム121によりLAN経由でディスクアレイ140に対し、アクセス統計情報を要求する。要求を受信すると、ディスクアレイ140内のディスクアレイ制御プログラム161はボリューム管理表162に記録された情報を返送する。これらの情報の送受信は、既存のディスクアレイの構成定義や状態参照と同様の通信プロトコルにより実現できる。
(5) 登録情報の整合性
コンピュータの移設等の変更が発生した場合は、以前登録した情報を事前に削除する必要がある。しかし削除のし忘れや誤操作により、あるコンピュータに関する登録情報に不整合が発生した場合は、まずコンピュータに関する情報をすべて削除し、次にすべてのディスクボリュームについて再登録を行う。あるコンピュータに関する情報をすべて削除するコマンドを定義しておき、Mode Selectコマンドでそのコマンドとコンピュータ名をディスクアレイに送信する。ディスクアレイは、指定されたコンピュータ名を含むエントリをボリューム管理表162からすべて削除する。これにより任意のタイミングで登録情報の整合性を保証することができる。
(6)実施形態の効果
ディスクアレイ管理コンソール120上で参照できる従来のディスクボリュームの情報、すなわちサイズ、冗長度、ディスクの位置などディスクアレイ140内部の物理的な情報に加え、コンピュータがボリュームに付加した論理的な情報(コンピュータ名、デバイスファイル名)を統合して閲覧できる。これにより負荷の高いディスクボリュームを特定することができる。
【００１４】
本実施形態では、ボリューム管理表162に記録される情報はコンピュータ名とデバイスファイル名であったが、コンピュータ上でボリュームをオープンしたプロセスのID等の他の情報も登録しておくことにより、ディスクアレイ管理コンソール上において高負荷の原因をより詳しく特定することも可能である。
【００１５】
さらに例えばディスクアレイ140が2つのディスクボリューム間でデータを同期するミラー機能を備えている場合に、ボリユーム番号201に対応してミラー相手ボリュームのボリューム番号を登録しておくことにより、あるボリュームのミラー相手ボリュームに関する情報を参照することができる。２つのディスクボリュームをミラー機能利用により使用した後にミラー機能を解除して別々のボリュームとして使用し、さらにミラー機能利用に戻るに際して、ミラー相手ボリュームがどのコンピュータのどのようなデバイスファイル名でどのプロセスが使用しているかなどの情報を得ることができ、これらの情報に基づいてミラー相手ボリュームが使用済であることを検出した後にミラー機能に戻ることができる。
【００１６】
本実施形態において登録情報はLAN経由で参照したが、登録処理と同様にSCSI コマンド、例えばMode Senseコマンドにより参照することも可能である。登録に関してもMode Selectコマンドに限らずLAN経由で行うことも可能である。その場合、コンピュータ名・デバイスファイル名とともに登録対象のボリューム番号を送信する必要がある。コンピュータ上でディスクボリュームのボリューム番号を得るためには、例えば標準SCSI Inquiryコマンドに定義されているdevice identificationページを利用することができる。
【００１７】
【発明の効果】
以上述べたように本発明によれば、ディスクサブシステム内のディスクボリュームに関する物理的な情報とともに、それらのディスクボリュームを利用するコンピュータによって生成される論理的な情報をディスクサブシステム内で一元的に管理することができる。これにより管理者が手動で論理情報を管理することなく、ディスクサブシステムに接続する複数のコンピュータ間でそれぞれが生成した論理情報を互いに参照することが可能となり、システムの管理コストおよび論理情報を利用する管理表の設定誤りを低減できる。
【図面の簡単な説明】
【図１】実施形態のシステム構成図である。
【図２】実施形態のボリューム管理表の構成を示す図である。
【図３】実施形態のコンピュータの情報登録処理のフローチャートである。
【図４】実施形態のディスクアレイの情報登録処理のフローチャートである。
【符号の説明】
100：コンピュータ、101：ボリューム情報更新プログラム、120：ディスクアレイ管理コンソール、121：ディスクアレイ管理プログラム、140：ディスクアレイ、150,151,152：ボリューム、161：ディスクアレイ制御プログラム、162：ボリューム管理表
【図１】
0004090216.tif 000002
【図２】
0004090216.tif 000003
【図３】
0004090216.tif 000004
【図４】
0004090216.tif 000005