Backup がクライアントから recover 要求を受け取ると、サーバーデーモン nsrd が、サーバーのメディアデーモン nsrmmd に交信します。nsrmmd デーモンは、サーバーのメディアデータベースデーモン nsrmmdbd に交信して、recover プログラムが要求したセーブセットがどのメディアにあるかを判断します。セーブセットが格納されているメディアがわかったら、nsrmmd デーモンがマウント要求を出し、そのメディアがセーブセットの先頭に移され、マウントされたメディア内のセーブセットが nsrmmd デーモンに渡されます。nsrmmd デーモンは、このセーブセットをクライアントの recover プログラムに転送し、recover プログラムがデータをクライアントのファイルシステムに復旧します。
サーバーのメディアデータベースデーモン nsrmmdbd が必要なボリュームを探せない場合、あるいは Backup ストレージノードまたはサーバー上に nsrmmd デーモン (有効なデバイス) がない場合は、recover 要求は失敗します。recover を要求したクライアントマシンでは、次のような Backup からのメッセージが表示されます。
NSR server client: no matching devices on server-or-storage-node |
同時に、Backup サーバーの「Pending」ディスプレイにも、次のメッセージが表示されます。
media notice: no matching devices on server-or-storage-node for recover by client client media notice: enable or check device(s) on server-or-storage-node |
図 A-2 に、Backup クライアントにデータを復旧する際に、Backup サーバーとクライアントのデーモンとプログラムがどのように関係し合って動作するかを示します。
ストレージノードは、Backup クライアントと、メディア管理デーモンおよびプログラムが格納されているマシンです。ストレージノードは、バックアップと復旧のための Backup 動作に使われる 1 台または複数台のストレージデバイスに接続されています。ストレージノードマシンのメディア管理デーモンが、ストレージボリューム上のデータを読み書きします。
ストレージノードでのバックアップと復旧の動作は、Backup サーバーでのバックアップと復旧の動作に似ています。大きな相違点は、データが置かれている場所です。
ストレージノードは、Backup サーバーによって制御されます。Backup サーバーのマスターデーモン nsrd が、ストレージノードのメディア管理デーモン nsrmmd を起動します。バックアップ時に、「Clients」リソースで指定されている「Storage Node Affinity」属性に基づいて、Backup サーバーが適切なデータを各メディア管理デーモンに配信します。
ストレージノードマシン (リモートデバイス) に接続されているストレージデバイスにデータが書き込まれると、Backup サーバーがデータの位置を追跡します。Backup サーバーでは、nsrindexd デーモンがクライアントファイルインデックスにエントリを書き込んでセーブセット内の各ファイルの位置を追跡し、nsrmmdbd デーモンがメディアデータベースにエントリを書き込んでメディア上の各セーブセットの位置を追跡します。
図 A-3 に、Backup ストレージノードとリモートストレージデバイスの両方が設定されている場合に、スケジュールされた保存処理時に、Backup サーバー、クライアントおよびストレージノードのデーモンとプログラムがどのように関係し合って動作するかを示します。
Backup サーバーがクライアントの recover プログラムから要求を受けると、Backup サーバーは、サーバーマシン上ではなくストレージノード上のメディア管理デーモン nsrmmd と交信します。nsrmmd デーモンは、メディアのデータを読み取って Backup クライアントに送ります。そこで recover プログラムがデータを復元します。
図 A-4 に、ストレージノードとリモートストレージデバイスの両方が設定されている場合の復旧プロセスでの動作を示します。