(57)【要約】【課題】一つの論理ディスクに複数の仮想マシンが存在するといった場合でも、ストレージ装置の最適パスの管理が行える、ストレージ装置の制御装置、ストレージ装置の制御方法、およびストレージ装置の制御プログラムを提供する。【解決手段】ストレージ装置は、エクステントごとにホスト識別子およびマスタとなるコントローラを管理するエクステント管理テーブルと、仮想マシンからのアクセスに応じて、上記エクステントごとに上記マスタとなるコントローラの切り替えを行うマスタ切り替え制御手段と、を含む。【選択図】      図１
2017151858.tif 000002
【特許請求の範囲】
【請求項１】
エクステントごとにホスト識別子およびマスタとなるコントローラを管理するエクステント管理テーブルと、仮想マシンからのアクセスに応じて、前記エクステントごとに前記マスタとなるコントローラの切り替えを行うマスタ切り替え制御手段と、を含むストレージ装置の制御装置。
【請求項２】
前記エクステント管理テーブルは、前記エクステントごとに前記ホスト識別子、前記マスタとなるコントローラのコントローラ番号、およびパスアクセス回数を管理する、請求項１に記載のストレージ装置の制御装置。
【請求項３】
前記パスアクセス回数が第１閾値を超えており、かつ前記第１閾値を超えていた前記パスアクセス回数が該当するパスが接続されているコントローラと、前記マスタとなるコントローラとが異なっているときに、前記マスタとなるコントローラの切り替えを行う、請求項２に記載のストレージ装置の制御装置。
【請求項４】
前記パスアクセス回数が前記第１閾値を超えており、かつ前記第１閾値を超えていた前記パスアクセス回数が該当するパスが接続されているコントローラと、前記マスタとなるコントローラとが異なっており、前記パスアクセス回数が第２閾値を超えていないときに、前記マスタとなるコントローラの切り替えを行う、請求項３に記載のストレージ装置の制御装置。
【請求項５】
前記マスタとなるコントローラを複数含み、
前記マスタとなるコントローラは仮想マシン環境が構築される複数のホスト装置にそれぞれ接続されている、請求項１乃至請求項４のいずれか一項に記載のストレージ装置の制御装置。
【請求項６】
請求項１乃至請求項５のいずれか一項に記載のストレージ装置の制御装置を含む、ストレージ装置。
【請求項７】
エクステントごとにホスト識別子およびマスタとなるコントローラの関連付けを保持し、
仮想マシンからのアクセスに応じて、前記関連付けに基づいて前記エクステントごとに前記マスタとなるコントローラの切り替えを行う、ストレージ装置の制御方法。
【請求項８】
前記エクステントごとに前記ホスト識別子、前記マスタとなるコントローラのコントローラ番号、およびパスアクセス回数の関連付けを保持する、請求項７に記載のストレージ装置の制御方法。
【請求項９】
前記パスアクセス回数が第１閾値を超えており、かつ前記第１閾値を超えていた前記パスアクセス回数が該当するパスが接続されているコントローラと、前記マスタとなるコントローラとが異なっているときに、前記マスタとなるコントローラの切り替えを行う、請求項８に記載のストレージ装置の制御方法。
【請求項１０】
コンピュータに、
エクステントごとにホスト識別子およびマスタとなるコントローラを管理するエクステント管理テーブルを参照する参照処理と、
仮想マシンからのアクセスに応じて、前記エクステントごとに前記マスタとなるコントローラの切り替えを行うマスタ切り替え処理とを実行させる、ストレージ装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置の制御装置、ストレージ装置の制御方法、およびストレージ装置の制御プログラムに関し、特にディスクアレイ装置の接続経路の制御や管理に関する。
【背景技術】
【０００２】
ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）のような記憶装置を複数備え、アレイを構成しているディスクアレイ装置がある。このようなディスクアレイ装置においては、アレイの物理領域をエクステント（物理エクステント）という一定サイズに区切って管理し、論理ボリュームへのライトアクセスの際に、その物理エクステントを仮想的に割り当てる。物理エクステントの割り当ては、ホスト装置からの書き込み（データライト）を契機に行われる。
【０００３】
図１１は、物理エクステントの割り当てのイメージを示す図である。また、不要となった物理エクステントの解放は、ホスト装置からの解放コマンド（例えば、ＳＣＳＩ（Small Computer System Interface）コマンドのＵＮＭＡＰコマンド（アンマップコマンド））により行われる。
【０００４】
特許文献１はクラスタ型のストレージ装置の消費電力削減に関するものであり、ディスク装置に対するアクセス数が所定の閾値の範囲外の場合、論理ボリュームのデータへのアクセスを制御するストレージコントローラを変更することが提案されている。例えば、ディスク装置に対するアクセス数が少ないときは、一つのストレージコントローラを停止させ、ストレージコントローラを変更し、論理ボリュームのアクティブパスを変更することが提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−１３４５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した特許文献１のストレージ装置では、一つの論理ディスクに複数の仮想マシンが存在する場合には、対応できない。
【０００７】
本発明の目的は、一つの論理ディスクに複数の仮想マシンが存在するといった場合でも、ストレージ装置の最適パスの管理が行える、ストレージ装置の制御装置、ストレージ装置の制御方法、およびストレージ装置の制御プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
前記目的を達成するため、本発明に係るストレージ装置の制御装置は、エクステントごとにホスト識別子およびマスタとなるコントローラを管理するエクステント管理テーブルと、仮想マシンからのアクセスに応じて、上記エクステントごとに上記マスタとなるコントローラの切り替えを行うマスタ切り替え制御手段と、を含む。
【０００９】
本発明に係るストレージ装置の制御方法は、エクステントごとにホスト識別子およびマスタとなるコントローラの関連付けを保持し、仮想マシンからのアクセスに応じて、上記関連付けに基づいて上記エクステントごとに上記マスタとなるコントローラの切り替えを行う。
【００１０】
本発明に係るストレージ装置の制御プログラムは、コンピュータに、エクステントごとにホスト識別子およびマスタとなるコントローラを管理するエクステント管理テーブルを参照する参照処理と、仮想マシンからのアクセスに応じて、上記エクステントごとに上記マスタとなるコントローラの切り替えを行うマスタ切り替え処理と、を実行させる。
【発明の効果】
【００１１】
本発明によれば、一つの論理ディスクに複数の仮想マシンが存在するといった場合でも、ストレージ装置の最適パスの管理を行うことができる。
【図面の簡単な説明】
【００１２】
【図１】（ａ）は本発明の最上位概念の実施形態による制御装置を説明するためのブロック図であり、（ｂ）は（ａ）の制御装置を用いたディスクアレイ装置を説明するためのブロック図である。
【図２】本発明の一実施形態によるディスクアレイ装置を用いたシステムの構成を説明するためのブロック図である。
【図３】本発明の一実施形態のエクステント管理テーブルの一例を示す図である。
【図４】本発明の一実施形態によるディスクアレイ装置で、ＶＭのデータをＬＤに格納する場合の処理を説明するためのフローチャートである。
【図５】本発明の一実施形態のエクステント管理テーブルの一例を示す図である。
【図６】本発明の一実施形態によるディスクアレイ装置の仮想マシンの移動を説明するためのブロック図である。
【図７】本発明の一実施形態によるディスクアレイ装置で、ＶＭがホスト装置間で移動した場合の処理を説明するためのフローチャートである。
【図８】本発明の一実施形態のエクステント管理テーブルの一例を示す図である。
【図９】本発明の一実施形態のエクステント管理テーブルの一例を示す図である。
【図１０】（ａ）は本発明の他の実施形態による制御装置を説明するためのブロック図であり、（ｂ）は（ａ）の制御装置による処理を説明するためのフローチャートである。
【図１１】ディスクアレイ装置およびホスト装置を含むシステムの一例を説明するためのブロック図である。
【図１２】論理ディスクへの最適パスを説明するためのブロック図である。
【図１３】ホスト装置から他のホスト装置への仮想マシンの移動を説明するためのブロック図である。
【図１４】仮想マシンの移動と、論理ディスクへの最適パスを説明するためのブロック図である。
【図１５】仮想マシンの移動と、論理ディスクへの最適パスを説明するためのブロック図である。
【発明を実施するための形態】
【００１３】
本発明の好ましい実施形態について説明する前に、背景技術について図面を参照しながら、説明する。
【００１４】
ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）のような記憶装置を複数備え、アレイを構成しているディスクアレイ装置において、アレイの物理領域をエクステント（物理エクステント）という一定サイズに区切って管理する。そしてライトアクセスの際に、その物理エクステントを仮想的に割り当てて、論理ボリューム（ＬＤ：Logical Drive）を構成している（図１１）。
【００１５】
こうしたＬＤごとに、ディスクアレイ装置は、負荷分散などの目的で、データの書き込み・読み込みなどを主体的に行うコントローラを決定している。以下、このようなデータの書き込み・読み込みなどを主体的に行うコントローラを、マスタコントローラあるいはマスタと呼ぶ。ディスクアレイ装置を構成する各物理ディスクと一つのマスタコントローラとが、接続された関係にある。マスタコントローラでデータ書き込み・読み込み処理を実施する場合の方が、性能的に優れている。そのため、ホストとディスクアレイ装置間の接続において、アクセスするＬＤのマスタコントローラと接続されているパスが、最適なパスとなる（図１２）。図１２では、第１論理ディスクのマスタがコントローラＡであり、第２論理ディスクのマスタがコントローラＢである状態を示している。
【００１６】
最適パスの情報取得・切り替えは、ＳＣＳＩ−３の標準機能として仕様化されているＡＵＬＡ（Asymmetric Logical Unit Access）と呼ばれる機能を用いることで可能となっている。ホスト装置は、ディスクアレイ装置に対して、ＡＬＵＡ機能で定義されている最適パス情報取得コマンド（REPORT TARGET PORT GROUPS）を発行することで、最適パスの情報を取得することができる。また最適パスの変更があった場合、ディスクアレイ装置からホスト装置に通知する（Unit Attention）ことで、ホスト装置が最適パスの情報をディスクアレイ装置から再取得（REPORT TARGET PORT GROUPSコマンドの発行）するのを促すことが出来る。
【００１７】
ＬＤに格納されるデータとしては、仮想マシン環境のような、物理的なサーバ上で、複数の仮想マシン（ＶＭ：Virtual Machine）を動作させる仮想マシンのデータも、存在し得る。以下、仮想マシンをＶＭと記載する。ＬＤに格納されるデータとしては、複数のＶＭを動作させるＶＭのデータも存在し、ディスクアレイ装置上ある１つのＬＤには、複数のＶＭのデータが格納される場合もある。
【００１８】
また、仮想マシン環境では、保守・物理障害発生時のフェイルオーバーや、負荷分散などの目的で、一つの物理的なサーバから、別の物理的なサーバへ仮想マシン環境間でＶＭを移動するものが存在する。
【００１９】
ここで、１つのＬＤに複数のＶＭデータが格納されていて、ある１つのＶＭを別の仮想マシン環境に移動する場合を考える（図１３）。ディスクアレイ装置は、ＬＤ単位でマスタを決定しており、あるＬＤ（第１論理ディスク）のマスタはコントローラＡであり、ＶＭ１およびＶＭ２はホスト装置ａ上で動作している。そしてＬＤ（第２論理ディスク）のマスタはコントローラＢであり、ＶＭ３はホスト装置ｂ上で動作している。
【００２０】
あるＶＭ１をホスト装置ｂに移動した場合、ホスト装置ｂはコントローラＢに接続されており、マスタはコントローラＡのため、ＶＭ１は非最適パスからのアクセスとなってしまう（図１４）。ここで、ＶＭ１のマスタをコントローラＢに変更した場合、ＶＭ１はホスト装置ｂで動作しているため最適パスからのアクセスとなる。しかしながら、マスタはＬＤ単位で決定され、同ＬＤにデータが格納されているＶＭ２のマスタはコントローラＡであるため、ＶＭ２は非最適パスからのアクセスとなってしまう（図１５）。つまり、どちらかのＶＭは必ず非最適パスからのアクセスとなってしまうため、１つのＬＤに複数のＶＭデータが格納されている場合、マスタをＶＭごとに決定できないという課題がある。
【００２１】
次に、本発明の最上位概念の実施形態によるストレージ装置の制御装置および制御方法について、説明する。図１（ａ）は本発明の最上位概念の実施形態によるストレージ装置の制御装置を説明するためのブロック図であり、図１（ｂ）は図１（ａ）の制御装置を用いたディスクアレイ装置を説明するためのブロック図である。
【００２２】
本実施形態のストレージ装置の制御装置の一例は、図１（ａ）のコントローラ１５０である。図１（ａ）のコントローラ１５０は、マスタ切り替え制御手段の一例としてのマスタ切替制御部１５１と、エクステント管理テーブル１５２と、を含む。マスタ切替制御部１５１は、仮想マシン（ＶＭ）からのアクセスに応じて、エクステントごとにマスタとなるコントローラの切り替えを行う。エクステント管理テーブル１５２は、エクステントごとにホスト識別子およびマスタとなるコントローラを管理する。図１（ｂ）のディスクアレイ装置１７０は、図１（ａ）のコントローラ１５０と、ディスクアレイ１６０と、を含む。
【００２３】
本実施形態のストレージ装置の制御装置および制御方法によれば、エクステント管理テーブル１５２が、エクステントごとにホスト識別子およびマスタとなるコントローラを管理している。そして、マスタ切替制御部１５１は、ＶＭからのアクセスに応じて、エクステントごとにマスタの切り替えを行う。例えば、ＶＭが別のホスト装置に移動した場合には、マスタの切り替えが行われる。ＶＭが別のホスト装置に移動した場合でも、ＶＭごとに最適パスからのストレージ装置へのアクセスが可能になる。ＶＭごとに最適パスからのアクセスが可能となることで、性能低下を軽減することが出来る。以下、より具体的な実施形態について、図面を参照しながら詳細に説明する。
【００２４】
〔一実施形態〕
本発明の一実施形態によるストレージ装置の制御装置、およびストレージ装置の制御方法について、説明する。図２は、本発明の一実施形態によるストレージ装置の一例としての、ディスクアレイ装置を用いたシステムの構成を説明するためのブロック図である。図３は、本発明の一実施形態のエクステント管理テーブルの一例を示す図である。図４は、本発明の一実施形態によるディスクアレイ装置で、ＶＭのデータをＬＤに格納する場合の処理を説明するためのフローチャートである。図５は、本発明の一実施形態のエクステント管理テーブルの一例を示す図である。図６は、本発明の一実施形態によるディスクアレイ装置の仮想マシンの移動を説明するためのブロック図である。図７は、本発明の一実施形態によるディスクアレイ装置で、ＶＭがホスト装置間で移動した場合の処理を説明するためのフローチャートである。図８は、本発明の一実施形態のエクステント管理テーブルの一例を示す図である。図９は、本発明の一実施形態のエクステント管理テーブルの一例を示す図である。
【００２５】
図２を参照すると、本発明の一実施形態としてのディスクアレイ装置１が示されている。図２において、ディスクアレイ装置１は、コントローラ２と、複数台の記憶装置の一例としての、複数台のＨＤＤ（Hard Disk Drive）１０からなるディスク部３を有する。なお、複数台の記憶装置はＳＳＤ（Solid State Drive）でも良いが、以降は複数台のＨＤＤ１０の場合で説明する。
【００２６】
コントローラ２は、１台もしくは複数台のホスト装置２１と接続される。コントローラ２は、ホスト装置２１とのデータの送受信を行うホスト制御部５と、ディスク部３と接続され、ＨＤＤ１０へのデータの読み書きを行うディスク制御部６と、エクステント管理テーブル３０と、マスタ切り替え制御手段４０と、を有している。
【００２７】
ホスト制御部５は、最適パス情報返却手段５０および最適パス変更通知手段５１を、有している。
【００２８】
ホスト装置２１は、仮想マシン環境２０を有しており、仮想マシン環境２０上に複数の仮想マシン（ＶＭ）２２が構築されている。
【００２９】
ディスク部３の１つのＲＡＩＤ(Redundant Arrays of Inexpensive DisksまたはRedundant Arrays of Independent Disks)構成のディスクアレイ８０は、複数台のＨＤＤ１０で構成されており、論理ボリューム（ＬＤ）を構築している。ＬＤには、ＶＭ２２のデータが格納されている。ホスト装置２１およびＶＭ２２は、最適パス情報の取得時に、最適パス情報取得通知２５をディスクアレイ装置１に対して発行する。ディスクアレイ装置１は、最適パス情報取得通知２５を受信した場合、該当する最適パス情報を、最適パス情報返却手段５０によりホスト装置２１およびＶＭ２２に返却する。最適パス情報を取得したホスト装置２１およびＶＭ２２は、以降のアクセスは取得した最適パスを介して行う。
【００３０】
コントローラ２のマスタ切り替え制御手段４０は、ＶＭ２２からのアクセスに応じて、論理エクステントごとにマスタとなるコントローラ２の切り替えを行う。マスタ切り替えを実施した場合、最適パスの状態変更を、最適パス変更通知手段５１によって該当するホスト装置２１およびＶＭ２２に対して通知する。最適パスの状態変更を通知されたホスト装置２１およびＶＭ２２は、再度最適パス情報取得通知２５をディスクアレイ装置１に対して発行することで、最適パス情報を取得する。
【００３１】
次に、図３を参照すると、図２のエクステント管理テーブル３０の詳細な構成が示されている。図３において、エクステント管理テーブル３０は、ＬＤごとにテーブル３１を有している。図３では、ＬＤ＃０〜ＬＤ＃Ｎのテーブル３１を有しているものとする。各テーブル３１はそれぞれ、エクステント番号３２、ホスト識別子３３、マスタコントローラ番号３４、パスごとのアクセス回数３５を管理する。図３では、パスごとのアクセス回数３５は、パス＃０アクセス回数〜パス＃Ｍアクセス回数である。言い換えると、エクステント管理テーブル３０は、ＬＤのエクステント番号３２ごとに、ホスト識別子３３およびマスタとなるコントローラのマスタコントローラ番号３４の関連付けを保持している。さらに、エクステント管理テーブル３０は、ＬＤのエクステント番号３２ごとに、ホスト識別子３３、マスタとなるコントローラのマスタコントローラ番号３４、およびパスアクセス回数３５の関連付けを保持している、と言える。
【００３２】
ホスト識別子３３は、ＶＭ２２をそれぞれ判別する情報（例：ＷＷＮ（World Wide Name））が管理され、ＶＭ２２からＬＤに対する書き込みでエクステントを割り当てた時に登録する。
【００３３】
マスタコントローラ番号３４は、現在のマスタコントローラの番号が格納され、初期値はエクステントが属するＬＤのマスタコントローラとなる。
【００３４】
パスアクセス回数３５は、コントローラ２とホスト装置２１間で接続されているパスごとに、ＶＭ２２からのアクセス毎にカウントアップされる。
【００３５】
ホスト装置２１のＡＬＵＡ機能である最適パス情報取得通知２５や、ディスクアレイ装置１のコントローラ２のホスト制御部５の最適パス情報返却手段５０および最適パス変更通知手段５１は、当業者にとってよく知られた構成である。またこれらの要素は本発明の特徴とは直接関係しないので、その詳細な構成は省略する。
【００３６】
（動作の説明）
次に図２のディスクアレイ装置１の動作を図４、図７に示すフローチャートと、図６に示す具体的なディスクアレイ装置１および図５、図８、図９に示す具体的なエクステント管理テーブル３０を使用して説明する。
【００３７】
説明のための具体例として、ホスト装置＃０はコントローラ＃０に接続され（パス＃０）、ホスト装置＃１はコントローラ＃１に接続（パス＃１）されているものとする。さらに、ホスト装置＃０上でＶＭ＃１、ＶＭ＃２が動作し、ホスト装置＃１上でＶＭ＃３が動作しているものとする。ＶＭ＃１、ＶＭ＃２のデータはＬＤ＃０に格納され、ＶＭ＃３のデータはＬＤ＃１に格納されるものとし、ＬＤ＃０のマスタコントローラはコントローラ＃０、ＬＤ＃１のマスタコントローラはコントローラ＃１であるものとする。上記ＬＤ番号やコントローラ番号、エクステントの単位および、ホスト装置の構成などはその一例を示すものであって、本発明は上述した値および方法のみに限定されるものではない。
【００３８】
（ＶＭ２２のデータをＬＤに格納する場合の処理）
まず、ＶＭ２２のデータをＬＤに格納する場合の処理に関して、図４に示すフローチャートと、図５に示す具体的なエクステント管理テーブル３０の情報を使用して説明する。
【００３９】
ホスト装置２１上のＶＭ２２からＬＤに対してアクセスがあった場合（図４、Ｓ１０１）、ディスクアレイ装置１はＶＭ２２のホスト識別子３３を取得する（図４、Ｓ１０２）。次に、ＶＭ２２からのアクセス先エクステントの番号を抽出し（図４、Ｓ１０３）、該当するエクステント番号の情報が図５のエクステント管理テーブル３０に登録済かどうかをチェックする（図４、Ｓ１１０）。
【００４０】
エクステントの情報が登録済であった場合（図４、Ｓ１１０のＹＥＳ）、エクステント管理テーブル３０の該当するパスアクセス回数３５をカウントアップし（図４、Ｓ１１３）、データの書き込み・読み込みを実施する（図４、Ｓ１１４）。
【００４１】
エクステントの情報が登録されていない場合（図４、Ｓ１１０のＮＯ）、ホスト識別子３３の登録（図４、Ｓ１１１）と、マスタコントローラ番号３４の登録（図４、Ｓ１１２）とを実施する。そののち、該当するパスアクセス回数３５をカウントアップ（図４、Ｓ１１３）し、データの書き込み・読み込みを実施する（図４、Ｓ１１４）。
【００４２】
（ＶＭ２２がホスト装置２１間で移動した場合の処理）
次に、ＶＭ２２がホスト装置２１間で移動した場合（図６）の処理に関して、図７に示すフローチャートと、図８、図９に示す具体的なエクステント管理テーブル３０の情報を使用して説明する。
【００４３】
コントローラ２のマスタ切り替え制御手段４０は、定期的にエクステント管理テーブル３０をＬＤごとにチェックを行い（図７、Ｓ２０１）、さらに論理エクステントごとにチェックを行う（図７、Ｓ２０２）。エクステント管理テーブル３０のパスアクセス回数３５のうちどれかが、第１閾値（例：１１０）を超えているかどうかチェックを行う（図７、Ｓ２０３）。具体的には、図８のパス＃０アクセス回数〜パス＃１アクセス回数のうちどれかが第１閾値を超えているかどうかチェックを行う。
【００４４】
第１閾値を超えていなかった場合（図７、Ｓ２０３のＮＯ）、次の対象エクステント、ＬＤのチェックを行う。図８のＶＭ＃１の場合、パス＃０アクセス回数〜パス＃１アクセス回数のいずれも第１閾値を超えていないので、次の対象エクステント、ＬＤのチェックを行う。
【００４５】
第１閾値を超えていた場合（図７、Ｓ２０３のＹＥＳ）、第１閾値を超えていたパスアクセス回数３５が該当するパスが接続されているコントローラ２と、該当するマスタコントローラ番号３４が異なっているかをチェックする（図７、Ｓ２０４）。図８では、ＶＭ＃２、ＶＭ＃３、ＶＭ＃４のパス＃１アクセス回数が、第１閾値を超えている。
【００４６】
第１閾値を超えていたパスアクセス回数３５が該当するパスが接続されているコントローラ２と、該当するマスタコントローラ番号３４が異なっていない場合、パスアクセス回数３５をクリアし（図７、Ｓ２０８）、次の対象エクステント、ＬＤのチェックを行う。ここで、第１閾値を超えていたパスアクセス回数３５が該当するパスが接続されているコントローラ２と、該当するマスタコントローラ番号３４が一致しているのは、図８のＶＭ＃３である。
【００４７】
第１閾値を超えていたパスアクセス回数３５が該当するパスが接続されているコントローラ２と、該当するマスタコントローラ番号３４が異なっていた場合（図７、Ｓ２０４のＹＥＳ）、パスアクセス回数３５のチェックを行う（図７、Ｓ２０５）。すなわち、現在のマスタコントローラ番号３４に該当するコントローラ２に接続されているパスのパスアクセス回数３５が、第２閾値（例：４０）以下かどうかのチェックである。ここで、パスアクセス回数３５が第１閾値を超えており、かつパスが接続されているコントローラ２と、該当するマスタコントローラ番号３４が異なっているのは、図８のＶＭ＃２、ＶＭ＃４である。
【００４８】
第２閾値を超えている場合（図７、Ｓ２０５のＮＯ）、パスアクセス回数３５をクリアし（図７、Ｓ２０８）、次の対象エクステント、ＬＤのチェックを行う。ここで、第２閾値を超えているのは、図８のＶＭ＃４である。図８ではＶＭ＃４のパス＃０アクセス回数が第２閾値を超えているので、図９のようにＶＭ＃４のパスアクセス回数３５をクリアし、次の対象エクステント、ＬＤのチェックを行う。
【００４９】
第２閾値以下の場合（図７、Ｓ２０５のＹＥＳ）、エクステント管理テーブル３０のマスタコントローラ番号３４を、第１閾値を超えていたパスアクセス回数３５が該当するパスが接続されているコントローラ２に切り替える（図７、Ｓ２０６）。さらに、該当パスを最適パスとしてホスト装置２１に通知したのち（図７、Ｓ２０７）、パスアクセス回数３５をクリアし（図７、Ｓ２０８）、次の対象エクステント、ＬＤのチェックを行う。図８では、ＶＭ＃２のパス＃０アクセス回数は第２閾値を超えていないので、エクステント管理テーブル３０のマスタコントローラ番号３４を、第１閾値を超えていたパスアクセス回数３５が該当するパスが接続されているコントローラ２に変更する。さらに、該当パスを最適パスとしてホスト装置２１に通知したのち、図９に示すようにＶＭ＃２のパスアクセス回数３５をクリアし、次の対象エクステント、ＬＤのチェックを行う。
【００５０】
以上の動作により、ホスト装置２１間でＶＭ２２が移動された場合にも、ＶＭ２２のデータが格納されているエクステントのマスタを、移動先のホスト装置２１が接続されているコントローラ２に変更することができ、ＶＭ２２から最適パスでアクセス可能になる。
【００５１】
（効果の説明）
以上説明したように、本実施形態のストレージ装置の制御装置、ストレージ装置の制御方法によれば、ＶＭ２２ごとに最適パスからのアクセスが可能となることで、性能低下を軽減することが出来る。さらに、エクステント管理テーブル３０のパスアクセス回数３５の情報やマスタコントローラ番号３４の情報を参照して、マスタとなるコントローラ２を変更しているので、ストレージ装置全体の性能低下を軽減することが出来る。
【００５２】
〔他の実施形態〕
上述したストレージ装置の制御装置、ストレージ装置の制御方法は、上述した構成や動作を実現するプログラムを実行できる情報処理装置によっても実現され得る。このプログラムは、コンピュータ読み取り可能な記録媒体の形態で、流通され得る。このような記録媒体に記録されたプログラムを読み込んで、情報処理装置で実行することにより、本実施形態の機能をソフトウェア的に実現してもよい。
【００５３】
図１０（ａ）は、本発明の実施形態の制御方法に適用可能なコンピュータの構成を例示する図である。なお、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
【００５４】
図１０（ａ）に示すように、情報処理装置は、ＣＰＵ（Central Processing Unit）１５５や、ＲＡＭ（Random Access Memory）などで構成されるメモリ１５６を含む。このようなハードウェア構成の情報処理装置で、上述した実施形態のコントローラ２は、実現され得る。すなわち、図２のコントローラ２の一部または全部は、図１０（ｂ）のような各処理を実行させるプログラムを読み込んで情報処理装置に実行させることによっても、実現できる。具体的には図１０（ｂ）のような、パスアクセス回数確認処理と、マスタコントローラ番号確認処理である。さらに図１０（ｂ）のような、マスタ切り替え処理などである。
【００５５】
また、このプログラムは、プログラムを記録した記録媒体の形態で、流通され得る。このプログラムは、ＣＦ（Compact Flash（登録商標））およびＳＤ（Secure Digital）等の汎用的な半導体記録デバイス、フレキシブルディスク（Flexible Disk）等の磁気記録媒体、またはＣＤ−ＲＯＭ（Compact Disc Read Only Memory）などの光学記録媒体などの形態で、流通され得る。
【００５６】
以上、本発明の好ましい実施形態を説明したが、本発明はこれに限定されるものではない。特許請求の範囲に記載した発明の範囲内で、種々の変形が可能であり、それらも本発明の範囲に含まれることはいうまでもない。
【００５７】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
（付記１）エクステントごとにホスト識別子およびマスタとなるコントローラを管理するエクステント管理テーブルと、仮想マシンからのアクセスに応じて、前記エクステントごとに前記マスタとなるコントローラの切り替えを行うマスタ切り替え制御手段と、を含むストレージ装置の制御装置。
（付記２）前記エクステント管理テーブルは、前記エクステントごとに前記ホスト識別子、前記マスタとなるコントローラのコントローラ番号、およびパスアクセス回数を管理する、付記１に記載のストレージ装置の制御装置。
（付記３）前記パスアクセス回数が第１閾値を超えており、かつ前記第１閾値を超えていた前記パスアクセス回数が該当するパスが接続されているコントローラと、前記マスタとなるコントローラとが異なっているときに、前記マスタとなるコントローラの切り替えを行う、付記２に記載のストレージ装置の制御装置。
（付記４）前記パスアクセス回数が前記第１閾値を超えており、かつ前記第１閾値を超えていた前記パスアクセス回数が該当するパスが接続されているコントローラと、前記マスタとなるコントローラとが異なっており、前記パスアクセス回数が第２閾値を超えていないときに、前記マスタとなるコントローラの切り替えを行う、付記３に記載のストレージ装置の制御装置。
（付記５）前記マスタとなるコントローラを複数含み、
前記マスタとなるコントローラは仮想マシン環境が構築される複数のホスト装置にそれぞれ接続されている、付記１乃至付記４のいずれか一つに記載のストレージ装置の制御装置。
（付記６）付記１乃至付記５のいずれか一つに記載のストレージ装置の制御装置を含む、ストレージ装置。
（付記７）エクステントごとにホスト識別子およびマスタとなるコントローラの関連付けを保持し、
仮想マシンからのアクセスに応じて、前記関連付けに基づいて前記エクステントごとに前記マスタとなるコントローラの切り替えを行う、ストレージ装置の制御方法。
（付記８）前記エクステントごとに前記ホスト識別子、前記マスタとなるコントローラのコントローラ番号、およびパスアクセス回数の関連付けを保持する、付記７に記載のストレージ装置の制御方法。
（付記９）前記パスアクセス回数が第１閾値を超えており、かつ前記第１閾値を超えていた前記パスアクセス回数が該当するパスが接続されているコントローラと、前記マスタとなるコントローラとが異なっているときに、前記マスタとなるコントローラの切り替えを行う、付記８に記載のストレージ装置の制御方法。
（付記１０）前記パスアクセス回数が前記第１閾値を超えており、かつ前記第１閾値を超えていた前記パスアクセス回数が該当するパスが接続されているコントローラと、前記マスタとなるコントローラとが異なっており、前記パスアクセス回数が第２閾値を超えていないときに、前記マスタとなるコントローラの切り替えを行う、付記９に記載のストレージ装置の制御方法。
（付記１１）コンピュータに、
エクステントごとにホスト識別子およびマスタとなるコントローラを管理するエクステント管理テーブルを参照する参照処理と、
仮想マシンからのアクセスに応じて、前記エクステントごとに前記マスタとなるコントローラの切り替えを行うマスタ切り替え処理とを実行させる、ストレージ装置の制御プログラム。
（付記１２）前記エクステント管理テーブルは、前記エクステントごとに前記ホスト識別子、前記マスタとなるコントローラのコントローラ番号、およびパスアクセス回数を管理する、付記１１に記載のストレージ装置の制御プログラム。
（付記１３）前記参照処理は、
前記パスアクセス回数が第１閾値を超えているか確認するパスアクセス回数確認処理と、
前記第１閾値を超えていたパスアクセス回数が該当するパスが接続されているコントローラと、前記マスタとなるコントローラとが異なるかどうか確認するマスタコントローラ確認処理とを含む、付記１２に記載のストレージ装置の制御プログラム。
（付記１４）前記パスアクセス回数確認処理は、前記パスアクセス回数が前記第１閾値を超えているか確認し、第２閾値を超えていないか確認する処理を含む、付記１３に記載のストレージ装置の制御プログラム。
【符号の説明】
【００５８】
１    ディスクアレイ装置
２    コントローラ
３    ディスク部
５    ホスト制御部
６    ディスク制御部
１０    ＨＤＤ
２０    仮想マシン環境
２１    ホスト装置
２２    仮想マシン（ＶＭ）
２５    最適パス情報取得通知
３０    エクステント管理テーブル
４０    マスタ切り替え制御手段
３１    テーブル
５０    最適パス情報返却手段
５１    最適パス変更通知手段
８０    ディスクアレイ
１５０    コントローラ
１５１    マスタ切替制御部
１５２    エクステント管理テーブル
１５５    ＣＰＵ
１５６    メモリ
１６０    ディスクアレイ
１７０    ディスクアレイ装置
【図１】
2017151858.tif 000003
【図２】
2017151858.tif 000004
【図３】
2017151858.tif 000005
【図４】
2017151858.tif 000006
【図５】
2017151858.tif 000007
【図６】
2017151858.tif 000008
【図７】
2017151858.tif 000009
【図８】
2017151858.tif 000010
【図９】
2017151858.tif 000011
【図１０】
2017151858.tif 000012
【図１１】
2017151858.tif 000013
【図１２】
2017151858.tif 000014
【図１３】
2017151858.tif 000015
【図１４】
2017151858.tif 000016
【図１５】
2017151858.tif 000017