【実施例1】
【0014】
図1は、実施例1の計算機システムの構成の一例を示す図である。
図2は、実施例1の管理サーバの構成の一例を示す図である。
【0015】
計算機システムは、管理サーバ100及び基盤システム101から構成される。管理サーバ100及び基盤システム101は、ネットワーク102を介して互いに接続される。ネットワーク102は、WAN(Wide Area Network)及びLAN(Local Area Network)等である。ネットワーク102の接続方式は、有線及び無線のいずれでもよい。
【0016】
基盤システム101は、所定のサービスを実行する業務システムを構築するためのリソースを提供するシステムである。提供するリソースは、演算のためのリソース(計算リソース)と、データを格納するためのリソース(ストレージリソース)とに分けることができる。計算リソース及びストレージリソースを区別しない場合、単にリソースと記載する。
【0017】
業務システムは、仮想マシン130及び仮想ボリューム160を含む。なお、業務システムに含まれる仮想マシン130及び仮想ボリューム160の数は任意である。また、業務システムは、仮想マシン130及び仮想ボリューム160以外の要素を含んでもよい。
【0018】
以下の説明では、仮想マシン130をVM130と記載し、仮想ボリューム160をボリューム160と記載する。
【0019】
基盤システム101は、3Tier型の基盤110及びHCI型の基盤111を含む。基盤システム101に含まれる3Tier型の基盤110及びHCI型の基盤111の数は二つ以上でもよい。3Tier型の基盤110及びHCI型の基盤111を区別しない場合、基盤と記載する。
【0020】
3Tier型の基盤110は、サーバ120、SANスイッチ121、及びストレージシステム122を含む。3Tier型の基盤110に含まれるサーバ120、SANスイッチ121、及びストレージシステム122の数は二つ以上でもよい。
【0021】
サーバ120は、図示しない、CPU、メモリ、記憶装置、及びネットワークインタフェースを有する。SANスイッチ121は、図示しない、コントローラ及びポートを有する。ストレージシステム122は、図示しない、複数のマイクロプロセッサ(MP)を含むコントローラ、及び複数の記憶装置を有する。なお、記憶装置は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等である。
【0022】
サーバ120上ではVM130が稼働する。ストレージシステム122は、複数の記憶装置からプール140を構成し、プール140の一部の記憶領域をボリューム160に割り当てる。
【0023】
HCI型の基盤111はサーバ120を含む。HCI型の基盤111に含まれるサーバ120の数は二つ以上でもよい。HCI型の基盤111は、一つ以上のサーバ120から構成されるHCIクラスタ単位で管理される。
【0024】
サーバ120上ではVM130が稼働する。また、サーバ120は、各サーバ120の記憶装置からデータストア150を構成し、データストア150の一部の記憶領域をボリューム160に割り当てる。
【0025】
管理サーバ100は、基盤システム101に含まれる3Tier型の基盤110及びHCI型の基盤111の稼働状態を監視し、基盤110、111間の業務システムのマイグレーションを支援する。
【0026】
図2に示すように、管理サーバ100は、CPU200、ネットワークインタフェース201、メモリ202、及び記憶装置203を有する。各ハードウェアはバス204を介して互いに接続される。なお、管理サーバ100は、キーボード、マウス、及びタッチパネル等の入力装置、並びに、ディスプレイ等の出力装置を有してもよい。
【0027】
CPU200は、メモリ202に格納されるプログラムを実行する。CPU200がプログラムにしたがって処理を実行することによって、特定の機能を実現する機能部(モジュール)として動作する。以下の説明では、機能部を主語に処理を説明する場合、CPU200が当該機能部を実現するプログラムを実行していることを示す。
【0028】
実施例1のCPU200は、監視部210及び分析部211として機能する。監視部210は、3Tier型の基盤110及びHCI型の基盤111の稼働状態を監視する。分析部211は、基盤上の業務システムのマイグレーションの要否を判定し、また、マイグレーションのスケジュールを生成する。
【0029】
なお、管理サーバ100が有する各機能部については、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。
【0030】
ネットワークインタフェース201は、ネットワークを介して外部装置と接続するためのインタフェースである。
【0031】
記憶装置203は、永続的にデータを格納する記憶装置である。記憶装置203は、例えば、HDD及びSSD等である。記憶装置203は、3Tier構成情報220、3Tierサーバ構成情報221、HCI構成情報222、HCIサーバ情報223、3Tierサーバ監視情報224、3Tierプール監視情報225、3Tierボリューム監視情報226、HCIサーバ監視情報227、HCIプール監視情報228、及びHCIボリューム監視情報229を格納する。
【0032】
3Tier構成情報220は、3Tier型の基盤110におけるストレージシステム122の構成に関する情報を格納する。3Tier構成情報220のデータ構造の詳細は
図3を用いて説明する。
【0033】
3Tierサーバ構成情報221は、3Tier型の基盤110におけるサーバ120の構成に関する情報を格納する。3Tierサーバ構成情報221のデータ構造の詳細は
図4を用いて説明する。
【0034】
HCI構成情報222は、HCI型の基盤111の構成に関する情報を格納する。HCI構成情報222のデータ構造の詳細は
図5を用いて説明する。
【0035】
HCIサーバ情報223は、HCI型の基盤111におけるサーバ120の構成に関する情報を格納する。HCIサーバ情報223のデータ構造の詳細は
図6を用いて説明する。
【0036】
3Tierサーバ監視情報224は、3Tier型の基盤110におけるサーバ120の稼働状態の監視結果を格納する。3Tierサーバ監視情報224のデータ構造の詳細は
図7を用いて説明する。
【0037】
3Tierプール監視情報225は、3Tier型の基盤110におけるプール140に関連する稼働状態の監視結果を格納する。3Tierプール監視情報225のデータ構造の詳細は
図8を用いて説明する。
【0038】
3Tierボリューム監視情報226は、3Tier型の基盤110におけるボリューム160に関連する稼働状態の監視結果を格納する。3Tierボリューム監視情報226のデータ構造の詳細は
図9を用いて説明する。
【0039】
HCIサーバ監視情報227は、HCI型の基盤111におけるサーバ120の稼働状態の監視結果を格納する。HCIサーバ監視情報227のデータ構造の詳細は
図10を用いて説明する。
【0040】
HCIプール監視情報228は、HCI型の基盤111におけるデータストア150に関連する稼働状態の監視結果を格納する。HCIプール監視情報228のデータ構造の詳細は
図11を用いて説明する。
【0041】
HCIボリューム監視情報229は、HCI型の基盤111におけるボリューム160に関連する稼働状態の監視結果を格納する。HCIボリューム監視情報229のデータ構造の詳細は
図12を用いて説明する。
【0042】
メモリ202は、CPU200が実行するプログラム及び各種情報を格納する。メモリ202は、監視部210及び分析部211を実現するプログラムを格納し、また、ボリューム評価情報230、閾値情報231、マイグレーション要否判定情報232、及びパターン評価情報233を格納する。
【0043】
ボリューム評価情報230は、ボリューム160が3Tier型の基盤110及びHCI型の基盤111のいずれに適しているかを示す指標を格納する。ボリューム評価情報230のデータ構造の詳細は
図13を用いて説明する。
【0044】
閾値情報231は、基盤上の業務システムのマイグレーションの要否を判定するための閾値を格納する。閾値情報231のデータ構造の詳細は
図14を用いて説明する。
【0045】
マイグレーション要否判定情報232は、業務システムのマイグレーションの要否判定の結果を格納する。マイグレーション要否判定情報232のデータ構造の詳細は
図15を用いて説明する。
【0046】
パターン評価情報233は、移行元の要素及び移行先の要素の組合せであるマイグレーションパターンに関する評価を格納する。パターン評価情報233のデータ構造の詳細は
図16を用いて説明する。
【0047】
なお、記憶装置203には、図示しない、業務システムの構成を管理するための情報が格納される。当該情報には、業務システムの識別情報、利用している基盤の情報、VM130の識別情報、及びボリューム160の識別情報を含むエントリが格納される。
【0048】
なお、メモリ202に格納されるプログラム及び情報は、記憶装置203に格納されてもよい。この場合、CPU200が、記憶装置203からプログラム及び情報を読み出し、メモリ202に格納する。
【0049】
なお、記憶装置203に格納される情報はメモリ202に格納されてもよい。
【0050】
なお、複数の計算機から構成される管理システムを用いて、管理サーバ100と同等の機能を実現してもよい。
【0051】
図3から
図16を用いて、管理サーバ100が管理する情報の詳細を説明する。
【0052】
図3は、実施例1の3Tier構成情報220のデータ構造の一例を示す図である。
【0053】
3Tier構成情報220は、ストレージID301、プールID302、容量303、容量閾値304、MP閾値305、ボリューム種別306、ボリュームコスト307、MPコスト308、及び機能309を含むエントリを格納する。ストレージシステム122及びプール140の組合せに対して一つのエントリが存在する。
【0054】
ストレージID301は、3Tier型の基盤110に含まれるストレージシステム122の識別情報を格納するフィールドである。プールID302は、プール140の識別情報を格納するフィールドである。容量303は、プール140の容量を格納するフィールドである。
【0055】
容量閾値304は、3Tier型の基盤110の負荷を見積もるための指標であるプール140の使用量の閾値を格納するフィールドである。MP閾値305は、3Tier型の基盤110の負荷を見積もるための指標であるMPの使用率の閾値を格納するフィールドである。
【0056】
なお、ストレージID301が同一のエントリの容量閾値304及びMP閾値305は全て同じ値となる。
【0057】
ボリューム種別306は、プール140を構成する記憶装置の種別を格納するフィールドである。ボリューム種別306に「SSD」が設定されている場合、プール140はSSDのみから構成されるRAIDグループを用いて生成されたことを示す。ボリューム種別306に「HDD」が設定されている場合、プール140はHDDのみから構成されるRAIDグループを用いて生成されたことを示す。ボリューム種別306に「HDD/SSD」が設定されている場合、プール140はHDD及びSSDから構成されるRAIDグループを用いて生成されたことを示す。
【0058】
ボリュームコスト307は、プール140の単位容量あたりのコストを格納するフィールドである。MPコスト308は、ストレージシステム122あたりのMPのコストを格納するフィールドである。
【0059】
機能309は、プール140に対して設定されたストレージ機能に関する情報を格納するフィールド群である。機能309は、コピー311、最適化312、及び圧縮/重複排除313を含む。なお、機能309に含まれる前述のフィールドは一例であってこれに限定されない。
【0060】
コピー311は、プール140の世代(コピーの数)を格納するフィールドである。コピー311には、プール140の世代に応じた数字が格納される。なお、プール140の世代が存在しない場合、コピー311は空欄となる。
【0061】
最適化312は、最適化機能が有効か否かを示す値を格納する。最適化機能が設定されている場合、最適化312には「有」が格納され、最適化機能が設定されていない場合、最適化312は空欄となる。
【0062】
圧縮/重複排除313は、圧縮/重複排除機能が有効か否かを示す値を格納する。圧縮/重複排除機能が設定されている場合、圧縮/重複排除313には「有」が格納され、圧縮/重複排除機能が設定されていない場合、圧縮/重複排除313は空欄となる。
【0063】
図4は、実施例1の3Tierサーバ構成情報221のデータ構造の一例を示す図である。
【0064】
3Tierサーバ構成情報221は、サーバID401、ストレージID402、CPU閾値403、及びCPUコスト404を含むエントリを格納する。一つのサーバ120に対して一つのエントリが存在する。
【0065】
サーバID401は、3Tier型の基盤110に含まれるサーバ120の識別情報を格納するフィールドである。ストレージID402は、サーバ120に接続されるストレージシステム122の識別情報を格納するフィールドである。
【0066】
CPU閾値403は、3Tier型の基盤110の負荷を見積もるための指標であるCPUの使用率の閾値を格納するフィールドである。
【0067】
CPUコスト404は、サーバ120あたりのCPUのコストを格納するフィールドである。
【0068】
図5は、実施例1のHCI構成情報222のデータ構造の一例を示す図である。
【0069】
HCI構成情報222は、クラスタID501、容量502、容量閾値503、ボリューム種別504、ボリュームコスト505、及び機能506を含むエントリを格納する。一つのHCI型の基盤111に対して一つのエントリが存在する。
【0070】
クラスタID501は、HCI型の基盤111(クラスタ)の識別情報を格納するフィールドである。容量502は、HCI型の基盤111のデータストア150の容量を格納するフィールドである。
【0071】
容量閾値503は、HCI型の基盤111の負荷を見積もるための指標であるデータストア150の使用量の閾値を格納するフィールドである。
【0072】
ボリューム種別504は、データストア150を構成する記憶装置203の種別を格納するフィールドである。
【0073】
ボリュームコスト505は、データストア150の単位容量あたりのコストを格納するフィールドである。
【0074】
機能506は、HCI型の基盤111が有するストレージ機能に関する情報を格納するフィールド群である。機能506は、コピー511、最適化512、及び圧縮/重複排除513を含む。なお、機能309に含まれる前述のフィールドは一例であってこれに限定されない。
【0075】
コピー511は、データストア150の世代(コピーの数)を格納するフィールドである。コピー511には、データストア150の世代に応じた数字が格納される。なお、データストア150の世代が存在しない場合、コピー511は空欄となる。
【0076】
最適化512は、最適化機能が有効か否かを示す値を格納する。最適化機能が設定されている場合、最適化512には「有」が格納され、最適化機能が設定されていない場合、最適化512は空欄となる。
【0077】
圧縮/重複排除513は、圧縮/重複排除機能が有効か否かを示す値を格納する。圧縮/重複排除機能が設定されている場合、圧縮/重複排除513には「有」が格納され、圧縮/重複排除機能が設定されていない場合、圧縮/重複排除513は空欄となる。
【0078】
図6は、実施例1のHCIサーバ情報223のデータ構造の一例を示す図である。
【0079】
HCIサーバ情報223は、サーバID601、クラスタID602、CPU閾値603、及びCPUコスト604を含むエントリを格納する。一つのサーバ120に対して一つのエントリが存在する。
【0080】
サーバID601は、サーバ120の識別情報を格納するフィールドである。クラスタID602は、サーバ120が所属するクラスタ(HCI型の基盤111)の識別情報を格納するフィールドである。
【0081】
CPU閾値603は、HCI型の基盤111の負荷を見積もるための指標であるCPUの使用率の閾値を格納するフィールドである。クラスタID602が同一のエントリのCPU閾値603は全て同じ値となる。
【0082】
CPUコスト604は、サーバ120あたりのCPUのコストを格納するフィールドである。
【0083】
図7は、実施例1の3Tierサーバ監視情報224のデータ構造の一例を示す図である。
【0084】
3Tierサーバ監視情報224は、日時701、サーバID702、及びCPU使用率703を含むエントリを格納する。一つのエントリは一つのサーバ120の稼働状態の監視結果に対応する。
【0085】
日時701は、サーバ120の稼働状態を計測した日時を格納するフィールドである。
【0086】
サーバID702は、サーバID401と同一のフィールドである。
【0087】
CPU使用率703は、サーバ120のCPUの使用率を格納するフィールドである。
【0088】
図8は、実施例1の3Tierプール監視情報225のデータ構造の一例を示す図である。
【0089】
3Tierプール監視情報225は、日時801、ストレージID802、プールID803、使用量804、及びMP使用率805を含むエントリを格納する。一つのエントリは、あるストレージシステム122のあるプール140の稼働状態の監視結果に対応する。
【0090】
日時801は、プール140の稼働状態を計測した日時を格納するフィールドである。
【0091】
ストレージID802及びプールID803はストレージID301及びプールID302と同一のフィールドである。
【0092】
使用量804は、プール140の使用量を格納するフィールドである。
【0093】
MP使用率805は、プール140を管理するストレージシステム122のMPの使用率を格納するフィールドである。
【0094】
図9は、実施例1の3Tierボリューム監視情報226のデータ構造の一例を示す図である。
【0095】
3Tierボリューム監視情報226は、日時901、ボリュームID902、ストレージID903、プールID904、使用量905、削減率906、MP使用率907、及びMP使用率(機能)908を含むエントリを格納する。一つのエントリは、一つのボリューム160の稼働状態の監視結果に対応する。
【0096】
日時901は、ボリューム160の稼働状態を計測した日時を格納するフィールドである。
【0097】
ボリュームID902は、ボリューム160の識別情報を格納するフィールドである。
【0098】
ストレージID903は、ボリューム160に記憶領域を割り当てるストレージシステム122の識別情報を格納するフィールドである。
【0099】
プールID904は、ボリューム160の記憶領域が割り当てられているプール140の識別情報を格納するフィールドである。
【0100】
使用量905は、ボリューム160の容量を格納するフィールドである。
【0101】
削減率906は、圧縮/重複排除機能を使用した場合の容量の削減率を格納するフィールドである。
【0102】
MP使用率907は、ボリューム160に記憶領域を割り当てているストレージシステム122のMPの使用率を格納するフィールドである。
【0103】
MP使用率(機能)908は、ストレージ機能によって使用されているストレージシステム122のMPの使用率を格納するフィールドである。
【0104】
図10は、実施例1のHCIサーバ監視情報227のデータ構造の一例を示す図である。
【0105】
HCIサーバ監視情報227は、日時1001、サーバID1002、及びCPU使用率1003を含むエントリを格納する。一つのエントリは、一つのサーバ120の稼働状態の監視結果に対応する。
【0106】
日時1001は、サーバ120の稼働状態を計測した日時を格納するフィールドである。
【0107】
サーバID1002は、サーバID601と同一のフィールドである。
【0108】
CPU使用率1003は、サーバ120のCPUの使用率を格納するフィールドである。
【0109】
図11は、実施例1のHCIプール監視情報228のデータ構造の一例を示す図である。
【0110】
HCIプール監視情報228は、日時1101、クラスタID1102、及び使用量1103を含むエントリを格納する。一つのエントリは、一つのHCI型の基盤111のデータストア150の稼働状態の監視結果に対応する。
【0111】
日時1101は、データストア150の稼働状態を計測した日時を格納するフィールドである。
【0112】
クラスタID1102は、HCI型の基盤111の識別情報を格納するフィールドである。HCI型の基盤111には一つのデータストア150が生成されるため、HCI型の基盤111の識別情報をデータストア150の識別情報として用いている。
【0113】
使用量1103は、データストア150の使用量を格納するフィールドである。
【0114】
図12は、実施例1のHCIボリューム監視情報229のデータ構造の一例を示す図である。
【0115】
HCIボリューム監視情報229は、日時1201、ボリュームID902、サーバID1203、クラスタID1204、使用量1205、削減率1206、CPU使用率1207、及びCPU使用率(機能)1208を含むエントリを格納する。一つのエントリは、一つのボリューム160の稼働状態の監視結果に対応する。
【0116】
日時1201は、ボリューム160の稼働状態を計測した日時を格納するフィールドである。
【0117】
ボリュームID1202は、ボリューム160の識別情報を格納するフィールドである。
【0118】
サーバID1203は、ボリューム160に記憶領域を割り当てるサーバ120の識別情報を格納するフィールドである。
【0119】
クラスタID1204は、ボリューム160に記憶領域を割り当てるサーバ120が所属するクラスタの識別情報を格納するフィールドである。
【0120】
使用量1205は、ボリューム160の容量を格納するフィールドである。
【0121】
削減率1206は、圧縮/重複排除機能を使用した場合の容量の削減率を格納するフィールドである。
【0122】
CPU使用率1207は、ボリューム160に記憶領域を割り当てているサーバ120のCPUの使用率を格納するフィールドである。
【0123】
MP使用率(機能)908は、ストレージ機能によって使用されているサーバ120のCPUの使用率を格納するフィールドである。
【0124】
図13は、実施例1のボリューム評価情報230のデータ構造の一例を示す図である。
【0125】
ボリューム評価情報230は、3Tierボリューム評価テーブル1300及びHCIボリューム評価テーブル1310を含む。
【0126】
3Tierボリューム評価テーブル1300は、3Tier型の基盤110のプール140を利用しているボリューム160の評価値を管理するための情報である。3Tierボリューム評価テーブル1300は、ボリュームID1301、第1基盤評価値1302、及び第2基盤評価値1303を含むエントリを格納する。一つのボリューム160に対して一つのエントリが存在する。
【0127】
ボリュームID1301は、ボリューム160の識別情報を格納するフィールドである。第1基盤評価値1302及び第2基盤評価値1303は、ボリューム160の評価値(第1基盤評価値及び第2基盤評価値)を格納するフィールドである。第1基盤評価値及び第2基盤評価値の詳細は後述する。
【0128】
HCIボリューム評価テーブル1310は、HCI型の基盤111のデータストア150を利用しているボリューム160の評価値を管理するための情報である。HCIボリューム評価テーブル1310は、ボリュームID1311、第1基盤評価値1312、及び第2基盤評価値1313を含むエントリを格納する。一つのボリューム160に対して一つのエントリが存在する。
【0129】
ボリュームID1311は、ボリューム160の識別情報を格納するフィールドである。第1基盤評価値1312及び第2基盤評価値1313は、ボリューム160の評価値(第1基盤評価値及び第2基盤評価値)を格納するフィールドである。第1基盤評価値及び第2基盤評価値の詳細は後述する。
【0130】
図14は、実施例1の閾値情報231のデータ構造の一例を示す図である。
【0131】
閾値情報231は、3Tier閾値テーブル1400及びHCI閾値テーブル1410を含む。
【0132】
3Tier閾値テーブル1400は、ストレージID1401及びマイグレーション閾値1402を含むエントリを格納する。一つのストレージシステム122に対して一つのエントリが存在する。
【0133】
ストレージID1401は、3Tier型の基盤110に含まれるストレージシステム122の識別情報を格納するフィールドである。マイグレーション閾値1402は、3Tier型の基盤110上で稼働する業務システムのマイグレーションの要否を判定するための閾値を格納するフィールドである。
【0134】
HCI閾値テーブル1410は、クラスタID1411及びマイグレーション閾値1412を含むエントリを格納する。一つのHCI型の基盤111(クラスタ)に対して一つのエントリが存在する。
【0135】
クラスタID1411は、HCI型の基盤111(クラスタ)の識別情報を格納するフィールドである。マイグレーション閾値1412は、HCI型の基盤111上で稼働する業務システムのマイグレーションの要否を判定するための閾値を格納するフィールドである。
【0136】
図15は、実施例1のマイグレーション要否判定情報232のデータ構造の一例を示す図である。マイグレーション要否判定情報232は、業務システムのマイグレーションの要否判定の結果を格納する。
【0137】
マイグレーション要否判定情報232は、3Tierマイグレーション要否判定テーブル1500及びHCIマイグレーション要否判定テーブル1510を含む。
【0138】
3Tierマイグレーション要否判定テーブル1500は、ストレージID1501、プールID1502、及び判定結果1503を含むエントリを格納する。ストレージシステム122及びプール140の一つの組合せに対して一つのエントリが存在する。
【0139】
ストレージID1501は、3Tier型の基盤110に含まれるストレージシステム122の識別情報を格納するフィールドである。プールID1502は、プール140の識別情報を格納するフィールドである。判定結果1503は、プール140を利用している業務システムのマイグレーションが必要か否かを示す値を格納するフィールドである。判定結果1503には、マイグレーションが必要なことを示す「要」及びマイグレーションが不要なことを示す「不要」のいずれかが格納される。
【0140】
HCIマイグレーション要否判定テーブル1510は、サーバID1511及び判定結果1512を含むエントリを格納する。一つのサーバ120に対して一つのエントリが存在する。
【0141】
サーバID1511は、HCI型の基盤111を構成するサーバ120の識別情報を格納するフィールドである。判定結果1512は、サーバID1511に対応するサーバ120の記憶領域を利用している業務システムのマイグレーションが必要か否かを示す値を格納するフィールドである。判定結果1512には、マイグレーションが必要なことを示す「要」及びマイグレーションが不要なことを示す「不要」のいずれかが格納される。
【0142】
図16は、実施例1のパターン評価情報233のデータ構造の一例を示す図である。
【0143】
パターン評価情報233は、3Tierパターン評価テーブル1600及びHCIパターン評価テーブル1610を含む。
【0144】
3Tierパターン評価テーブル1600は、パターンID1601、パターン1602、フィージビリティ1603、及びコスト1604を含むエントリを格納する。一つのマイグレーションパターンに対して一つのエントリが存在する。
【0145】
パターンID1601は、HCI型の基盤111から3Tier型の基盤110へのマイグレーションを定義するマイグレーションパターンの識別情報を格納するフィールドである。
【0146】
パターン1602は、移行対象のボリュームと移行先のプール140との対応関係を示すパターンを格納するフィールド群である。パターン1602は移行対象のボリュームの数だけフィールドを含む。各フィールドには移行先のプール140に関する情報が格納される。
【0147】
フィージビリティ1603は、マイグレーションパターンに対応するマイグレーションが実行可能か否かを示す値を格納するフィールドである。フィージビリティ1603には、マイグレーションパターンに対応するマイグレーションが実行できることを示す「可」及びマイグレーションパターンに対応するマイグレーションが実行できないことを示す「不可」のいずれかが格納される。
【0148】
コスト1604は、マイグレーションパターンに対応するマイグレーションの実行後の業務システムの運用に要するコストを格納するフィールドである。
【0149】
HCIパターン評価テーブル1610は、パターンID1611、パターン1612、フィージビリティ1613、及びコスト1614を含むエントリを格納する。一つのマイグレーションパターンに対して一つのエントリが存在する。
【0150】
パターンID1611は、3Tier型の基盤110からHCI型の基盤111へのマイグレーションを定義するマイグレーションパターンの識別情報を格納するフィールドである。
【0151】
パターン1612は、移行対象のボリュームと移行先のサーバ120との対応関係を示すパターンを格納するフィールド群である。パターン1612は移行対象のボリュームの数だけフィールドを含む。各フィールドには移行先のサーバ120に関する情報が格納される。
【0152】
フィージビリティ1613は、マイグレーションパターンに対応するマイグレーションが実行可能か否かを示す値を格納するフィールドである。フィージビリティ1613には、マイグレーションパターンに対応するマイグレーションが実行できることを示す「可」及びマイグレーションパターンに対応するマイグレーションが実行できないことを示す「不可」のいずれかが格納される。
【0153】
コスト1614は、マイグレーションパターンに対応するマイグレーションの実行後の業務システムの運用に要するコストを格納するフィールドである。
【0154】
次に、管理サーバ100が実行する処理について説明する。
【0155】
図17は、実施例1の管理サーバ100が実行する監視処理の一例を説明するフローチャートである。
【0156】
監視部210は、周期的に以下で説明する処理を実行する。なお、実行周期は任意に設定できる。
【0157】
監視部210は、基盤システム101から基盤110、110の稼働データを取得する(ステップS101)。稼働データの取得方法は公知の技術を用いればよいため詳細な説明は省略する。
【0158】
次に、監視部210は、取得した稼働データに基づいて監視情報を更新する(ステップS102)。
【0159】
例えば、監視部210は、取得した稼働データを監視情報に格納する。また、監視部210は、稼働データを用いた変換処理及び統計処理を実行し、処理結果を監視情報に格納してもよい。実施例1では、3Tierサーバ監視情報224、3Tierプール監視情報225、3Tierボリューム監視情報226、HCIサーバ監視情報227、HCIプール監視情報228、及びHCIボリューム監視情報229が更新される。
【0160】
次に、監視部210は、待ち状態に移行し(ステップS103)、一定時間(t)経過した後、ステップS101に戻り、同様の処理を実行する。
【0161】
なお、監視部210は、実行指示を受け付けた場合、ステップS101及びステップS102の処理を実行してもよい。
【0162】
図18は、実施例1の管理サーバ100が実行するマイグレーション制御処理の概要を説明するフローチャートである。
【0163】
分析部211は、実行契機を検知した場合、又は、実行指示を受け付けた場合、以下で説明する処理を実行する。なお、分析部211は、周期的に、以下で説明する処理を実行してもよい。監視処理及びマイグレーション制御処理は、同期するように実行されてよいし、非同期で実行されてもよい。
【0164】
分析部211は、基盤システム101を利用している業務システムの基盤の適性を評価する評価値を算出するために、評価値算出処理を実行する(ステップS201)。評価値算出処理の詳細は
図19を用いて説明する。
【0165】
次に、分析部211は、マイグレーション閾値算出処理を実行する(ステップS202)。マイグレーション閾値算出処理の詳細は
図20を用いて説明する。
【0166】
次に、分析部211は、基盤110、111の稼働状態、評価値、及び閾値に基づいて、マイグレーション候補の業務システムを選択するために、マイグレーション候補選択処理を実行する(ステップS203)。本実施例では、ボリューム160単位でマイグレーション候補の業務システムが選択される。マイグレーション候補選択処理の詳細は
図21A及び
図21Bを用いて説明する。
【0167】
次に、分析部211は、マイグレーション候補の業務システムの優先順位を決定するために、優先順位決定処理を実行する(ステップS204)。優先順位決定処理の詳細は
図22を用いて説明する。
【0168】
次に、分析部211は、マイグレーションパターンの生成及び評価を行うマイグレーションパターン評価処理を実行する(ステップS205)。マイグレーションパターン評価処理の詳細は
図23A、
図23B、
図23C、及び
図23Dを用いて説明する。
【0169】
次に、分析部211は、業務システムのマイグレーション処理を実行する(ステップS206)。業務システムのマイグレーション処理の詳細は
図24を用いて説明する。
【0170】
評価値算出処理、マイグレーション閾値算出処理、マイグレーション候補選択処理、及び優先順位決定処理は、移行元の基盤に関する処理である。マイグレーションパターン評価処理は、移行先の基盤に関する処理である。
【0171】
図19は、実施例1の管理サーバ100が実行する評価値算出処理の一例を説明するフローチャートである。
【0172】
分析部211は、3Tier型の基盤110のプール140を利用するボリューム160のループ処理を開始する(ステップS301)。
【0173】
具体的には、分析部211は、業務システムの構成情報を参照し、3Tier型の基盤110を利用している業務システムのボリューム160を特定する。分析部211は、特定されたボリューム160の中から第1ターゲットボリューム160を一つ選択する。
【0174】
次に、分析部211は、第1ターゲットボリューム160の第1基盤評価値を算出する(ステップS302)。具体的には、以下のような処理が実行される。
【0175】
(S302−1)分析部211は、3Tierボリューム監視情報226を参照し、最新、かつ、ボリュームID902に第1ターゲットボリューム160の識別情報が格納されるエントリを検索する。分析部211は、検索されたエントリをワークエリアに一時的に格納する。
【0176】
(S302−2)分析部211は、3Tier構成情報220を参照し、ストレージID301及びプールID302が検索されたエントリのストレージID903及びプールID904と一致するエントリを検索する。分析部211は、検索されたエントリをワークエリアに一時的に格納する。
【0177】
(S302−3)分析部211は、3Tier型の基盤110における、第1ターゲットボリューム160の計算リソース及びストレージリソースの使用割合の比を第1基盤評価値として算出する。例えば、分析部211は、式(1)に基づいて第1基盤評価値を算出する。
【0178】
【数1】
【0179】
使用量及びMP使用率は、3Tierボリューム監視情報226から取得されたエントリの使用量905及びMP使用率907の値である。プール容量、容量閾値、及びMP閾値は、3Tier構成情報220から取得されたエントリの容量303、容量閾値304、及びMP閾値305の値である。
【0180】
第1基盤評価値は、業務システム(ボリューム160)の計算リソース及びストレージリソースの使用割合のバランスを表す指標である。第1基盤評価値が1に近い値であるほど、計算リソース及びストレージリソースの使用割合に偏りがないことを示す。
【0181】
業務システムの計算リソースの使用割合及びストレージリソースの使用割合が等しい場合、当該業務システムに対する計算リソース及びストレージリソースは同程度の割合で追加すればよい。この場合、サーバ120単位でリソースの増減が可能なHCI型の基盤110の利用が推奨される。一方、業務システムの計算リソースの使用割合及びストレージリソースの使用割合に偏りがある場合、当該業務システムに対する計算リソース及びストレージリソースの割当量はいずれかのリソースの割当量を他方のリソースより多くする必要がある。この場合、サーバ120及びストレージシステム122を別々に増減可能な3Tier型の基盤110の利用が推奨される。
【0182】
したがって、第1基盤評価値は業務システム(ボリューム160)に適している基盤を判定するための指標として利用できる。
【0183】
以上が、ステップS302の処理の説明である。
【0184】
次に、分析部211は、第1ターゲットボリューム160の第2基盤評価値を算出する(ステップS303)。
【0185】
具体的には、分析部211は、基盤の計算リソースの使用量のうちのストレージ機能の計算リソースの使用量の割合を第2基盤評価値として算出する。例えば、分析部211は、式(2)に基づいて第2基盤評価値を算出する。
【0186】
【数2】
【0187】
MP使用率及びMP使用率(機能)は、3Tierボリューム監視情報226から取得されたエントリのMP使用率907及びMP使用率(機能)908の値である。
【0188】
第2基盤評価値は、業務システム(ボリューム160)のストレージ機能の影響の大きさ表す。第2基盤評価値が1に近い値であるほど、ストレージ機能の負荷が大きい業務システムであることを示す。ストレージ機能の負荷が大きい業務システムは、ストレージリソースを柔軟に変更可能な3Tier型の基盤110の利用が推奨される。
【0189】
したがって、第2基盤評価値は業務システム(ボリューム160)に適している基盤を判定するための指標として利用できる。
【0190】
次に、分析部211は、ボリューム評価情報230を更新する(ステップS304)。
【0191】
具体的には、分析部211は、3Tierボリューム評価テーブル1300を参照し、ボリュームID1301に第1ターゲットボリューム160の識別情報が設定されたエントリを検索する。分析部211は、検索されたエントリの第1基盤評価値1302及び第2基盤評価値1303に、算出された第1基盤評価値及び第2基盤評価値を設定する。
【0192】
なお、ボリュームID1301に第1ターゲットボリューム160の識別情報が設定されたエントリが存在しない場合、分析部211は、3Tierボリューム評価テーブル1300にエントリを追加し、追加されたエントリのボリュームID1301に第1ターゲットボリューム160の識別情報を設定する。また、分析部211は、追加されたエントリの第1基盤評価値1302及び第2基盤評価値1303に、算出された第1基盤評価値及び第2基盤評価値を設定する。
【0193】
なお、分析部211は、ボリューム評価情報230を更新した後、ワークエリアに格納されるエントリを削除する。
【0194】
次に、分析部211は、3Tier型の基盤110のプール140を利用する全てのボリューム160の処理が完了したか否かを判定する(ステップS305)。
【0195】
3Tier型の基盤110のプール140を利用する全てのボリューム160の処理が完了していない場合、分析部211は、ステップS301に戻り、同様の処理を実行する。
【0196】
3Tier型の基盤110のプール140を利用する全てのボリューム160の処理が完了した場合、分析部211は、HCI型の基盤111のデータストア150を利用するボリューム160のループ処理を開始する(ステップS306)。
【0197】
具体的には、分析部211は、業務システムの構成情報を参照し、HCI型の基盤111を利用している業務システムのボリューム160を特定する。分析部211は、特定されたボリューム160の中から第2ターゲットボリューム160を一つ選択する。
【0198】
次に、分析部211は、第2ターゲットボリューム160の第1基盤評価値を算出する(ステップS307)。具体的には、以下のような処理が実行される。
【0199】
(S307−1)分析部211は、HCIボリューム監視情報229を参照し、最新、かつ、ボリュームID1202に第2ターゲットボリューム160の識別情報が格納されるエントリを検索する。分析部211は、検索されたエントリをワークエリアに一時的に格納する。
【0200】
(S307−2)分析部211は、HCI構成情報222を参照し、クラスタID501が検索されたエントリのクラスタID1204と一致するエントリを検索する。分析部211は、検索されたエントリをワークエリアに一時的に格納する。
【0201】
(S307−3)分析部211は、HCIサーバ情報223を参照し、クラスタID602が検索されたエントリのクラスタID1204と一致するエントリを検索する。分析部211は、検索されたエントリをワークエリアに一時的に格納する。
【0202】
(S307−4)分析部211は、HCI型の基盤111における、第2ターゲットボリューム160の計算リソース及びストレージリソースの使用割合の比を第1基盤評価値として算出する。例えば、分析部211は、式(3)に基づいて第1基盤評価値を算出する。
【0203】
【数3】
【0204】
使用量及びCPU使用率は、HCIボリューム監視情報229から取得されたエントリの使用量1205及びCPU使用率1207の値である。容量及び容量閾値は、HCI構成情報222から取得されたエントリの容量502及び容量閾値503の値である。CPU閾値は、HCIサーバ情報223から取得されたエントリのCPU閾値603の値である。
【0205】
次に、分析部211は、第2ターゲットボリューム160の第2基盤評価値を算出する(ステップS308)。
【0206】
具体的には、分析部211は、基盤の計算リソースの使用量のうちのストレージ機能の計算リソースの使用量の割合を第2基盤評価値として算出する。例えば、分析部211は、式(4)に基づいて第2基盤評価値を算出する。
【0207】
【数4】
【0208】
CPU使用率及びCPU使用率(機能)は、HCIボリューム監視情報229から取得されたエントリのCPU使用率1207及びCPU使用率(機能)1208の値である。
【0209】
次に、分析部211は、ボリューム評価情報230を更新する(ステップS309)。
【0210】
具体的には、分析部211は、HCIボリューム評価テーブル1310を参照し、ボリュームID1311に第2ターゲットボリューム160の識別情報が設定されたエントリを検索する。分析部211は、検索されたエントリの第1基盤評価値1312及び第2基盤評価値1313に、算出された第1基盤評価値及び第2基盤評価値を設定する。
【0211】
なお、ボリュームID1311に第2ターゲットボリューム160の識別情報が設定されたエントリが存在しない場合、分析部211は、HCIボリューム評価テーブル1310にエントリを追加し、追加されたエントリのボリュームID1311に第2ターゲットボリューム160の識別情報を設定する。また、分析部211は、追加されたエントリの第1基盤評価値1312及び第2基盤評価値1313に、算出された第1基盤評価値及び第2基盤評価値を設定する。
【0212】
なお、分析部211は、ボリューム評価情報230を更新した後、ワークエリアに格納されるエントリを削除する。
【0213】
次に、分析部211は、HCI型の基盤111のデータストア150を利用する全てのボリューム160の処理が完了したか否かを判定する(ステップS310)。
【0214】
HCI型の基盤111のデータストア150を利用する全てのボリューム160の処理が完了していない場合、分析部211は、ステップS306に戻り、同様の処理を実行する。
【0215】
HCI型の基盤111のデータストア150を利用する全てのボリューム160の処理が完了した場合、分析部211は評価値算出処理を終了する。
【0216】
図20は、実施例1の管理サーバ100が実行するマイグレーション閾値算出処理の一例を説明するフローチャートである。
【0217】
分析部211は、閾値情報231を初期化する(ステップS401)。
【0218】
次に、分析部211は、3Tier型の基盤110のストレージシステム122のループ処理を開始する(ステップS402)。
【0219】
具体的には、分析部211は、3Tier構成情報220を参照し、3Tierの基盤110に含まれるストレージシステム122を特定する。分析部211は、特定されたストレージシステム122の中からターゲットストレージシステム122を一つ選択する。
【0220】
次に、分析部211は、ターゲットストレージシステム122のマイグレーション閾値を算出する(ステップS403)。具体的には、以下のような処理が実行される。
【0221】
(S403−1)分析部211は、3Tier構成情報220を参照し、ストレージID301にターゲットストレージシステム122の識別情報が設定されるエントリを検索する。分析部211は検索されたエントリをワークエリアに格納する。
【0222】
(S403−2)分析部211は、3Tierプール監視情報225から、ストレージID802にターゲットストレージシステム122の識別情報が格納され、かつ、最新のエントリを取得する。また、分析部211は、3Tierプール監視情報225から、ストレージID802にターゲットストレージシステム122の識別情報が格納され、かつ、最新の日時から所定時間t2前のエントリを取得する。t2はリソース増設に必要な期間であり、任意に設定できる。
【0223】
(S403−3)分析部211は、3Tierプール監視情報225から取得された二つのエントリの使用量804の差をt2で除算した値を、ストレージリソースの増加率として算出する。また、分析部211は、3Tierプール監視情報225から取得された二つのエントリのMP使用率805の差をt2で除算した値を、計算リソースの増加率として算出する。
【0224】
(S403−4)分析部211は、3Tier構成情報220から取得されたエントリの容量閾値304と、ストレージリソースの増加率とを式(5)に代入して、ストレージリソースの閾値を算出する。
【0225】
【数5】
【0226】
(S403−5)分析部211は、3Tier構成情報220から取得されたエントリのMP閾値305と、計算リソースの増加率とを式(6)に代入して、計算リソースの閾値を算出する。
【0227】
【数6】
【0228】
(S403−6)分析部211は、ストレージリソースの閾値及び計算リソースの閾値を比較し、大きい方の値をストレージシステム122のマイグレーション閾値に決定する。
【0229】
以上が、ステップS403の処理の説明である。
【0230】
次に、分析部211は、閾値情報231を更新する(ステップS404)。
【0231】
具体的には、分析部211は、3Tier閾値テーブル1400を参照し、ストレージID1401にターゲットストレージシステム122の識別情報が設定されたエントリを検索する。分析部211は、検索されたエントリのマイグレーション閾値1402に、算出されたマイグレーション閾値を設定する。
【0232】
なお、ストレージID1401にターゲットストレージシステム122の識別情報が設定されたエントリが存在しない場合、分析部211は、3Tier閾値テーブル1400にエントリを追加し、追加されたエントリのストレージID1401にターゲットストレージシステム122の識別情報を設定する。また、分析部211は、追加されたエントリのマイグレーション閾値1402に、算出されたマイグレーション閾値を設定する。
【0233】
なお、分析部211は、閾値情報231を更新した後、ワークエリアに格納されるエントリを削除する。
【0234】
次に、分析部211は、3Tierの基盤110の全てのストレージシステム122の処理が完了したか否かを判定する(ステップS405)。
【0235】
3Tier型の基盤110の全てのストレージシステム122の処理が完了していない場合、分析部211は、ステップS402に戻り、同様の処理を実行する。
【0236】
3Tier型の基盤110の全てのストレージシステム122の処理が完了した場合、分析部211は、HCI型の基盤111のループ処理を開始する(ステップS406)。
【0237】
具体的には、分析部211は、HCI構成情報222を参照し、HCI型の基盤111(クラスタ)を特定する。分析部211は、特定されたクラスタの中からターゲットクラスタを一つ選択する。
【0238】
次に、分析部211は、ターゲットクラスタのマイグレーション閾値を算出する(ステップS407)。具体的には、以下のような処理が実行される。
【0239】
(S407−1)分析部211は、HCI構成情報222を参照し、クラスタID501にターゲットクラスタの識別情報が設定されるエントリを検索する。分析部211は検索されたエントリをワークエリアに格納する。
【0240】
(S407−2)分析部211は、HCIサーバ情報223を参照し、クラスタID602にターゲットクラスタの識別情報が設定されるエントリを検索する。分析部211は検索されたエントリをワークエリアに格納する。
【0241】
(S407−3)分析部211は、HCIプール監視情報228から、クラスタID1102にターゲットクラスタの識別情報が格納され、かつ、最新のエントリを取得する。また、分析部211は、HCIプール監視情報228から、クラスタID1102にターゲットクラスタの識別情報が格納され、かつ、最新の日時から所定時間t2前のエントリを取得する。t2はリソース増設に必要な期間であり、任意に設定できる。
【0242】
(S407−4)分析部211は、HCIプール監視情報228から取得された二つのエントリの使用量1103の差をt2で除算した値を、ストレージリソースの増加率として算出する。
【0243】
(S407−5)分析部211は、HCI構成情報222から取得されたエントリの容量閾値503と、ストレージリソースの増加率とを式(7)に代入して、ストレージリソースの閾値を算出する。
【0244】
【数7】
【0245】
(S407−6)分析部211は、HCIサーバ監視情報227から、サーバID1002にターゲットクラスタに所属するサーバ120の識別情報が格納され、かつ、最新のエントリを取得する。また、分析部211は、HCIサーバ監視情報227から、サーバID1002にターゲットクラスタに所属するサーバ120の識別情報が格納され、かつ、最新の日時から所定時間t2前のエントリを取得する。t2はリソース増設に必要な期間であり、任意に設定できる。
【0246】
(S407−7)分析部211は、HCIサーバ監視情報227から取得された二つのエントリのCPU使用率1003の差をt2で除算した値を、計算リソースの増加率として算出する。なお、ターゲットクラスタに所属するサーバ120が二つ以上の場合、各サーバ120について計算リソースの増加率が算出される。
【0247】
(S407−8)分析部211は、HCIサーバ情報223から取得されたエントリのCPU閾値603と、計算リソースの増加率とを式(8)に代入して、計算リソースの閾値を算出する。なお、ターゲットクラスタに所属するサーバ120が二つ以上の場合、各サーバ120について計算リソースの閾値が算出される。
【0248】
【数8】
【0249】
(S407−9)分析部211は、ストレージリソースの閾値及び計算リソースの閾値を比較し、大きい方の値をターゲットクラスタのマイグレーション閾値に決定する。
【0250】
以上が、ステップS407の処理の説明である。
【0251】
次に、分析部211は、閾値情報231を更新する(ステップS408)。
【0252】
具体的には、分析部211は、HCI閾値テーブル1410を参照し、クラスタID1411にターゲットクラスタの識別情報が設定されたエントリを検索する。分析部211は、検索されたエントリのマイグレーション閾値1412に、算出されたマイグレーション閾値を設定する。
【0253】
なお、クラスタID1411にターゲットクラスタの識別情報が設定されたエントリが存在しない場合、分析部211は、HCI閾値テーブル1410にエントリを追加し、追加されたエントリのクラスタID1411にターゲットクラスタの識別情報を設定する。また、分析部211は、追加されたエントリのマイグレーション閾値1412に、算出されたマイグレーション閾値を設定する。
【0254】
なお、分析部211は、閾値情報231を更新した後、ワークエリアに格納されるエントリを削除する。
【0255】
次に、分析部211は、全てのHCI型の基盤111の処理が完了したか否かを判定する(ステップS409)。
【0256】
全てのHCI型の基盤111の処理が完了していない場合、分析部211は、ステップS406に戻り、同様の処理を実行する。
【0257】
全てのHCI型の基盤111の処理が完了した場合、分析部211はマイグレーション閾値算出処理を終了する。
【0258】
基盤のリソースの使用状態に合わせて動的に閾値を設定することによって、リソースの使用量の増加率が増えている基盤上の業務システムが優先的にマイグレーションされるように制御することができる。
【0259】
図21A及び
図21Bは、実施例1の管理サーバ100が実行するマイグレーション候補選択処理の一例を説明するフローチャートである。
【0260】
分析部211は、マイグレーション要否判定情報232を初期化する(ステップS501)。
【0261】
次に、分析部211は、3Tier型の基盤110のプール140のループ処理を開始する(ステップS502)。
【0262】
具体的には、分析部211は、3Tier構成情報220からターゲットエントリを一つ選択する。
【0263】
次に、分析部211は、プール140のリソース評価値を算出する(ステップS503)。具体的には、以下のような処理が実行される。
【0264】
(S503−1)分析部211は、3Tierプール監視情報225を参照し、ストレージID802及びプールID803が、ターゲットエントリのストレージID301及びプールID302に一致し、かつ、最新のエントリを検索する。分析部211は、検索されたエントリをワークエリアに格納する。
【0265】
(S503−2)分析部211は、3Tier閾値テーブル1400を参照し、ストレージID1401がターゲットエントリのストレージID301と一致するエントリを検索する。分析部211は、検索されたエントリをワークエリアに格納する。
【0266】
(S503−3)分析部211は、式(9)及び式(10)に基づいて、第1リソース評価値及び第2リソース評価値を算出する。
【0267】
【数9】
【0268】
【数10】
【0269】
使用量及びMP使用率は、3Tierプール監視情報225から取得したエントリの使用量804及びMP使用率805の値である。容量及び容量閾値は、ターゲットエントリの容量303及び容量閾値304の値である。
【0270】
以上がステップS503の処理の説明である。
【0271】
次に、分析部211は、ターゲットエントリに対応するプール140を利用する業務システムのマイグレーションが必要か否かを判定する(ステップS504)。
【0272】
具体的には、分析部211は、第1リソース評価値及び第2リソース評価値のいずれかがマイグレーション閾値より大きいか否かを判定する。なお、マイグレーション閾値は3Tier閾値テーブル1400から取得された値である。第1リソース評価値及び第2リソース評価値のいずれかがマイグレーション閾値より大きい場合、分析部211は、ターゲットエントリに対応するプール140を利用する業務システムのマイグレーションが必要であると判定する。
【0273】
ターゲットエントリに対応するプール140を利用する業務システムのマイグレーションが必要であると判定された場合、分析部211は、マイグレーション要否判定情報232を更新する(ステップS505)。その後、分析部211はステップS507に進む。
【0274】
具体的には、分析部211は、3Tierマイグレーション要否判定テーブル1500を参照し、ストレージID1501及びプールID1502がターゲットエントリのストレージID301及びプールID302に一致するエントリを検索する。分析部211は、検索されたエントリの判定結果1503に「要」を設定する。
【0275】
なお、ストレージID1501及びプールID1502がターゲットエントリのストレージID301及びプールID302に一致するエントリが存在しない場合、分析部211は、3Tierマイグレーション要否判定テーブル1500にエントリを追加し、追加されたエントリのストレージID1501及びプールID1502にターゲットエントリのストレージID301及びプールID302を設定する。また、分析部211は、追加されたエントリの判定結果1503に「要」を設定する。
【0276】
なお、分析部211は、マイグレーション要否判定情報232を更新した後、ワークエリアに格納されるエントリを削除する。
【0277】
ターゲットエントリに対応するプール140を利用する業務システムのマイグレーションが必要でないと判定された場合、分析部211は、マイグレーション要否判定情報232を更新する(ステップS506)。その後、分析部211はステップS507に進む。
【0278】
具体的には、分析部211は、3Tierマイグレーション要否判定テーブル1500を参照し、ストレージID1501及びプールID1502がターゲットエントリのストレージID301及びプールID302に一致するエントリを検索する。分析部211は、検索されたエントリの判定結果1503に「不要」を設定する。
【0279】
なお、ストレージID1501及びプールID1502がターゲットエントリのストレージID301及びプールID302に一致するエントリが存在しない場合、分析部211は、3Tierマイグレーション要否判定テーブル1500にエントリを追加し、追加されたエントリのストレージID1501及びプールID1502にターゲットエントリのストレージID301及びプールID302を設定する。また、分析部211は、追加されたエントリの判定結果1503に「不要」を設定する。
【0280】
なお、分析部211は、マイグレーション要否判定情報232を更新した後、ワークエリアに格納されるエントリを削除する。
【0281】
ステップS507では、分析部211は、3Tier型の基盤110の全てのプール140の処理が完了したか否かを判定する(ステップS507)。
【0282】
3Tier型の基盤110の全てのプール140の処理が完了していない場合、分析部211は、ステップS502に戻り、同様の処理を実行する。
【0283】
3Tier型の基盤110の全てのプール140の処理が完了した場合、分析部211は、HCI型の基盤111のループ処理を開始する(ステップS508)。
【0284】
具体的には、分析部211は、HCI構成情報222を参照し、HCI型の基盤111(クラスタ)を特定する。分析部211は、特定されたクラスタの中からターゲットクラスタを一つ選択する。
【0285】
次に、分析部211は、ターゲットクラスタに所属するサーバ120のループ処理を開始する(ステップS509)。
【0286】
具体的には、分析部211は、HCIサーバ情報223を参照し、クラスタID602にターゲットクラスタの識別情報が設定されるエントリを検索する。分析部211は、検索されたエントリを一つ選択する。選択されたエントリに対応するサーバ120がターゲットサーバ120となる。
【0287】
次に、分析部211は、ターゲットサーバのリソース評価値を算出する(ステップS510)。具体的には以下のような処理が実行される。
【0288】
(S510−1)分析部211は、HCI構成情報222を参照し、クラスタID501にターゲットクラスタの識別情報が格納されるエントリを検索する。分析部211は、検索されたエントリをワークエリアに格納する。
【0289】
(S510−2)分析部211は、HCIプール監視情報228を参照し、クラスタID1102にターゲットクラスタの識別情報が格納され、かつ、最新のエントリを検索する。分析部211は、検索されたエントリをワークエリアに格納する。また、分析部211は、HCIサーバ監視情報227を参照し、サーバID1002にターゲットサーバ120の識別情報が格納され、かつ、最新のエントリを検索する。ターゲットクラスタに所属するサーバ120が二つ以上の場合、複数のエントリがワークエリアに格納される。
【0290】
(S510−3)分析部211は、HCI閾値テーブル1410を参照し、クラスタID1411にターゲットクラスタの識別情報が格納されるエントリを検索する。分析部211は、検索されたエントリをワークエリアに格納する。
【0291】
(S510−4)分析部211は、式(11)及び式(12)に基づいて、第1リソース評価値及び第2リソース評価値を算出する。
【0292】
【数11】
【0293】
【数12】
【0294】
使用量は、HCIプール監視情報228から取得したエントリの使用量1103の値である。CPU使用率は、HCIサーバ監視情報227から取得したエントリのCPU使用率1003の値である。容量及び容量閾値は、HCI構成情報222から取得したエントリの容量502及び容量閾値503の値である。
【0295】
以上がステップS510の処理の説明である。
【0296】
次に、分析部211は、ターゲットサーバ120を利用する業務システムのマイグレーションが必要か否かを判定する(ステップS511)。
【0297】
具体的には、分析部211は、第1リソース評価値及び第2リソース評価値のいずれかがマイグレーション閾値より大きいか否かを判定する。なお、マイグレーション閾値はHCI閾値テーブル1410から取得された値である。第1リソース評価値及び第2リソース評価値のいずれかがマイグレーション閾値より大きい場合、分析部211は、ターゲットサーバ120を利用する業務システムのマイグレーションが必要であると判定する。
【0298】
ターゲットサーバ120を利用する業務システムのマイグレーションが必要であると判定された場合、分析部211は、マイグレーション要否判定情報232を更新する(ステップS512)。その後、分析部211はステップS514に進む。
【0299】
具体的には、分析部211は、HCIマイグレーション要否判定テーブル1510を参照し、サーバID1511にターゲットサーバ120の識別情報が格納されるエントリを検索する。分析部211は、検索されたエントリの判定結果1512に「要」を設定する。
【0300】
なお、サーバID1511にターゲットサーバ120の識別情報が格納されるエントリが存在しない場合、分析部211は、HCIマイグレーション要否判定テーブル1510にエントリを追加し、追加されたエントリのサーバID1511にターゲットサーバ120の識別情報を設定する。また、分析部211は、追加されたエントリの判定結果1512に「要」を設定する。
【0301】
なお、分析部211は、マイグレーション要否判定情報232を更新した後、ワークエリアに格納されるエントリを削除する。
【0302】
ターゲットサーバ120を利用する業務システムのマイグレーションが必要でないと判定された場合、分析部211は、マイグレーション要否判定情報232を更新する(ステップS513)。その後、分析部211はステップS514に進む。
【0303】
具体的には、分析部211は、HCIマイグレーション要否判定テーブル1510を参照し、サーバID1511にターゲットサーバ120の識別情報が格納されるエントリを検索する。分析部211は、検索されたエントリの判定結果1512に「不要」を設定する。
【0304】
なお、サーバID1511にターゲットサーバ120の識別情報が格納されるエントリが存在しない場合、分析部211は、HCIマイグレーション要否判定テーブル1510にエントリを追加し、追加されたエントリのサーバID1511にターゲットサーバ120の識別情報を設定する。また、分析部211は、追加されたエントリの判定結果1512に「不要」を設定する。
【0305】
なお、分析部211は、マイグレーション要否判定情報232を更新した後、ワークエリアに格納されるエントリを削除する。
【0306】
ステップS514では、分析部211は、ターゲットクラスタに所属する全てのサーバ120の処理が完了したか否かを判定する(ステップS514)。
【0307】
ターゲットクラスタに所属する全てのサーバ120の処理が完了していない場合、分析部211は、ステップS509に戻り、同様の処理を実行する。
【0308】
ターゲットクラスタに所属する全てのサーバ120の処理が完了した場合、分析部211は、全てのHCI型の基盤111の処理が完了したか否かを判定する(ステップS515)。
【0309】
全てのHCI型の基盤111の処理が完了していない場合、分析部211は、ステップS508に戻り、同様の処理を実行する。
【0310】
全てのHCI型の基盤111の処理が完了した場合、分析部211はマイグレーション候補選択処理を終了する。
【0311】
ステップS502からステップS507の処理によって、3Tier型の基盤110のマイグレーションが必要なプール140を特定できる。また、ステップS508からステップS515の処理によって、HCI型の基盤111のマイグレーションが必要なサーバ120を特定できる。
【0312】
図22は、実施例1の管理サーバ100が実行する優先順位決定処理の一例を説明するフローチャートである。
【0313】
分析部211は、3Tier型の基盤110のマイグレーションの要否判定の結果に基づいて、マイグレーション候補ボリュームを決定する(ステップS601)。具体的には、以下のような処理が実行される。
【0314】
(S601−1)分析部211は、3Tierマイグレーション要否判定テーブル1500を参照し、判定結果1503に「要」が設定されたエントリを検索する。分析部211は検索されたエントリをワークエリアに格納する。分析部211は、検索されたエントリの中からターゲットエントリ(ターゲットプール140)を一つ選択する。
【0315】
(S601−2)分析部211は、3Tierボリューム監視情報226を参照し、ストレージID903及びプールID904がターゲットエントリのストレージID1501及びプールID1502に一致し、かつ、最新のエントリを検索する。分析部211は、検索されたエントリをワークエリアに格納する。分析部211は、検索されたエントリの中からターゲットエントリ(ターゲットボリューム160)を一つ選択する。
【0316】
(S601−3)分析部211は、3Tierボリューム評価テーブル1300を参照し、ボリュームID1301にターゲットボリューム160の識別情報が格納されるエントリを検索する。分析部211は、検索されたエントリにフラグを付与する。
【0317】
(S601−4)分析部211は、全てのボリューム160の処理が完了したか否かを判定する。全てのボリューム160の処理が完了していない場合、分析部211は新たなターゲットボリューム160を選択し、(S601−3)に戻る。
【0318】
(S601−5)全てのボリューム160の処理が完了した場合、分析部211は、全てのプール140の処理が完了したか否かを判定する。全てのプール140の処理が完了していない場合、分析部211は、新たなターゲットプール140を選択し、(S601−2)に戻る。
【0319】
(S601−6)全てのプール140の処理が完了した場合、分析部211は、3Tierボリューム評価テーブル1300からフラグが付与されていないエントリを削除する。3Tierボリューム評価テーブル1300に登録されているボリューム160がマイグレーション候補ボリュームとなる。
【0320】
以上が、ステップS601の処理の説明である。
【0321】
次に、分析部211は、マイグレーション候補ボリュームの移行優先度を算出する(ステップS602)。具体的には、以下のような処理が実行される。
【0322】
(S602−1)分析部211は、3Tierボリューム評価テーブル1300からターゲットエントリを一つ選択する。
【0323】
(S602−2)分析部211は、ターゲットエントリの第1基盤評価値1302及び第2基盤評価値1303を式(13)に代入することによって、移行優先度を算出する。
【0324】
【数13】
【0325】
(S602−3)分析部211は、3Tierボリューム評価テーブル1300の全てのエントリの処理が完了したか否かを判定する。3Tierボリューム評価テーブル1300の全てのエントリの処理が完了していない場合、分析部211は、(S602−1)に戻る。3Tierボリューム評価テーブル1300の全てのエントリの処理が完了した場合、分析部211はステップS602の処理を終了する。
【0326】
以上がステップS602の処理の説明である。
【0327】
次に、分析部211は、移行優先度に基づいて、ボリューム評価情報230を更新する(ステップS603)。
【0328】
具体的には、分析部211は、3Tierボリューム評価テーブル1300のエントリを移行優先度の小さい順にソートする。
【0329】
次に、分析部211は、HCI型の基盤111のマイグレーションの要否判定の結果に基づいて、マイグレーション候補ボリュームを決定する(ステップS604)。具体的には、以下のような処理が実行される。
【0330】
(S604−1)分析部211は、HCIマイグレーション要否判定テーブル1510を参照し、判定結果1512に「要」が設定されたエントリを検索する。分析部211は検索されたエントリをワークエリアに格納する。分析部211は、検索されたエントリの中からターゲットエントリ(ターゲットサーバ120)を一つ選択する。
【0331】
(S604−2)分析部211は、HCIボリューム監視情報229を参照し、サーバID1203にターゲットサーバ120の識別情報が格納され、かつ、最新のエントリを検索する。分析部211は、検索されたエントリをワークエリアに格納する。分析部211は、検索されたエントリの中からターゲットエントリ(ターゲットボリューム160)を一つ選択する。
【0332】
(S604−3)分析部211は、HCIボリューム評価テーブル1310を参照し、ボリュームID1311にターゲットボリューム160の識別情報が格納されるエントリを検索する。分析部211は、検索されたエントリにフラグを付与する。
【0333】
(S604−4)分析部211は、全てのボリューム160の処理が完了したか否かを判定する。全てのボリューム160の処理が完了していない場合、分析部211は新たなターゲットボリューム160を選択し、(S604−3)に戻る。
【0334】
(S604−5)全てのボリューム160の処理が完了した場合、分析部211は、全てのサーバ120の処理が完了したか否かを判定する。全てのサーバ120の処理が完了していない場合、分析部211は、新たなターゲットサーバ120を選択し、(S604−2)に戻る。
【0335】
(S604−6)全てのサーバ120の処理が完了した場合、分析部211は、HCIボリューム評価テーブル1310からフラグが付与されていないエントリを削除する。HCIボリューム評価テーブル1310に登録されているボリューム160がマイグレーション候補ボリュームとなる。
【0336】
以上が、ステップS604の処理の説明である。
【0337】
次に、分析部211は、マイグレーション候補ボリュームの移行優先度を算出する(ステップS605)。具体的には、以下のような処理が実行される。
【0338】
(S605−1)分析部211は、HCIボリューム評価テーブル1310からターゲットエントリを一つ選択する。
【0339】
(S605−2)分析部211は、ターゲットエントリの第1基盤評価値1312及び第2基盤評価値1313を式(14)に代入することによって、移行優先度を算出する。
【0340】
【数14】
【0341】
(S605−3)分析部211は、HCIボリューム評価テーブル1310の全てのエントリの処理が完了したか否かを判定する。HCIボリューム評価テーブル1310の全てのエントリの処理が完了していない場合、分析部211は、(S605−1)に戻る。HCIボリューム評価テーブル1310の全てのエントリの処理が完了した場合、分析部211はステップS605の処理を終了する。
【0342】
以上がステップS605の処理の説明である。
【0343】
次に、分析部211は、移行優先度に基づいて、ボリューム評価情報230を更新する(ステップS606)。その後、分析部211は優先順位決定処理を終了する。
【0344】
具体的には、分析部211は、HCIボリューム評価テーブル1310のエントリを移行優先度の小さい順にソートする。
【0345】
図23A、
図23B、
図23C、及び
図23Dは、実施例1の管理サーバ100が実行するマイグレーションパターン評価処理の一例を説明するフローチャートである。
【0346】
分析部211は、3Tier型の基盤110におけるマイグレーションボリューム160を選択する(ステップS701)。
【0347】
具体的には、分析部211は、3Tierボリューム評価テーブル1300から上から順にn個のエントリを選択する。なお、nは任意に設定できる。選択されたエントリに対応するボリューム160がマイグレーションボリューム160となる。
【0348】
すべてのボリューム160をマイグレーションした場合、移行先の基盤の負荷が増大し、また、移行元及び移行先の基盤の組合せの数も膨大となるため計算量も増大する。そこで、本実施例では、移行するボリューム160の数を予め設定する。
【0349】
また、移行優先度は、第1基盤評価値及び第2基盤評価値に基づいて算出される値であり、業務システムが利用する基盤の適性を評価する値でもある。したがって、移行優先度に基づく業務システムの選択処理は、異なる基盤へのマイグレーションが推奨される基盤を優先的に選択することに対応する。
【0350】
次に、分析部211は、マイグレーションボリューム160のループ処理を開始する(ステップS702)。
【0351】
具体的には、分析部211は、マイグレーションボリューム160の中からターゲットボリューム160を一つ選択する。
【0352】
次に、分析部211は、移行可能なHCI型の基盤111を特定する(ステップS703)。具体的には、以下のような処理が実行される。
【0353】
(S703−1)分析部211は、3Tierサーバ監視情報224及び3Tierプール監視情報225に基づいて、マイグレーションボリューム160を要素として含む業務システムのリソース使用量を算出する。リソース使用量の算出方法は公知の技術であるため詳細な説明は省略する。
【0354】
(S703−2)分析部211は、HCI構成情報222、HCIサーバ情報223、HCIサーバ監視情報227、及びHCIプール監視情報228に基づいて、HCI型の基盤111のリソースの空き容量を算出する。リソースの空き容量の算出方法は公知の技術であるため詳細な説明は省略する。
【0355】
(S703−3)分析部211は、リソースの空き容量が、マイグレーションボリューム160を含む業務システムのリソース使用量以上であるHCI型の基盤111を特定する。さらに、分析部211は、HCIサーバ監視情報227に基づいて、特定されたHCI型の基盤111に属するサーバ120の中からCPU使用率1003が最も小さいサーバ120を選択する。
【0356】
なお、分析部211は、リソースの容量だけではなく、業務システムが利用しているストレージ機能の有無を判定条件に加えてもよい。この場合、リソースの空き容量がリソースの使用量以上、かつ、ストレージ機能を有するHCI型の基盤111のサーバ120が選択される。
【0357】
(S703−4)分析部211は、マイグレーションボリューム160と、HCI型の基盤111の識別情報及びサーバ120の識別情報の組とを対応づけたデータをワークエリアに格納する。(S703−3)において特定されたHCI型の基盤111が複数存在する場合、HCI型の基盤111の数だけデータがワークエリアに格納される。
【0358】
以上がステップS703の処理の説明である。
【0359】
次に、分析部211は、全てのマイグレーションボリューム160の処理が完了したか否かを判定する(ステップS704)。
【0360】
全てのマイグレーションボリューム160の処理が完了していない場合、分析部211は、ステップS702に戻り、同様の処理を実行する。
【0361】
全てのマイグレーションボリューム160の処理が完了した場合、分析部211は、マイグレーションパターンを生成する(ステップS705)。
【0362】
具体的には、分析部211は、マイグレーションボリューム160と移行先のHCI型の基盤111との組合せをマイグレーションパターンとして生成する。分析部211は、HCIパターン評価テーブル1610に、生成されたパターンの数だけエントリを追加し、追加されたエントリのパターンID1611に識別情報を設定する。また、分析部211は、追加されたエントリのパターン1612に生成されたマイグレーションパターンの情報を設定する。
【0363】
次に、分析部211は、HCIパターン評価テーブル1610に登録されたマイグレーションパターンのループ処理を開始する(ステップS706)。
【0364】
具体的には、分析部211は、HCIパターン評価テーブル1610から一つのエントリ(ターゲットパターン)を選択する。
【0365】
次に、分析部211は、各マイグレーションボリューム160を移行先の基盤(HCI型の基盤111)にマイグレーションした場合、移行先の基盤のリソースが不足するか否かを判定する(ステップS707)。
【0366】
移行元の基盤及び移行先の基盤のリソースの不足の判定方法は公知の技術を用いればよい。例えば、分析部211は、各マイグレーションボリューム160について式(15)及び式(16)を満たすか否かを判定する。
【0367】
【数15】
【0368】
【数16】
【0369】
式(15)の移行先の使用率は使用量1103の値であり、移行元の使用量は使用量905の値であり、移行先の容量は容量502の値であり、容量閾値は容量閾値503の値である。式(16)の移行先のCPU使用率はCPU使用率1003の値であり、移行元のMP使用率はMP使用率907の値であり、CPU閾値はCPU閾値603の値である。なお、移行先のHCI型の基盤111が同一であるマイグレーションボリューム160が存在する場合、式(15)の左辺の移行元の使用率は各マイグレーションボリューム160の使用量905の合計値となり、式(16)の左辺移行元のMP使用率は各マイグレーションボリューム160のMP使用率907の合計値となる。
【0370】
全てのマイグレーションボリューム160が式(15)及び式(16)を満たす場合、分析部211は、移行先の基盤のリソースは不足しないと判定する。
【0371】
移行先の基盤のリソースが不足すると判定された場合、分析部211は、パターン評価情報233を更新し(ステップS708)、ステップS715に進む。
【0372】
具体的には、分析部211は、HCIパターン評価テーブル1610のエントリのフィージビリティ1613に「不可」を設定する。
【0373】
移行先の基盤のリソースは不足しないと判定された場合、分析部211は、パターン評価情報233を更新する(ステップS709)。
【0374】
具体的には、分析部211は、HCIパターン評価テーブル1610のエントリのフィージビリティ1613に「可」を設定する。
【0375】
次に、分析部211は、ターゲットパターンのマイグレーションボリューム160のループ処理を開始する(ステップS710)。
【0376】
具体的には、分析部211は、ターゲットパターンのマイグレーションボリューム160の中からターゲットボリューム160を選択する。
【0377】
次に、分析部211は、移行先の基盤がターゲットボリューム160に提供されているストレージ機能を有しているか否かを判定する(ステップS711)。
【0378】
具体的には、分析部211は、ターゲットボリューム160が利用しているプールの機能309と、移行先の基盤の機能506とを比較する。
【0379】
移行先の基盤がターゲットボリューム160に提供されているストレージ機能を有している場合、分析部211は、コストを算出し(ステップS712)、ステップS714に進む。
【0380】
具体的には、分析部211は、式(17)に基づいてコストを算出する。分析部211は、HCIパターン評価テーブル1610のエントリのコスト1504の値に、算出されたコストを加算する。
【0381】
【数17】
【0382】
移行元の使用量は使用量905の値であり、ボリュームコストはボリュームコスト307の値であり、削減率は削減率906の値であり、世代数はコピー311の値である。移行先の使用量は使用量1103の値であり、ボリュームコストはボリュームコスト505の値であり、削減率は削減率1206の値であり、世代数はコピー511の値である。MP使用率はMP使用率907の値であり、MPコストはMPコスト308の値である。CPU使用率はCPU使用率1003の値であり、CPUコストはCPUコスト404の値である。
【0383】
移行先の基盤がターゲットボリューム160に提供されているストレージ機能を有していない場合、分析部211は、コストを算出し(ステップS713)、ステップS714に進む。
【0384】
具体的には、分析部211は、式(18)に基づいてコストを算出する。分析部211は、HCIパターン評価テーブル1610のエントリのコスト1614の値に、算出されたコストを加算する。
【0385】
【数18】
【0386】
移行元の使用量は使用量905の値であり、ボリュームコストはボリュームコスト307の値である。移行先の使用量は使用量1103の値であり、ボリュームコストはボリュームコスト505の値である。MP使用率はMP使用率907の値であり、MPコストはMPコスト308の値である。CPU使用率はCPU使用率1003の値であり、CPUコストはCPUコスト404の値である。
【0387】
ステップS714では、分析部211は、ターゲットパターンの全てのマイグレーションボリュームの処理が完了したか否かを判定する(ステップS714)。
【0388】
ターゲットパターンの全てのマイグレーションボリュームの処理が完了していない場合、分析部211は、ステップS710に戻り、同様の処理を実行する。
【0389】
ターゲットパターンの全てのマイグレーションボリュームの処理が完了した場合、分析部211は、HCIパターン評価テーブル1610に登録された全てのマイグレーションパターンの処理が完了したか否かを判定する(ステップS715)。
【0390】
HCIパターン評価テーブル1610に登録された全てのマイグレーションパターンの処理が完了していない場合、分析部211は、ステップS706に戻り、同様の処理を実行する。
【0391】
HCIパターン評価テーブル1610に登録された全てのマイグレーションパターンの処理が完了した場合、分析部211は、HCI型の基盤111におけるマイグレーションボリューム160を選択する(ステップS716)。
【0392】
具体的には、分析部211は、HCIボリューム評価テーブル1310から上から順にn’個のエントリを選択する。なお、n’は任意に設定できる。選択されたエントリに対応するボリューム160がマイグレーションボリューム160となる。
【0393】
次に、分析部211は、マイグレーションボリューム160のループ処理を開始する(ステップS717)。
【0394】
具体的には、分析部211は、マイグレーションボリューム160の中からターゲットボリューム160を一つ選択する。
【0395】
次に、分析部211は、移行可能な3Tier型の基盤110を特定する(ステップS718)。具体的には、以下のような処理が実行される。
【0396】
(S718−1)分析部211は、HCIサーバ監視情報227、HCIプール監視情報228、及びHCIボリューム監視情報229に基づいて、マイグレーションボリューム160を要素として含む業務システムのリソース使用量を算出する。リソース使用量の算出方法は公知の技術であるため詳細な説明は省略する。
【0397】
(S718−2)分析部211は、3Tier構成情報220、3Tierサーバ構成情報221、3Tierサーバ監視情報224、3Tierプール監視情報225に基づいて、3Tier型の基盤110のリソースの空き容量を算出する。リソースの空き容量の算出方法は公知の技術であるため詳細な説明は省略する。
【0398】
(S718−3)分析部211は、リソースの空き容量が、マイグレーションボリューム160を含む業務システムのリソース使用量以上である3Tier型の基盤110を特定する。
【0399】
なお、分析部211は、リソースの容量だけではなく、業務システムが利用しているストレージ機能の有無を判定条件に加えてもよい。この場合、リソースの空き容量がリソースの使用量以上、かつ、ストレージ機能を有する3Tier型の基盤110が特定される。
【0400】
(S718−4)分析部211は、マイグレーションボリューム160と、3Tier型の基盤110の識別情報とを対応づけたデータをワークエリアに格納する。(S718−3)において特定された3Tier型の基盤110が複数存在する場合、3Tier型の基盤110の数だけデータがワークエリアに格納される。
【0401】
以上がステップS718の処理の説明である。
【0402】
次に、分析部211は、全てのマイグレーションボリューム160の処理が完了したか否かを判定する(ステップS719)。
【0403】
全てのマイグレーションボリューム160の処理が完了していない場合、分析部211は、ステップS717に戻り、同様の処理を実行する。
【0404】
全てのマイグレーションボリューム160の処理が完了した場合、分析部211は、マイグレーションパターンを生成する(ステップS720)。
【0405】
具体的には、分析部211は、マイグレーションボリューム160と移行先の3Tier型の基盤110との組合せをマイグレーションパターンとして生成する。分析部211は、3Tierパターン評価テーブル1600に、生成されたパターンの数だけエントリを追加し、追加されたエントリのパターンID1601に識別情報を設定する。また、分析部211は、追加されたエントリのパターン1602に生成されたマイグレーションパターンの情報を設定する。
【0406】
次に、分析部211は、3Tierパターン評価テーブル1600に登録されたマイグレーションパターンのループ処理を開始する(ステップS721)。
【0407】
具体的には、分析部211は、3Tierパターン評価テーブル1600から一つのエントリ(ターゲットパターン)を選択する。
【0408】
次に、分析部211は、各マイグレーションボリューム160を移行先の基盤(3Tier型の基盤110)にマイグレーションした場合、移行先の基盤のリソースが不足するか否かを判定する(ステップS722)。ステップS722の処理はステップS707の処理と同様の処理であるため詳細な説明は省略する。
【0409】
移行先の基盤のリソースが不足すると判定された場合、分析部211は、パターン評価情報233を更新し(ステップS723)、ステップS730に進む。
【0410】
具体的には、分析部211は、3Tierパターン評価テーブル1600のエントリのフィージビリティ1603に「不可」を設定する。
【0411】
移行先の基盤のリソースは不足しないと判定された場合、分析部211は、パターン評価情報233を更新する(ステップS724)。
【0412】
具体的には、分析部211は、3Tierパターン評価テーブル1600のエントリのフィージビリティ1603に「可」を設定する。
【0413】
次に、分析部211は、ターゲットパターンのマイグレーションボリューム160のループ処理を開始する(ステップS725)。
【0414】
具体的には、分析部211は、ターゲットパターンのマイグレーションボリューム160の中からターゲットボリューム160を選択する。
【0415】
次に、分析部211は、移行先の基盤がターゲットボリューム160に提供されているストレージ機能を有しているか否かを判定する(ステップS726)。
【0416】
具体的には、分析部211は、ターゲットボリューム160が利用しているクラスタの機能506と、移行先の基盤の機能309とを比較する。
【0417】
移行先の基盤がターゲットボリューム160に提供されているストレージ機能を有している場合、分析部211は、コストを算出し(ステップS727)、ステップS729に進む。ステップS727の処理はステップS712の処理と同様の処理であるため詳細な説明を省略する。
【0418】
移行先の基盤がターゲットボリューム160に提供されているストレージ機能を有していない場合、分析部211は、コストを算出し(ステップS728)、ステップS729に進む。ステップS728の処理はステップS713の処理と同様の処理であるため詳細な説明を省略する。
【0419】
ステップS729では、分析部211は、ターゲットパターンの全てのマイグレーションボリュームの処理が完了したか否かを判定する(ステップS729)。
【0420】
ターゲットパターンの全てのマイグレーションボリュームの処理が完了していない場合、分析部211は、ステップS725に戻り、同様の処理を実行する。
【0421】
ターゲットパターンの全てのマイグレーションボリュームの処理が完了した場合、分析部211は、3Tierパターン評価テーブル1600に登録された全てのマイグレーションパターンの処理が完了したか否かを判定する(ステップS730)。
【0422】
3Tierパターン評価テーブル1600に登録された全てのマイグレーションパターンの処理が完了していない場合、分析部211は、ステップS721に戻り、同様の処理を実行する。
【0423】
3Tierパターン評価テーブル1600に登録された全てのマイグレーションパターンの処理が完了した場合、分析部211はマイグレーションパターン評価処理を終了する。
【0424】
図24は、実施例1の管理サーバ100が実行する業務システムのマイグレーション処理の一例を説明するフローチャートである。
【0425】
分析部211は、ユーザにマイグレーションパターンを提示する(ステップS801)。
【0426】
具体的には、分析部211は、3Tierパターン評価テーブル1600からコスト1604の値が小さい順にm個のエントリを選択し、当該エントリのパターン1602に設定されるマイグレーションパターンをユーザが使用する端末等に提示する。また、分析部211は、HCIパターン評価テーブル1610からコスト1614の値が小さい順にm’個のエントリを選択し、当該エントリのパターン1602に設定されるマイグレーションパターンをユーザが使用する端末等に提示する。
【0427】
リソースの空き容量に余裕があり、かつ、運用コストが低い基盤へのマイグレーションを実現するマイグレーションパターンを優先的に表示することによって、業務システムの適切な配置と運用コストの削減を実現できる。
【0428】
なお、フィージビリティ1603、1613が「不可」のエントリは選択対象から除外される。なお、m、m’は任意に設定できる。
【0429】
分析部211は、ユーザからマイグレーションの実行指示を受信する(ステップS802)。当該指示には、実行するマイグレーションパターンの識別情報が含まれる。
【0430】
分析部211は、指定されたマイグレーションパターンにしたがって、基盤間で業務システムをマイグレーションする(ステップS803)。その後、分析部211は、業務システムのマイグレーション処理を終了する。基盤間のマイグレーションの方法は公知の技術を用いればよいため詳細な説明を省略する。
【0431】
なお、分析部211は、自動的に、コスト1604、1614に基づいて、マイグレーションパターンを選択し、選択されたマイグレーションパターンにしたがって、基盤間で業務システムをマイグレーションしてもよい。
【0432】
実施例1によれば、管理サーバ100は、業務システムの計算リソース及びストレージリソースのバランスを考慮することによって、業務システムに適したアーキテクチャの基盤を評価できる。また、管理サーバ100は、当該評価に基づいて、基盤間で業務システムをマイグレーションすることによって、異なるアーキテクチャの基盤が混在したシステムにおける業務システムの配置を最適化できる。また、効率的かつ容易に基盤のリソースを管理できる。
【0433】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【0434】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
【0435】
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Python、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
【0436】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
【0437】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。