(57)【要約】【課題】テープライブラリ資源へのアクセスを仮想計算機ごとに制御する。【解決手段】テープライブラリが、複数のテープ媒体と、複数のテープ媒体がそれぞれ格納される複数のスロットと、複数のスロットのいずれかから取り出されたテープ媒体がセットされそのテープ媒体に対してデータの読出し又は書込みを行うドライブと、複数のスロットのうちの指定されたスロットからテープ媒体を取り出してドライブにセットするコントローラとを備える。ホスト計算機が、複数の仮想計算機と、どの仮想計算機にどのスロットが割り当てられているかを表すスロット割り当て情報を記憶した第一の記憶域と、複数の仮想計算機のうちの第一の仮想計算機に割り当てられているスロットをスロット割り当て情報から特定し、第一の仮想計算機からのアクセスを、特定されたスロット内のテープ媒体に制限するアクセス制御部とを備える。【選択図】図１
2008027279.tif 000002
【特許請求の範囲】
【請求項１】
複数のテープ媒体と、
前記複数のテープ媒体がそれぞれ格納される複数のスロットと、
前記複数のスロットのいずれかから取り出されたテープ媒体がセットされそのテープ媒体に対してデータの読出し又は書込みを行うドライブと、
前記複数のスロットのうちの指定されたスロットからテープ媒体を取り出して前記ドライブにセットするコントローラと
を備えたテープライブラリの資源にアクセスするホスト計算機であって、
複数の仮想計算機と、
どの仮想計算機にどのスロットが割り当てられているかを表すスロット割り当て情報を記憶した第一の記憶域と、
前記複数の仮想計算機のうちの第一の仮想計算機に割り当てられているスロットを前記スロット割り当て情報から特定し、前記第一の仮想計算機からのアクセスを、前記特定されたスロット内のテープ媒体に制限するアクセス制御部と
を備えるホスト計算機。
【請求項２】
前記ドライブは複数個存在し、前記ドライブの数は、前記スロットの数よりも少なく、
どのドライブがどんな状態であるかを表すドライブ状態情報を記憶した第二の記憶域と、
前記ドライブ状態情報を参照することにより、前記複数のドライブから空き状態のドライブを探し、前記特定されたスロットから該テープ媒体を取り出して探し出されたドライブにセットすることのドライブセット指示を前記コントローラに送信するテープライブラリ制御部と
を更に備える請求項１記載のホスト計算機。
【請求項３】
前記テープライブラリ制御部は、前記コントローラに所定の問合せを発行し、該問合せに対する戻り値から、前記コントローラが使用可能か否かを判断し、使用可能と判断した場合に、前記ドライブセット指示を送信する、
請求項２記載のホスト計算機。
【請求項４】
前記ホスト計算機は、前記テープライブラリにアクセスする別のホスト計算機とクラスタを構成しており、前記ホスト計算機で稼動する前記複数の仮想計算機のいずれかがダウンした場合、該ダウンした仮想計算機が、前記別のホスト計算機で復元されるようになっており、
前記別のホスト計算機のホスト識別子を記憶した第三の記憶域と、
前記ホスト識別子から識別される前記別のホスト計算機に前記スロット割り当て情報をコピーするクラスタ制御部と
を更に備える請求項１記載のホスト計算機。
【請求項５】
どのドライブがどんな状態であるかを表すドライブ状態情報を記憶した第二の記憶域と、
前記ドライブ状態情報を参照することにより、前記複数のドライブから空き状態のドライブを探し、前記特定されたスロットから該テープ媒体を取り出して探し出されたドライブにセットすることのドライブセット指示を前記コントローラに送信するテープライブラリ制御部と
を更に備え、
前記クラスタ制御部が、前記ドライブ状態情報も前記別のホスト計算機にコピーする、
請求項４記載のホスト計算機。
【請求項６】
前記ホスト計算機が、前記複数の仮想計算機のそれぞれのバックアップの状況を管理するバックアップ計算機に接続され、
前記アクセスが、前記バックアップ計算機からのバックアップ指示を契機に実行される、
請求項１記載のホスト計算機。
【請求項７】
複数のテープ媒体と、
前記複数のテープ媒体がそれぞれ格納される複数のスロットと、
前記複数のスロットのいずれかから取り出されたテープ媒体がセットされそのテープ媒体に対してデータの読出し又は書込みを行うドライブと、
前記複数のスロットのうちの指定されたスロットからテープ媒体を取り出して前記ドライブにセットするコントローラと
を備えたテープライブラリの資源へのアクセスを制御する方法であって、
一つのホスト計算機内で稼動する複数の仮想計算機のうちの第一の仮想計算機がアクセス先を指定し、
前記複数の仮想計算機のうちのどの仮想計算機にどのスロットが割り当てられているかを表すスロット割り当て情報から、前記第一の仮想計算機に割り当てられているスロットを特定し、
前記第一の仮想計算機からのアクセスを、前記特定されたスロット内のテープ媒体に制限する、
アクセス制御方法。
【請求項８】
前記ドライブは複数個存在し、前記ドライブの数は、前記スロットの数よりも少なく、
どのドライブがどんな状態であるかを表すドライブ状態情報を参照することにより、前記複数のドライブから空き状態のドライブを探し、
前記特定されたスロットから該テープ媒体を取り出して探し出されたドライブにセットすることのドライブセット指示を前記コントローラに送信する、
請求項７記載のアクセス制御方法。
【請求項９】
前記コントローラに所定の問合せを発行し、該問合せに対する戻り値から、前記コントローラが使用可能か否かを判断し、使用可能と判断した場合に、前記ドライブセット指示を送信する、
請求項８記載のアクセス制御方法。
【請求項１０】
前記ホスト計算機と、前記テープライブラリにアクセスする別のホスト計算機とによってクラスタを構成し、
前記ホスト計算機から前記別のホスト計算機に前記スロット割り当て情報をコピーし、
前記ホスト計算機で稼動する前記複数の仮想計算機のいずれかがダウンした場合、該ダウンした仮想計算機を、前記別のホスト計算機に復元し、
前記復元された仮想計算機に割り当てられているスロットを、前記コピーされたスロット割り当て情報から特定し、前記復元された仮想計算機からのアクセスを、前記特定されたスロット内のテープ媒体に制限する、
請求項７記載のアクセス制御方法。
【請求項１１】
前記ドライブは複数個存在し、
どのドライブがどんな状態であるかを表すドライブ状態情報を記憶し、
前記ドライブ状態情報を参照することにより、前記複数のドライブから空き状態のドライブを探し、前記特定されたスロットから該テープ媒体を取り出して探し出されたドライブにセットすることのドライブセット指示を前記コントローラに送信し、
前記ドライブ状態情報も前記ホスト計算機から前記別のホスト計算機にコピーし、
前記コピーされたドライブ状態情報を参照することにより、前記複数のドライブから空き状態のドライブを探し、前記復元された仮想計算機について前記特定されたスロットから該テープ媒体を取り出して探し出されたドライブにセットすることのドライブセット指示を前記コントローラに送信する、
請求項１０記載のアクセス制御方法。
【請求項１２】
前記複数の仮想計算機のそれぞれのバックアップの状況を管理するバックアップ計算機が、前記複数の仮想計算機のうちのバックアップが必要な前記第一の仮想計算機にバックアップ指示を送信し、
前記第一の仮想計算機が、前記バックアップ計算機からのバックアップ指示を契機に、アクセスを行う、
請求項７記載のアクセス制御方法。
【請求項１３】
前記ドライブは複数個存在し、
どのドライブがどんな状態であるかを表すドライブ状態情報を参照することにより、前記複数のドライブから空き状態のドライブを探し、
前記バックアップ計算機が、前記第一の仮想計算機が管理する複数のデータのうちバックアップが必要なデータと、探し出されたドライブとを指示した前記バックアップ指示を前記第一の仮想計算機に送信し、
前記第一の仮想計算機が、前記バックアップ指示で指示されているドライブに前記特定されたスロットから該テープ媒体を取り出してセットすることのドライブセット指示を前記コントローラに送信し、前記バックアップ指示で指示されているデータを前記指示されているドライブに対して送信する、
請求項１２記載のアクセス制御方法。
【請求項１４】
テープライブラリと、
ホスト計算機と
を備え、
前記テープライブラリが、
複数のテープ媒体と、
前記複数のテープ媒体がそれぞれ格納される複数のスロットと、
前記複数のスロットのいずれかから取り出されたテープ媒体がセットされそのテープ媒体に対してデータの読出し又は書込みを行うドライブと、
前記複数のスロットのうちの指定されたスロットからテープ媒体を取り出して前記ドライブにセットするコントローラと
を備え、
前記ホスト計算機が、
複数の仮想計算機と、
どの仮想計算機にどのスロットが割り当てられているかを表すスロット割り当て情報を記憶した第一の記憶域と、
前記複数の仮想計算機のうちの第一の仮想計算機に割り当てられているスロットを前記スロット割り当て情報から特定し、前記第一の仮想計算機からのアクセスを、前記特定されたスロット内のテープ媒体に制限するアクセス制御部と
を備える、
計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置へのアクセスを制御するための技術に関する。
【背景技術】
【０００２】
例えば、近年、サーバ毎に分散配置されていたストレージを一箇所のストレージシステムに集約するストレージコンソリデーションが普及している。さらに、ストレージシステムにファイルサーバを搭載することで、ＮＦＳ（Network File System）やＣＩＦＳ（Common Interface File System）等のファイル転送プロトコルを利用したファイルアクセスサービスを提供するためのファイルシステムを構築する形態が普及している。企業内においてストレージに関する構築、運用、保守等のサービスを提供するシステム管理部門は、ストレージコンソリデーションの運用形態として、例えば、１台のファイルサーバを論理的に分割してなる仮想ファイルサーバを各部門に提供している。
【０００３】
ここで、データ保護の観点から、どの仮想ファイルサーバにどの記憶装置へのアクセスを許可するか等のアクセス制御が必要になると考えられる。アクセス制御技術として、例えば、文献１及び文献２に開示の技術がある。
【０００４】
文献１（特開２００４−２０６２２１号公報）には、テープドライブと複数のテープスロットからなるパーティションをテープライブラリ内部に作成して、パーティションをホスト計算機ごとに割り当てることで、ホスト計算機がアクセスできるテープドライブとスロットを制限して、他の計算機からの参照や変更を阻止する技術が記載されている。
【０００５】
文献２（特開２０００−２７６４０６号公報）には、アクセス可否テーブルと関連テーブルとを作成・保持し、ホスト計算機からのInquiry要求のS_IDとそれらのテーブルとを用いて、論理ボリューム（LU）へのアクセス可否を判断する技術が開示されている。アクセス可否テーブルには、ホスト計算機のN_Port_Name或いはNode_Nameとストレージサブシステム内のLUとが関連付けられる。関連テーブルには、ホスト計算機がログインする際に割り当てるS_IDとLUとが関連付けられる。
【０００６】
【特許文献１】特開２００４−２０６２２１号公報
【特許文献２】特開２０００−２７６４０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
以下、ハードウェアとしての一つの計算機を、「ホスト計算機」と言い、一つのホスト計算機を仮想的に分割することで得られる仮想的なホスト計算機を、「仮想計算機」と言う。ホスト計算機上で複数の仮想計算機を稼動することで、複数のホスト計算機を稼動する場合と同等のサービスを、一つのホスト計算機（ハードウェア）で提供することができる。このため、ハードウェアの集約につながり、管理者のハードウェア管理コストを低減することが可能になる。例えば、２台のファイルサーバを用いるネットワーク環境において、２つの仮想計算機を稼動することができる１台のホスト計算機を導入し、２つの仮想計算機にファイルサーバと同じ設定をそれぞれ施すことによって、２台のファイルサーバにより提供できるサービスと同等のサービスを、１台のホスト計算機で提供することができる。
【０００８】
第一と第二の仮想計算機を含んだ複数の仮想計算機で一つのテープライブラリを共有する計算機システムが考えられる。この場合、第一の仮想計算機が使用するデータを第二の仮想計算機に使用されないようにすることが必要になると考えられる。
【０００９】
一般的に、ホスト計算機とテープライブラリは、ＳＡＮ（Storage Area Network）を介して接続され、ＳＡＮ内では、それぞれのノード（例えば、ホスト計算機やテープライブラリがそれぞれ有するポート）が持つ一意の番号をもってお互いを識別することができる。例えば、ＳＡＮがＦＣ（Fibre Channel）で構成されていた場合、ＳＡＮに接続されるホスト計算機やテープライブラリは、ＷＷＮ（World Wide Name）と呼ばれる一意の識別番号を有する。このことに鑑みて、例えば、文献１や文献２に開示の技術を利用して、各仮想計算機からのテープライブラリ資源へのアクセスを制御することが考えられる。
【００１０】
しかし、文献１や文献２に開示の技術を、各仮想計算機からのテープライブラリ資源へのアクセス制御に適用することはできない。なぜなら、それぞれの文献に開示の技術でアクセス制御に使用される情報は、ホスト計算機のＩＤであり、そのＩＤからは、一台のホスト計算機で各仮想計算機を識別することができないためである。
【００１１】
従って、本発明の目的は、テープライブラリ資源へのアクセスを仮想計算機ごとに制御することにある。
【００１２】
本発明の更なる目的は、後の説明から明らかになるであろう。
【課題を解決するための手段】
【００１３】
テープライブラリには、複数のテープ媒体と、前記複数のテープ媒体がそれぞれ格納される複数のスロットと、前記複数のスロットのいずれかから取り出されたテープ媒体がセットされそのテープ媒体に対してデータの読出し又は書込みを行うドライブと、前記複数のスロットのうちの指定されたスロットからテープ媒体を取り出して前記ドライブにセットするコントローラとが備えられる。本発明に従うホスト計算機は、複数の仮想計算機と、どの仮想計算機にどのスロットが割り当てられているかを表すスロット割り当て情報を記憶した第一の記憶域と、前記複数の仮想計算機のうちの第一の仮想計算機に割り当てられているスロットを前記スロット割り当て情報から特定し、前記第一の仮想計算機からのアクセスを、前記特定されたスロット内のテープ媒体に制限するアクセス制御部とを備える。
【００１４】
第一の実施態様では、前記ドライブは複数個存在し、前記ドライブの数は、前記スロットの数よりも少ない。ホスト計算機は、どのドライブがどんな状態であるかを表すドライブ状態情報を記憶した第二の記憶域と、前記ドライブ状態情報を参照することにより、前記複数のドライブから空き状態のドライブを探し、前記特定されたスロットから該テープ媒体を取り出して探し出されたドライブにセットすることのドライブセット指示を前記コントローラに送信するテープライブラリ制御部とを更に備えることができる。
【００１５】
第二の実施態様では、前記第一の実施態様において、前記テープライブラリ制御部は、前記コントローラに所定の問合せを発行し、該問合せに対する戻り値から、前記コントローラが使用可能か否かを判断し、使用可能と判断した場合に、前記ドライブセット指示を送信することができる。
【００１６】
第三の実施態様では、前記ホスト計算機は、前記テープライブラリにアクセスする別のホスト計算機とクラスタを構成しており、前記ホスト計算機で稼動する前記複数の仮想計算機のいずれかがダウンした場合、該ダウンした仮想計算機が、前記別のホスト計算機で復元されるようになっている。この場合、前記ホスト計算機が、前記別のホスト計算機のホスト識別子を記憶した第三の記憶域と、前記ホスト識別子から識別される前記別のホスト計算機に前記スロット割り当て情報をコピーするクラスタ制御部とを更に備えることができる。この場合、前記別のホスト計算機では、前記復元された仮想計算機に割り当てられているスロットを、前記コピーされたスロット割り当て情報から特定し、前記復元された仮想計算機からのアクセスを、前記特定されたスロット内のテープ媒体に制限することができる。
【００１７】
第四の実施態様では、前記第三の実施態様において、前記ホスト計算機が、どのドライブがどんな状態であるかを表すドライブ状態情報を記憶した第二の記憶域と、前記ドライブ状態情報を参照することにより、前記複数のドライブから空き状態のドライブを探し、前記特定されたスロットから該テープ媒体を取り出して探し出されたドライブにセットすることのドライブセット指示を前記コントローラに送信するテープライブラリ制御部とを更に備えることができる。前記クラスタ制御部が、前記ドライブ状態情報も前記別のホスト計算機にコピーすることができる。この場合、前記別のホスト計算機では、前記コピーされたドライブ状態情報を参照することにより、前記複数のドライブから空き状態のドライブを探し、前記復元された仮想計算機について前記特定されたスロットから該テープ媒体を取り出して探し出されたドライブにセットすることのドライブセット指示を前記コントローラに送信することができる。
【００１８】
第五の実施態様では、前記ホスト計算機が、前記複数の仮想計算機のそれぞれのバックアップの状況を管理するバックアップ計算機に接続される。前記アクセスが、前記バックアップ計算機からのバックアップ指示を契機に実行される。さらに、この第五の実施態様では、例えば、前記バックアップ計算機が、前記第一の仮想計算機が管理する複数のデータのうちバックアップが必要なデータと、探し出されたドライブとを指示した前記バックアップ指示を前記第一の仮想計算機に送信してもよい。この場合、前記第一の仮想計算機が、前記バックアップ指示で指示されているドライブに前記特定されたスロットから該テープ媒体を取り出してセットすることのドライブセット指示を前記コントローラに送信し、前記バックアップ指示で指示されているデータを前記指示されているドライブに対して送信してもよい。
【００１９】
上述した各部は、ハードウェア（例えば回路）、コンピュータプログラム、或いはそれらの組み合わせ（例えば、コンピュータプログラムを読み込んで実行する一又は複数のＣＰＵ）によって実現することができる。各コンピュータプログラムは、コンピュータマシンに備えられる記憶資源（例えばメモリ）から読み込むことができる。その記憶資源には、ＣＤ−ＲＯＭやＤＶＤ（Digital Versatile Disk）等の記録媒体を介してインストールすることもできるし、インターネットやＬＡＮ等の通信ネットワークを介してダウンロードすることもできる。
【発明の効果】
【００２０】
本発明によれば、テープライブラリ資源へのアクセスを仮想計算機ごとに制御することができる。
【発明を実施するための最良の形態】
【００２１】
以下、図面を参照して、本発明の幾つかの実施例を説明する。
【実施例１】
【００２２】
図１は、本発明の第一実施例に係る計算機システムの構成例を示している。なお、図１では、同種の要素には同一の親番号と異なる子符号とを付している。同種の要素を区別しないで説明する場合には、親番号のみを用いて説明し、それぞれ区別して説明する場合には、親番号と子符号の両方を用いて説明することにする。
【００２３】
管理用ネットワーク（例えばＬＡＮ（Local Area Network））５５に、一又は複数のホスト計算機１０ａ〜１０ｎと、管理計算機６０とが接続される。管理計算機６０は無くても良い。この場合、管理計算機６０が有する機能をホスト計算機１０に搭載することができる。
【００２４】
ストレージネットワーク（例えばＳＡＮ（Storage Area Network））５０に、複数の仮想計算機１５ａ〜１５ｎが稼動することができるホスト計算機１０と、複数のテープ媒体を搭載したテープライブラリ２０とが接続される。ホスト計算機１０は、例えば、ＮＡＳとしてのファイルサーバとし、仮想計算機１５を、仮想的なファイルサーバとすることができる。
【００２５】
テープライブラリ２０は、セットされたテープ媒体からデータを読む又はそのテープ媒体にデータを書く（以下、「データを読み書きする」と言う）ためのドライブ３０ａ〜３０ｎと、ドライブ３０ａ〜３０ｎにアクセスするためのインタフェース（以下、データＩ／Ｆ）２５ａ〜２５ｎとを備える。また、テープライブラリ２０は、複数のテープ媒体をそれぞれ保管することができる複数のスロット３５ａ〜３５ｎと、テープ媒体をスロット３５から取り出してドライブ３０に挿入したりテープ媒体をドライブ３０から取り出してスロット３５に戻したりするためのコントローラ４０と、コントローラ４０にアクセスするためのインタフェース４５（以下、コントロールＩ／Ｆ）とを備える。
【００２６】
このテープライブラリ２０には、一つのドライブ３０に対し一つのデータＩ／Ｆ２５が備えられる。また、複数のドライブに対し一つのコントローラ４０が備えられる。また、ドライブ３０の数は、スロット３５の数よりも少ない。
【００２７】
図２は、ホスト計算機の構成例を示している。
【００２８】
ホスト計算機１０は、メモリ６５と、ＣＰＵ１００と、データインタフェース９５ａ〜９５ｎ（以下、データＩ／Ｆ９５）と、ネットワークインタフェース（以下、ネットワークＩ／Ｆ）１０５とを備える。
【００２９】
メモリ６５には、各ドライブ３０の使用状態を格納したドライブ状態テーブル８５と、どの仮想計算機１５にどのスロットが割り当てられているかを表すスロット割り当てテーブル９０と、仮想計算機制御プログラム８０と、テープライブラリ制御プログラム７５と、ホストオペレーティングシステム（以下、ホストＯＳ）１４とが格納される。仮想計算機１５、ホストＯＳ１４、仮想計算機制御プログラム８０及びテープライブラリ制御プログラム７５が、ＣＰＵ１００で実行される。以下、コンピュータプログラムが主語になる場合は、実際にはそのコンピュータプログラムを実行するＣＰＵによって処理が行われるものとする。
【００３０】
ホストＯＳ１４上で、複数の仮想計算機１５が稼動する。各仮想計算機１５では、仮想計算機ＯＳ（図示せず）と、仮想計算機ＯＳ上のコンピュータプログラム（以下、「アプリケーション」とする）とが実行される。例えば、仮想計算機１５がテープライブラリ２０にアクセス要求を発行する場合、アプリケーションから仮想計算機ＯＳを介してホストＯＳ１４にアクセス要求が発行され、ホストＯＳ１４が、そのアクセス要求をテープライブラリ２０に送信することができる。
【００３１】
ホスト計算機１０は、仮想計算機制御プログラム８０を実行して、各仮想計算機１５の作成、削除、起動及び停止等の制御を行うことができる。また、ホスト計算機１０は、テープライブラリ制御プログラム７５を実行して、テープライブラリ２０を制御することができる。データＩ／Ｆ１５としては、例えば、ＡＴＡ（Advanced Technology Attachment）、ＳＣＳＩ（Small Computer System Interface）、ＦＣ等を用いることができる。
【００３２】
また、ホスト計算機１０は、ストレージネットワーク５０を介して、テープライブラリ２０のデータＩ／Ｆ２５あるいはコントロールＩ／Ｆ４５にアクセスすることができる。テープライブラリ２０が用いるテープ媒体としては、例えば、ＤＤＳ（Digital Data Storage）、ＤＬＴ（Digital Linear Tape）、ＬＴＯ（Linear Tape-Open）などが挙げられる。データＩ／Ｆ２５としては、データＩ／Ｆ１５と同様、例えば、ＡＴＡ、ＳＣＳＩ、ＦＣ等を用いることができる。
【００３３】
図３は、管理計算機５０の構成例を示している。
【００３４】
管理計算機６０は、管理ネットワーク５５に接続されているホスト計算機１０を管理する計算機である。具体的には、例えば、管理計算機６０は、メモリ１１５上の管理プログラム１２０を、ＣＰＵ１３５を用いて実行して、ネットワークＩ／Ｆ１３０を介して管理用ネットワーク５５で接続されたホスト計算機１０を管理することができる。また、管理計算機６０は、管理者が管理プログラム１２０を利用するためのインタフェースとして、管理画面１２５（表示装置）を備えることもできる。
【００３５】
図１８は、管理画面１２５に表示される画面インタフェースの一例である。
【００３６】
当該画面インタフェースは、ＧＵＩ（グラフィカルユーザインタフェース）であり、例えば、第一の領域２３５と、第二の領域２４０とを有する。
【００３７】
第一の領域２３５には、スロット割り当てテーブル９０に登録されている情報、例えば、仮想計算機１５の名称（他種の識別子でもよい）と、当該仮想計算機１５に割り当てたスロットの名称（他種の識別子でも良い）とが表示される。管理者は、この領域２３５に表示された情報から、その表示されている時点で、どの仮想計算機１５にどのスロットが割り当てられているのかを把握することができる。
【００３８】
第二の領域２４０は、管理者所望の仮想計算機１５に所望のスロットを割り当てるためのインタフェースである。例えば、第二の領域２４０には、スロット番号入力欄と、仮想計算機名称入力欄とがある。管理者は、スロット番号入力欄に、所望のスロット番号を入力できる。仮想計算機名称入力欄では、例えば、プルダウン形式で選択可能な仮想計算機名称のメニューが表示され、そのメニューから管理者所望の仮想計算機名称を選択することができる。例えば、図１８に示す画面インタフェース上の「アサイン」ボタンが押された場合に、管理者に入力された仮想計算機名称と、管理者に入力されたスロット番号とが、スロット割り当てテーブル９０に登録される。
【００３９】
図４は、スロット割り当てテーブル９０の構成例である。
【００４０】
スロット割り当てテーブル９０には、例えば、仮想計算機名称が書かれるカラム１５５と、スロット番号が書かれるカラム１６０とがある。各仮想計算機１５毎に、仮想計算機名称及びスロット番号が記録される。スロット番号は、一つの仮想計算機名称に一つ以上登録することができる。
【００４１】
図５は、ドライブ状態テーブル８５の構成例である。
【００４２】
ドライブ状態テーブル８５には、例えば、ドライブ３０を特定できる識別子（例えばドライブ名）が書かれるカラム１４５と、ドライブ３０の状態の識別子（例として状態を示す文字列）が書かれるカラム１５０とがある。各ドライブ３０毎に、ドライブ名及び状態識別子（以下、単に「状態」と言う）が記録される。状態としては、例えば、“使用中”、“空き”などがある。“使用中”の場合には、その“使用中”という値に加えて、ドライブを使用している仮想計算機の名称が書かれても良い。
【００４３】
図７は、仮想計算機１５にスロット３５を割り当てる処理手順の一例を記述したフローチャートである。
【００４４】
例えば、仮想計算機制御プログラム８０が、所定の契機により、仮想計算機１５を作成する（ステップＳ１０）。具体的には、例えば、仮想計算機制御プログラム８０は、管理者からホスト計算機資源（例えばＣＰＵ使用率やメモリ容量）の指定と仮想計算機作成命令とを受け、それに応答して、指定されたホスト計算機資源を有する新規の仮想計算機１５を作成する。
【００４５】
次に、ホストＯＳ１４が、作成された仮想計算機１５に一以上のスロット番号を割り当てる（Ｓ１５）。具体的には、ホストＯＳ１４が、作成された仮想計算機１５の名称とスロット番号とを、スロット割り当てテーブル９０に登録する。より具体的には、例えば、ホストＯＳ１４が、作成された仮想計算機１５の名称を仮想計算機制御プログラム８０から受け、その仮想計算機名称を画面インタフェースに表示し、且つ、その画面インタフェースを介して、その仮想計算機名称を有する仮想計算機に割り当てるスロット番号を受け付け、その仮想計算機名称と受け付けたスロット番号とを、スロット割り当てテーブル９０に登録する。
【００４６】
なお、仮想計算機１５に割り当てるスロットは、他の仮想計算機１５にて使用されないスロットであっても良いし、他の仮想計算機１５で使用するスロットでもよい。換言すれば、ホストＯＳ１４が、一つのスロットを、一つの仮想計算機にしか割り当てられないように制御しても良いし、複数の仮想計算機１５で共有するようにしてもよい。
【００４７】
図８は、データを読み書きする処理手順の一例を記述したフローチャートである。以下の説明では、テープ媒体にデータの読み書きを行う仮想計算機を、「ターゲット仮想計算機」と言う。
【００４８】
コントローラ４０が使用可能か否かの判断が行われる（Ｓ２５）。具体的には、例えば、ターゲット仮想計算機１５からスロットの指定を受けたホストＯＳ１４が、コントローラＩ／Ｆ４５に問合せを発行し、コントローラＩ／Ｆ４５からの戻り値に応じて、コントローラ４０が使用可能か否かを判断することができる。コントローラ４０を使用できない場合（Ｓ２５：Ｎｏ）、ホストＯＳ１４が、そのエラーを、ターゲット仮想計算機１５に返却する（Ｓ５５）。
【００４９】
コントローラ４０が使用可能の場合（Ｓ２５：Ｙｅｓ）、ホストＯＳ１４は、スロット割り当てテーブル９０を参照して、ターゲット仮想計算機１５の名称に指定されたスロットの番号が対応付けられているか判断する（Ｓ３０）。ここで、「指定されたスロット」とは、例えば、ターゲット仮想計算機１５からスロット番号の指定を受けた場合には、そのスロット番号に対応するスロットとすることができる。また、例えば、ターゲット仮想計算機１５からＬＵＮ（論理ユニット番号）の指定を受けた場合には、そのＬＵＮを有するＬＵ（論理ボリューム）を提供するテープ媒体を格納したスロットとすることができる。この場合、例えば、ＬＵＮに対してスロット番号が対応付けられているテーブルがあり、ホストＯＳ１４は、そのテーブルを参照することで、アクセス要求中のＬＵＮに対応するスロット番号を特定することができる。
【００５０】
指定されたスロットの番号がターゲット仮想計算機１５の名称に対応付けられていない場合（Ｓ３０：Ｎｏ）、ホストＯＳ１４は、前述したステップＳ５５を実行する。一方、指定されたスロットの番号がターゲット仮想計算機１５の名称に対応付けられている場合（Ｓ３０：Ｙｅｓ）、ホストＯＳ１４は、ドライブ状態テーブル８５を参照して、使用可能なドライブ（具体的には、例えば、状態が“空き”のドライブ）の有無を判断する（Ｓ３５）。
【００５１】
使用可能なドライブが存在しない場合（Ｓ３５：Ｎｏ）、ホストＯＳ１４は、前述したＳ５５を実行する。一方、使用可能なドライブを特定した場合（Ｓ３５：Ｙｅｓ）、ホストＯＳ１４は、特定したドライブの状態を“使用中”に更新する（つまりドライブ状態テーブル８５を更新する）（Ｓ４０）。本ステップを経ることで、他の仮想計算機１５が、ドライブを不正に使用することを防ぐことができる。ホストＯＳ１４は、Ｓ４０を終了した後、特定したドライブの名称をターゲット仮想計算機１５に発行することができる。
【００５２】
次に、ターゲット仮想計算機１５が、テープライブラリ制御プログラム７５を実行することで、コントローラＩ／Ｆ４５を介してコントローラ４０を操作し、指定したスロット３５に格納されているテープ媒体を、上記特定されたドライブ３０に挿入させる（Ｓ４５）。
【００５３】
最後に、ターゲット仮想計算機１５が、該ドライブ３０にアクセスしてテープに対しデータを読み書きし、結果を取得する（Ｓ５０）。
【００５４】
以上が、第一実施例についての説明である。この第一実施例によれば、仮想計算機１５ごとにスロットを割り当て、それぞれに割当てられたスロットのテープ媒体にしかアクセスすることができないようにし、そのテープ媒体に他の仮想計算機１５からアクセスされてしまうことを防止することができる。
【００５５】
なお、この第一実施例におけるアクセス制御は、前述した文献１及び文献２に開示の技術を単に転用することによって構築できるものではない。具体的には、ホスト計算機識別子を仮想計算機識別子と読み替え、パーティション又は論理ボリュームの識別子をスロット識別子と単に置換することはできない。この第一実施例では、テープライブラリ２０の構成を考慮した工夫が施されている。
【００５６】
まず、配列された複数のハードディスクのストレージシステムと、テープライブラリ２０とでは、それぞれ構成が異なる。テープライブラリ２０には、スロット３５の他にドライブ３０があり、スロット３５ではなくドライブ３０が、デバイスとして仮想計算機１５に認識される。ストレージシステムが採用される場合には、ＬＵがデバイスとして仮想計算機に認識されることになる。このため、単なる置換となると、ＬＵＮの代わりはドライブ識別子となる。
【００５７】
また、テープライブラリ２０には、ドライブ３０とは別にコントローラ４０があり、そのコントローラ４０が、スロット３５からドライブ３０にテープ媒体を出し入れする。コントローラ４０は、複数の仮想計算機１５に共有される。このため、文献１の技術を単に転用することはできない。また、文献１の技術を利用した場合、仮想計算機１５が使用可能なドライブ３０が制限されてしまう。このため、仮想計算機１５の数が、テープライブラリ２０に搭載されているドライブ３０の数に依存してしまう。それに対し、この第一実施例では、仮想計算機１５にスロットが割り当てられドライブは割り当てられない。ドライブ３０は、時分割で（具体的には、状態が“空き”か“使用中”かに応じて）、複数の仮想計算機１５に使用される。このため、コントローラ４０やドライブ３０が複数の仮想計算機１５に共有される環境でも、各仮想計算機１５のデータを保護することができ、また、仮想計算機１５の数を、ドライブ３０の数に依存させないようにすることができる。
【実施例２】
【００５８】
各仮想計算機１５は、例えば、自身に割り当てられた記憶資源にデータ（例えばファイル）を格納し、そのデータを、テープライブラリ２０にバックアップすることができる。第二実施例では、バックアップサーバによってバックアップが制御される。
【００５９】
図９は、本発明の第二実施例に係る計算機システムの構成例を示している。以下の説明では、第一実施例との相違点を主に説明し、第一実施例との共通点については説明を省略或いは簡略する。
【００６０】
この計算機システムは、第一実施例に係る計算機システム（図１参照）に、バックアップのスケジュールやデータを管理するバックアップサーバ１６５が備えられたシステムである。
【００６１】
図１０は、バックアップサーバ１６５の構成例を示している。
【００６２】
バックアップサーバ１６５には、メモリ１７０と、ＣＰＵ１８５と、管理画面１９５（表示装置）と、ネットワークＩ／Ｆ１９０とが備えられる。メモリ１７０には、例えば、バックアッププログラム１７５と、バックアップ対象テーブル１８０と、テープライブラリ制御プログラム７５とが格納される。
【００６３】
バックアップサーバ１６５では、メモリ１７０に格納されたバックアッププログラム１７５をＣＰＵ１８５が実行する。バックアッププログラム１７５は、バックアップ対象テーブル１８０に記載されたバックアップ対象のホスト計算機および仮想計算機に対して、バックアップすべきデータとバックアップに使用するドライブ３０を、ネットワークＩ／Ｆ１９０を介して指定して、バックアップを実行させる。管理者は、管理画面１９５（表示装置）を介して、バックアッププログラムを実行させることができる。
【００６４】
図１１は、第二実施例におけるホスト計算機１０の構成例を示している。
【００６５】
ホスト計算機１０上では、仮想計算機制御プログラム８０と仮想計算機１５とが動作する。仮想計算機１５上では、バックアッププログラム１７５から指示を受けてバックアップを実行するバックアップエージェント２００と、テープライブラリ制御プログラム７５とが動作する。
【００６６】
図１２は、バックアップ対象テーブル１８０の構成例である。
【００６７】
バックアップ対象テーブル１８０は、バックアップの対象となる仮想計算機の識別子（例として名称）が書かれるカラム２０５と、該仮想計算機と管理用ネットワーク５５を介して通信するための識別子（例としてＩＰ（Internet Protocol）アドレス）が書かれるカラム２１０とがある。バックアップ対象としての仮想計算機ごとに、仮想計算機名称及びＩＰアドレスが記録される。バックアッププログラム１７５は、バックアップ対象テーブル１８０を参照して、バックアップすべき対象の仮想計算機を特定し、該特定された仮想計算機にバックアップを指示する。バックアッププログラム１７５とバックアップエージェント２００との間で交わされるプロトコルとしては、例えば、ＮＤＭＰ（Network Data Management Protocol）を採用することができる。
【００６８】
図１３は、バックアップの手順の一例を示したフローチャートである。
【００６９】
例えば、管理者が、バックアップサーバ１６５の管理画面１９５を介して、バックアッププログラム１７５の起動を命じる。その命令により起動したバックアッププログラム１７５は、バックアップ対象テーブル１８０を参照して、バックアップの対象となる仮想計算機を特定する（Ｓ６０）。
【００７０】
次に、バックアッププログラム１７５は、バックアップ対象となる仮想計算機のうち、いまだバックアップを実施していない仮想計算機があるか調べる（Ｓ６５）。Ｓ６５では、例えば、バックアッププログラム１７５が、各仮想計算機１５に、更新後のデータのバックアップが済んでいるか否かを問合せ、その問い合わせに対する回答から、バックアップを実施していない仮想計算機があるか調べることができる。Ｓ６５で、いまだバックアップを実施していない仮想計算機がないと判断した場合（Ｓ６５：Ｎｏ）、すなわち対象となるすべての仮想計算機でバックアップを実施した場合は、バックアッププログラム１７５は、処理を終了する。この際、管理画面１９５を介して、バックアップが完了した旨を管理者に通知してもよい。
【００７１】
一方、バックアッププログラム１７５は、いまだバックアップを実施していない仮想計算機が一つ以上あると判断した場合（Ｓ６５：Ｙｅｓ）、それら一つ以上の仮想計算機から選択した仮想計算機（以下、選択仮想計算機）１５のテープライブラリ制御プログラム７５を実行する。それにより、バックアップに使用するテープ媒体がスロット３５から取り出され、取り出されたテープ媒体が、バックアップに使用されるドライブ３０に挿入される（Ｓ７０）。
【００７２】
Ｓ７０でのスロットは、選択仮想計算機１５に割り当てられているスロットのうち、空きの領域を有するテープ媒体が入っているスロットである。すなわち、この第二実施例では、例えば、バックアップの際には、番号の若いスロットに入っているテープ媒体の空き領域から、順に、データが書かれていく。その際、或るテープ媒体の途中で、バックアップされるべきデータが書き終わることがある。その場合には、次回のバックアップでは、その途中から、その次回のバックアップで書かれるべきデータが書かれていく。バックアップ対象となるデータは、選択仮想計算機の記憶資源で管理されている全てのデータであっても良いし、前回のバックアップとの差分のデータであっても良い。後者の場合、仮想計算機は、バックアップの後に、自身の記憶資源内のデータを更新した場合には、更新により生じた差分を管理し、次回のバックアップの際には、その管理している差分のみをバックアップしても良い。この第二実施例では、例えば、どのスロットのテープ媒体のどの位置（例えばアドレス）にまでデータが格納されたかもスロット割り当てテーブル９０（或いはバックアップ対象テーブル１８０）で管理し、そのテーブルを参照することで、テープライブラリ制御プログラム７５は、どこからバックアップを開始すれば良いかを特定することができる。
【００７３】
Ｓ７０でのドライブは、例えば、テープライブラリ制御プログラム７５によってドライブ状態テーブル８５から特定された“空き”のドライブである。ここで特定されたドライブの名称を、テープライブラリ制御プログラム７５がバックアッププログラム１７５に通知することができる。
【００７４】
次に、バックアッププログラム１７５は、選択仮想計算機１５で動作するバックアップエージェント２００に対して、バックアップに使用するドライブを指示する（Ｓ７５）。具体的には、例えば、バックアッププログラム１７５は、通知されたドライブ名称をバックアップエージェント２００に通知する。
【００７５】
次に、バックアップエージェント２００は、ドライブ状態テーブル８５の更新をホストＯＳ１４に依頼し、ホストＯＳ１４が、ドライブ状態テーブル８５を更新する（つまり、指示されたドライブの状態を“使用中”とする）（Ｓ８０）。
【００７６】
次に、バックアッププログラム１７５は、バックアップすべきデータのうち、いまだバックアップしていないデータがあるか調べる（Ｓ８５）。バックアップしていないデータがある場合（Ｓ８５：Ｙｅｓ）、バックアッププログラム１７５は、バックアップすべきデータをバックアップエージェント２００に指示し、バックアップエージェント２００は、指示されたドライブを介してテープ媒体にデータを書き込む（Ｓ９０）。バックアップすべきデータを指定する識別子として、ファイル名やファイルシステム名などが好適であると考えられる。また、バックアップしていないデータがあるか否かは、例えば、バックアップエージェント２００が、バックアップしたファイル名などをバックアッププログラム１７５に通知し、バックアッププログラム１７５が、通知されたファイル名などをバックアップリストから削除することで、判別することができる。そのバックアップリストは、例えば、選択仮想計算機１５に問合せを出すことにより、選択仮想計算機１５から取得することができる。
【００７７】
バックアップしていないデータがない場合、すなわちバックアップすべきデータをすべてバックアップした場合（Ｓ８５：Ｎｏ）、バックアッププログラム１７５は、テープライブラリ制御プログラム７５を実行して、テープ媒体をドライブ３０から取り出し、元のスロット３５へ返却させる（Ｓ９５）。
【００７８】
バックアップエージェント２００は、ドライブ３０の使用の終了をホストＯＳ１４に通知し、ホストＯＳ１４が、そのドライブ３０の状態を“使用中”から“空き”に戻す（Ｓ１００）。この後、再びＳ６５が行われる。
【００７９】
前述したＳ７０、Ｓ８５およびＳ９０の処理は、例えば、http://www.ndmp.org/download/sdk_v4/draft-skardal-ndmp4-04.txtに記載されたＮＤＭＰの手順に従ってもよい。
【００８０】
この第二実施例によれば、仮想計算機１５は、バックアップサーバ１６５からの指示に応答して、データをテープライブラリ２０にバックアップすることができる。その際、バックアップ先となるテープ媒体は、その仮想計算機１５に割り当てられているスロットに格納されているテープ媒体とされる。このため、データのバックアップの際に、仮想計算機１５のデータが格納されているテープ媒体に他の仮想計算機１５のデータがバックアップされてしまうことを未然に防ぐことができる。
【実施例３】
【００８１】
例えば、ストレージコンソリデーションを目的としてファイルサーバを用いる場合、複数のファイルサーバでクラスタを構成することが多い。クラスタを構成すると、ひとつのファイルサーバで障害が発生しても、クラスタを構成する別のファイルサーバでファイルアクセスサービスを継続することができるので、ファイルサーバの可用性を高めることができる。
【００８２】
そこで、この第三実施例では、複数のホスト計算機がクラスタを構成して仮想計算機の可用性を高める計算機システムが構築される。以下、第一のホスト計算機上で動作する仮想計算機が第二のホスト計算機上にフェイルオーバした後もスロットへのアクセス制限が有効となる方法を例示する。
【００８３】
図１４は、本発明の第三実施例に係る計算機システムの構成例を示している。
【００８４】
この計算機システムでは、更なるストレージネットワーク２２０にストレージ装置２１５が接続される。ストレージネットワーク２２０では、例えば、ＳＣＳＩ或いはＦＣに従うプロトコルで通信が行われる。複数のホスト計算機１０ａ〜１０ｎが、そのストレージネットワーク２２０に接続され、各ホスト計算機１０は、ストレージ装置２１５が提供する共有ボリューム２２３にアクセスすることができる。共有ボリューム２２３は、複数のホスト計算機１０に共有される論理ボリュームである。共有ボリューム２２３内のデータを、複数のホスト計算機１０で参照、変更することができる。この第三実施例では、共有ボリューム２２３には、仮想計算機１５の生成に必要となるデータ、例えば、仮想計算機ＯＳや仮想計算機ＯＳ上で実行されるコンピュータプログラムなどが記憶される。
【００８５】
図１５は、第三実施例におけるホスト計算機１０の構成例を示している。
【００８６】
図２に示したホスト計算機１０に、ストレージ装置２１５とデータをやり取りするためのデータインタフェース２３５と、クラスタ制御プログラム２２５と、クラスタ構成テーブル２３０とが更に備えられる。仮想計算機１５が動作するためのコマンド、ライブラリ、データは、共有ボリューム２２３に格納されており、さらに、ホスト計算機１０ａ〜１０ｎはいずれも共有ボリューム２２３に接続されている。したがって、仮想計算機１５は、いずれのホスト計算機１０のメモリ上にあっても、共有ボリューム２２３を参照、変更して動作することができる。
【００８７】
クラスタ制御プログラム２２５は、クラスタ構成テーブル２３０を参照して、クラスタを構成するホスト計算機１０（以下、クラスタ相手ホスト）を特定し、管理用ネットワーク５５を介して、クラスタ相手ホスト１０に対してファイルのコピー、起動や停止の指示、仮想計算機のフェイルオーバなどを実施することができる。
【００８８】
図１６は、ストレージ装置２１５の構成例を示している。
【００８９】
ストレージ装置２１５は、メモリ２５０と、ＣＰＵ２４０と、データインタフェース（データＩ／Ｆ）２４５と、ハードディスクドライブ（ＨＤＤ）２５０ａ〜２５０ｎとを備える。メモリ６５には、ボリューム提供プログラム２５５が記憶されている。
【００９０】
ボリューム提供プログラム２２５は、単体のＨＤＤを用いてボリュームを提供できるほか、ＲＡＩＤ（Redundant Array of Independent Inexpensive Disks）構成された複数のＨＤＤ、単体のＨＤＤ、或いは、ＲＡＩＤ上の論理的な記憶領域を、論理ボリュームとして提供することができる。ホスト計算機１０は、データＩ／Ｆ２４５を介して、ボリューム提供プログラム２２５が提供する論理ボリュームにアクセスすることができる。
【００９１】
図６は、クラスタ構成テーブル２３０の構成例である。
【００９２】
クラスタ構成テーブル２３０は、クラスタ相手ホストを特定できる識別子（例としてノード名）が書かれるカラム１５５と、クラスタ相手ホストと通信するためのアドレス（例としてＩＰアドレス）が書かれるカラム１６０とがある。識別子及びアドレスは、このクラスタ構成テーブル２３０を備えるホスト計算機１０とクラスタを構成するクラスタ相手ホストごとに記録される。
【００９３】
図１７は、クラスタ相手ホストにスロット割り当てテーブル９０とドライブ状態テーブル８５とをコピーする手順の一例を示したフローチャートである。
【００９４】
この手順は、スロット割り当てテーブル９０またはドライブ状態テーブル８５の変更が発生したときに開始される。
【００９５】
最初に、クラスタ制御プログラム２２５は、クラスタ構成テーブル２３０を参照して、クラスタ相手ホストを特定する（Ｓ１０５）。
【００９６】
次に、クラスタ制御プログラム２２５は、Ｓ１０５で特定したクラスタ相手ホストの中で、いまだテーブル８５及び９０をコピーしていないクラスタ相手ホストがあるか調べる（Ｓ１１０）。これは、例えば、テーブル８５及び９０のコピーが済む都度に、そのコピーが済んだクラスタ相手ホストに一時的にフラグを立てる等の方法で、調べることができる。もしいまだテーブル８５及び９０をコピーしていないクラスタ相手ホストがない場合、すなわち、すべてのクラスタ相手ホストにテーブルをコピーした場合（Ｓ１１０：ＮＯ）、クラスタ制御プログラム２２５は、処理を終了する。
【００９７】
いまだテーブルをコピーしていないクラスタ相手ホストが一つ以上ある場合（Ｓ１１０：ＹＥＳ）、クラスタ制御プログラム２２５は、その一つ以上のクラスタ相手ホストの中から選択したクラスタ相手ホストにスロット割り当てテーブル９０をコピーし（Ｓ１１５）、次に、ドライブ状態テーブル９０をコピーする（Ｓ１２０）。コピーには、例えば、ｆｔｐ（File Transfer Protocol）、ｓｓｈ（Secure Shell）など利用することができる。
【００９８】
以上の手順によって、クラスタ相手ホストにスロット割り当てテーブル９０とドライブ状態テーブル８５とをコピーすることができる。
【００９９】
この第三実施例では、第一のホスト計算機から第二のホスト計算機に仮想計算機がフェイルオーバされた場合、第二のホスト計算機で稼動する仮想計算機によるテープ媒体へのアクセスを、コピー先のスロット割り当てテーブル９０とドライブ状態テーブル８５に基づいて制御することができる。
【０１００】
具体的には、例えば、第一のホスト計算機のホストＯＳ（以下、第一のＯＳ）が、その第一のホストＯＳ上で稼動する各仮想計算機を監視する。それにより、第一のホストＯＳは、或る仮想計算機がダウンした場合、そのことを検出することができる。第一のホストＯＳは、或る仮想計算機のダウンを検出した場合、クラスタ構成テーブル２３０から、クラスタ相手ホストを特定し、特定したクラスタ相手ホストのホストＯＳ（以下、第二のホストＯＳ）に、ダウンした仮想計算機の識別子（例えば名称）を通知する。第二のホストＯＳは、通知された識別子に関連付けられているデータ（例えば、ダウンした仮想計算機のＯＳ）を共有ボリューム２２３から読み出し、読み出したデータにより、通知された識別子を有する仮想計算機を生成する。これにより、仮想計算機のフェイルオーバが終了する。その後、そのフェイルオーバにより復元された仮想計算機がテープ媒体にアクセスする場合には、上記コピーされたスロット割り当てテーブル９０とドライブ状態テーブル８５に基づいて、その仮想計算機のアクセスを制御することができる。
【０１０１】
以上、本発明の幾つかの実施例を説明したが、これらの実施例は本発明の説明のための例示にすぎず、本発明の範囲をそれらの実施例にのみ限定する趣旨ではない。本発明は、その要旨を逸脱することなく、その他の様々な態様でも実施することができる。例えば、ホスト計算機、管理計算機及びバックアップサーバに備えられるメモリに代えて又は加えて、他種の記憶資源（例えばハードディスク）を採用することができる。また、第二の実施例と第三の実施例とを組み合わせても良い。
【図面の簡単な説明】
【０１０２】
【図１】図１は、本発明の第一実施例に係る計算機システムの構成例を示している。
【図２】図２は、ホスト計算機の構成例を示している。
【図３】図３は、管理計算機５０の構成例を示している。
【図４】図４は、スロット割り当てテーブル９０の構成例である。
【図５】図５は、ドライブ状態テーブル８５の構成例である。
【図６】図６は、クラスタ構成テーブル２３０の構成例である。
【図７】図７は、仮想計算機１５にスロット３５を割り当てる処理手順の一例を記述したフローチャートである。
【図８】図８は、データを読み書きする処理手順の一例を記述したフローチャートである。
【図９】図９は、本発明の第二実施例に係る計算機システムの構成例を示している。
【図１０】図１０は、バックアップサーバ１６５の構成例を示している。
【図１１】図１１は、第二実施例におけるホスト計算機１０の構成例を示している。
【図１２】図１２は、バックアップ対象テーブル１８０の構成例である。
【図１３】図１３は、バックアップの手順の一例を示したフローチャートである。
【図１４】図１４は、本発明の第三実施例に係る計算機システムの構成例を示している。
【図１５】図１５は、第三実施例におけるホスト計算機１０の構成例を示している。
【図１６】図１６は、ストレージ装置２１５の構成例を示している。
【図１７】図１７は、クラスタ相手ホストにスロット割り当てテーブル９０とドライブ状態テーブル８５とをコピーする手順の一例を示したフローチャートである。
【図１８】図１８は、管理画面１２５に表示される画面インタフェースの一例である。
【符号の説明】
【０１０３】
１０…ホスト計算機  １５…仮想計算機  ２０…テープライブラリ  ３０…ドライブ  ３５…スロット  ７５…テープライブラリ制御プログラム  ８５…ドライブ状態テーブル  ２４…スロット割り当てテーブル  １６５…バックアップサーバ  １７５…バックアッププログラム  ２００…バックアップエージェント  ２１５…ストレージ装置  ２２５…クラスタ制御プログラム  ２３０…クラスタ構成テーブル
【図１】
2008027279.tif 000003
【図２】
2008027279.tif 000004
【図３】
2008027279.tif 000005
【図４】
2008027279.tif 000006
【図５】
2008027279.tif 000007
【図６】
2008027279.tif 000008
【図７】
2008027279.tif 000009
【図８】
2008027279.tif 000010
【図９】
2008027279.tif 000011
【図１０】
2008027279.tif 000012
【図１１】
2008027279.tif 000013
【図１２】
2008027279.tif 000014
【図１３】
2008027279.tif 000015
【図１４】
2008027279.tif 000016
【図１５】
2008027279.tif 000017
【図１６】
2008027279.tif 000018
【図１７】
2008027279.tif 000019
【図１８】
2008027279.tif 000020