Veritas NetBackup 並列ストリームフレームワーク SDK 開発者ガイド
- NetBackup Parallel Streaming Framework を使用したワークロードの保護
- NetBackup Parallel Streaming Framework プラグインアーキテクチャ
- NetBackup Parallel Streaming Framework SDK の配備
- プラグイン開発の準備
- サンプルプラグインの使用
- 作業負荷プラグインの開発
- ワークロードプラグインの配備
- NetBackup Parallel Streaming Framework API リファレンス
- ログとトラブルシューティング
作業負荷ファイルについて
プラグインは、検出プロセスの後、バックアップホストごとに作業負荷ファイルを作成します。各バックアップホストの作業負荷ファイルには、関連付けられているバックアップジョブの特定時点の情報を含める必要があります。新しい作業負荷ファイルをバックアップごとに作成する必要があります。作業負荷ファイルでは、スナップショット ID (スナップショットが有効なバックアップの場合) と、バックアップするデータを表すアプリケーションオブジェクト階層が使用されます。
作業負荷ファイルはバイナリファイル形式で、構造は事前に定義されています。ただし、アプリケーションオブジェクト階層は、作業負荷に固有です。作業負荷ファイルの構造を次に示します。
snapshot_name_length (uint64) snapshot_name objects_path-1_length (uint 64) object_path-1 objects_path-2_length (uint 64) object_path-2 objects_path-n_length (uint 64) object_path-n
作業負荷ファイルの内容の例を次に示します。
50 snapshot_name=snapshot1_06-05-2015_18:08:25.048027 4 /vm1 (object path is maintained in the catalog) 11 /vm1/vdisk1 (object path is maintained in the catalog) 11 /vm1/vdisk2 (object path is maintained in the catalog) 4 /vm2 (object path is maintained in the catalog) 11 /vm2/vdisk1 (object path is maintained in the catalog)
スナップショットが有効なバックアップの場合:
作業負荷ファイルでは、アプリケーションオブジェクト階層の前に、スナップショット ID が示されています。
バックアップ処理は、有効なオブジェクトパスを参照するために、スナップショット ID (snapname) を使用してオブジェクトパス (realpath) を実際のパス (snappath) に解決します。このために、バックアップ処理はオブジェクトごとに aapi_get_snappath_from_realpath API を呼び出します。
たとえば、スナップショット ID が snapshot1_06-05-2018_18:08:25.048027 の /vm1/vdisk1 オブジェクトを NetBackup がバックアップする場合、バックアップ処理では次の操作が実行されます。
スナップショット名 snapshot1_06-05-2018_18:08:25.048027 と実際のパス /vm1/vdisk1 を使用して、aapi_get_snappath_from_realpath API を呼び出して、実際のパス (snappath) を取得します。
実際のパス /snapshot1_06-05-2018_18:08:25.048027/vm2/vdisk1 を取得します。これは、ディスクオブジェクトを開いて読み取るために使用できます。
実際のパス (snappath) /snapshot1_06-05-2018_18:08:25.048027/vm2/vdisk1 を使用して、aapi_open_object を呼び出してディスクオブジェクトを開き、有効なオブジェクトパス /vm1/vdisk1 を参照します。
次に、バックアップ処理は実際のパスを使用して、aapi_get_object_prop_byname API によるオブジェクトプロパティ情報のクエリーを実行します。バックアップ処理では、マスターサーバー上の NetBackup カタログにオブジェクトのプロパティ情報が格納されます。カタログに格納されている情報は、リストア時に使用されます。
スナップショット作成がプラグインでサポートされない場合、バックアップ処理は、作業負荷ファイルに示されているオブジェクトパスを実際のパスとして扱い、それらを使用して aapi_get_object_prop_byname API によるオブジェクトプロパティ情報を問い合わせます。
作業負荷ファイルは、次の場所に作成されます。
/install_path/tmp/masterserver/mediaserver/backuphost/policyname/apptype
メモ:
作業負荷ファイルの安全を確保するには、作業負荷ファイルを作成するときに、ルートのみの権限で ACL を設定する必要があります。
必要に応じて、プラグイン開発者は、スナップショット ID をカスタマイズできます。カスタマイズしたスナップショット ID を使用する場合、この ID は、NetBackup が作業負荷ファイルで生成したスナップショット ID に置き換えられます。ただし、後処理中は、NetBackup が提供した元のスナップショット ID のみが使用されます。そのため、開発者は、元のスナップショット ID とカスタマイズされたスナップショット ID のマッピングを管理する必要があります。
また、カスタムの ID を使用するときと、NetBackup Parallel Streaming Framework が実際のパスのスナップショットパスを要求するときは必ず、NetBackup は元のスナップショット ID を使用します。そのため、開発者は、元のスナップショット ID とカスタマイズされたスナップショット ID のマッピングを管理する必要があります。
また、NetBackup Parallel Streaming Framework が実際のパスのスナップショットパスを要求した場合、NetBackup は常に元のスナップショット ID を使用します。そのため、カスタム ID を使用する場合は、開発者が元のスナップショット ID とカスタマイズされたスナップショット ID のマッピングを管理し、対応する有効なスナップパスを Parallel Streaming Framework に返す必要があります。