22.3 eMBoxクライアントを使ったバックアップ/復元作業

eMBoxクライアントはコマンドラインJavaクライアントで、これを使用するとeDirectory Backup eMToolなどのeMBoxツールにアクセスできます。複数サーバ環境でも、ファイアウォール越しのアクセスができれば、1台のコンピュータからバックアップ、復元、ロールフォワードログの設定ができます。これは、ほとんどのバックアップタスクと復元タスクを、ファイアウォールの内側でも外側でも、iManagerを使用してブラウザでリモートに実行できるようにします。高度な処理は、コマンドラインから実行するJavaクライアントである、eMBox Clientを使い、リモート操作で実行できます。ファイアウォール越しにでも、あるいはVPN経由でも操作できます。

iManagerからは、コールドバックアップ、無人バックアップ、高度な復元機能を除くバックアップ/復元機能を実行できます。詳しくは「NetIQ iManagerを使ったバックアップ/復元作業」を参照してください。

eDirectory バックアップツールは、eMBoxツールセットの一部です。eMBoxは、eDirectoryを構成する一部としてサーバにインストールされるサービスです。

バックアップツールは次のファイルで構成されます。

ファイル名

説明

backupcr

バックアップ/復元機能をすべて含むコアライブラリ。

このライブラリにはユーザインタフェースはなく、backuptlプログラムから動的にロード、リンクされる形で動作します。

backuptl

backupcrライブラリへのツールインタフェース。DSBKアーキテクチャを介してバックアップ/復元機能を提供するプログラムです。

これには、iManagerプラグイン、DSBK、Javaコマンドラインクライアントを介してアクセスできます。

dsbackup_en.xlf

バックアップツールから返されるメッセージを含む言語ファイルです。

重要:復元後の検証処理については、8.5より前のeDirectoryとは互換性がありません。レプリカリングに属するサーバで新しいバックアップ/復元ツールを使う場合は、これに属するサーバすべてをeDirectory 8.5以降にアップグレードする必要があります

eMBoxクライアントはバッチモードで実行できるため、eDirectory Backup eMToolを使用して無人バックアップを行うことができます。

eMBoxClient.jarファイルは、eDirectoryの一部としてサーバにインストールされます。それ以外にも、Sun JVM 1.3.1が動作する環境であれば、eMBoxClient.jarをコピーして動かすことができます。詳細については、eDirectory Management Toolboxおよびワークステーションでクライアントを実行するを参照してください。

eDirectoryのバックアップ/復元作業に先立ち、「eDirectoryのバックアップ処理に関する確認事項」を参照して問題点を確認し、効率的に作業できるようにしてください。

22.3.1 前提条件

  • バックアップ処理を起動するマシンに、ファイルeMBoxClient.jarがあることを確認してください。

    ファイルは、eDirectoryインストールの一部としてサーバにインストールされます。それ以外にも、Sun JVM 1.3.1が動作する環境であれば、eMBoxClient.jarをコピーして実行することができます。複数サーバ環境でも、ファイアウォール越しのアクセスが可能であれば、1台のコンピュータからバックアップを実行できます。詳細については、コマンドラインクライアントの使用を参照してください。

  • ロールフォワードログを作成するのであれば、バックアップを行う前にこの機能を有効にしてください。

    レプリカリングに属するサーバは、ロールフォワードログ機能を有効にしておく必要があります。バックアップファイルがあっても、ロールフォワードログがなければ復元後の検証処理に失敗し、データベースを開けないことになります。

    ロールフォワードログの詳細については、「ロールフォワードログを使用する」を参照してください。また、この機能を有効にする手順については、eMBoxクライアントによるロールフォワードログの設定を参照してください。

  • コマンドラインオプションについては、「バックアップ/復元のコマンドラインオプション」を参照してください。

  • 複数サーバ環境のツリーの場合、このサーバとレプリカを共有するサーバすべてについて、eDirectory 8.5以降にアップグレードする必要があります。

22.3.2 eMBoxクライアントによる手動バックアップ

eMBoxクライアントを使って、eDirectoryデータベースの中身を、指定したファイルにバックアップすることができます。バックアップファイルには、eDirectoryをその時点の状態に復元するために必要な情報がすべて含まれています。また、処理結果は所定のログファイルに記録されます。

eMBoxクライアントを使ってeDirectoryデータベースをバックアップする手順を次に示します。

  1. eMBoxクライアントを対話式モードで起動します。

    • Linux: コマンドラインで、「edirutil -i」と入力します。

    • Windows: drive\novell\nds\edirutil.exe -iを実行します。

    edirutilファイルは、eMBoxクライアントを実行するためのショートカットです。Java実行可能ファイルと、eDirectoryでeMBoxクライアントがインストールされるデフォルトの場所を指します。この情報は、クライアント用にパスおよびクラスパスをセットアップするに記載されているようにして手動で入力することもできます。

    eMBox Clientが開くと、「eMBox Client>」というeMBox Clientプロンプトが現れます。

  2. バックアップの対象サーバにログインします。次のように入力してください。

    login -s server_name_or_IP_address -p port_number -u username.context -w password

    たとえば、Windowsでは、次のように入力します。

    login -s 151.155.111.1 -p 8009 -u admin.mycompany -w mypassword

    セキュア接続が確立できないというエラーが表示される場合は、「クライアントを使用してセキュア接続を確立する」に表示されているJSSEファイルがシステム上にない可能性があります。

    指定するポート番号が分からない場合は、eDirectoryポート番号を確認する を参照してください。

    eMBoxクライアントはログインが成功したかどうかを表示します。

  3. eMBoxクライアントのプロンプトが出たら、次のような形式でバックアップコマンドを入力します。

    backup -b -f backup_filename_and_path -l backup_log_filename_and_path -u include_file_filename_and_path -t -w -a

    各スイッチの間にはスペースが必要です。スイッチの順序は重要ではありません。

    たとえば、Windowsでは、次のように入力します。

    backup -b -f c:\backups\8_20_2001.bak -l c:\backups\backup.log -u c:\backups\myincludefile.txt -t -w -a

    この例では、フルバックアップを取ること(-b)、バックアップファイルをc:\backups\8_20_2001.bakとすること、処理結果をc:\backups\backup.logに出力すること、さらに、データベースとともに、次に示す他のファイルもバックアップすることを指定しています。

    • 管理者があらかじめ作成したインクルードファイル(-u c:\backups\myincludefile.txt)に列挙されたファイル。

    • ストリームファイル(-t)

      さらにこの例ではバックアップファイルの上書き(-w)が指定されているため、同じ名前のバックアップファイルがあればBackup eMToolにより上書きされます。

    • -aオプションは、ホット連続バックアップ中に、ロールフォワードログディレクトリから古いログファイルを削除します。

    eMBoxクライアントはバックアップが成功したかどうかを表示します。

  4. サーバからログアウトするには、次のコマンドを入力します。

    logout

  5. eMBoxクライアントを終了するには、次のコマンドを入力します。

    exit

  6. eDirectoryのバックアップ処理が終了したら、すぐにファイルシステムのバックアップ作業を行い、テープに保存しますBackup eMToolによる処理では、サーバ上にバックアップファイルができるだけです。

手動バックアップの詳細については、DSBKによる手動バックアップを参照してください。

22.3.3 バッチファイルとeMBoxクライアントによる無人バックアップ

バッチファイルを使用して、eMBoxクライアントによるeDirectoryの無人バックアップを実行します。たとえば週1回フルバックアップ、毎晩インクリメンタルバックアップを取る、といった運用が可能です。

バッチモードでeMBoxクライアントを実行するには、システムバッチファイルを使う、eMBoxクライアントの内蔵バッチファイルを使う、両者を組み合わせて使う、という方法があります。詳細については、コマンドラインクライアントをバッチモードで実行するを参照してください。

ここではシステムバッチファイルを使う方法を解説します。

  1. サーバをバックアップするためのシステムバッチファイルを作成します。次のような書式で、1行に1サーバ分のコマンドを記述してください。

    Windows環境とLinux環境で一般的なパターンは次のとおりです。

    java -cp path/eMBoxClient.jar embox -s server_name -p port_number -u username.context -w password -t backup.backup -b -f backup_filename_and_path -l backup_log_filename_and_path -u include_file_filename_and_path -t -w

    具体例とその解説については、「無人バックアップ用システムバッチファイルの例」を参照してください。

    毎晩実行するインクリメンタルバックアップにも、フルバックアップに使うのと同じバッチファイルが使えますが、-bスイッチを-iに変更して、フルバックアップではなくインクリメンタルバックアップを実行します。フルバックアップとインクリメンタルバックアップで、保存先バックアップファイル名を異なるものにしておく方がよいでしょう。

    指定するポート番号が分からない場合は、「eDirectoryポート番号を確認する」を参照してください。セキュア接続を使用する場合は、「クライアントを使用してセキュア接続を確立する」を参照してください。eMBoxクライアントの内蔵バッチファイルの使い方については、「コマンドラインクライアントをバッチモードで実行する」を参照してください。

  2. このバッチファイルを定期的に起動するよう設定します。具体的な設定方法については、オペレーティングシステムまたはサードパーティ製ソフトウェアの資料を参照してください。

  3. eDirectoryのバックアップ後すぐに、ファイルシステムのバックアップ作業を行い、テープに保存できるよう準備してください

    Backup eMToolによる処理では、サーバ上にバックアップファイルができるだけです。

  4. バックアップが正常に実行されているか、ログファイルで定期的に確認してください。

無人バックアップ用システムバッチファイルの例

システムバッチファイルの例を以下に示します。

Windows用のバッチファイル例

java -cp c:\novell\nds\embox\eMBoxClient.jar embox -s myserver -p 8008 -u admin.myorg -w mypassword -n -t backup.backup -b -f c:\backup\backup.bak -u c:\backup\includes\includefile.txt -l c:\backup\backup.log -t -w

この例には次のようなオプションが指定されています。

  • フルバックアップを取る指定(-b)。

  • インクルードファイルの指定(-u)。これはオプションです。データベース以外にもファイルをバックアップしたい場合に使います。インクルードファイルはあらかじめ用意しておいてください。

  • ストリームファイル(-t)もバックアップされます。

  • 同じ名前のバックアップファイルがあれば上書きする指定(-w)。

    重要:同じバッチファイルを繰り返し使用するなど、同じ名前のバックアップファイルが存在する場合、バックアップが正常に行われるように、-wオプションを使用して、既存のバックアップファイルが上書きされるようにしてください。

    バッチモードでは、同じ名前のファイルが存在する場合に-wが指定されていないと、デフォルトの動作として、ファイルは上書きされず、バックアップは作成されません。対話式モードでは、-wが指定されていないと、ファイルを上書きしてよいかどうかを尋ねられます。

    eDirectoryのフル/インクリメンタルバックアップの都度、すぐにファイルシステムのバックアップを取っているのであれば、前回のバックアップファイルはテープに保存されているはずです。したがって上書きしても問題ありません。

  • この例では非セキュアポートが使用されているため(-p 8008)、非セキュア接続が指定されています(-n)。

22.3.4 eMBoxクライアントによるロールフォワードログの設定

eMBoxクライアントを使って、ロールフォワードログに関する設定を変更することができます。次のような設定ができます。

  • 現在の設定の確認

  • ロールフォワードログ機能の有効/無効の切り替え

    レプリカリングに属するサーバは、ロールフォワードログ機能を有効にしておく必要があります。バックアップファイルがあっても、ロールフォワードログがなければ復元後の検証処理に失敗し、データベースを開けないことになります。

  • ロールフォワードログの保存先ディレクトリの変更

  • ロールフォワードログのファイルサイズの最小値、最大値の設定

  • 現在使用中のログ、既に書き出しを終えた最新のログの判別

  • ストリームファイルをロールフォワードログに含めるかどうかの切り替え

ロールフォワードログの詳細については、「ロールフォワードログを使用する」を参照してください。

  1. eMBoxクライアントを対話式モードで起動します。

    • Linux: コマンドラインで、「edirutil -i」と入力します。

    • Windows: drive\novell\nds\edirutil.exe -iを実行します。

    edirutilファイルは、eMBoxクライアントを実行するためのショートカットです。Java実行可能ファイルと、eDirectoryでeMBoxクライアントがインストールされるデフォルトの場所が指定されているほか、必要な-nsオプションも含まれています。これらのオプションは、ワークステーションでクライアントを実行するに記載されているようにして手動で入力することもできます。

    正常に起動されると、「eMBox Client>」というプロンプトが現れます。

  2. ロールフォワードログの設定を行うサーバにログインします。次のように入力してください。

    login -s server_name_or_IP_address -p port_number -u username.context -w password

    たとえば、Windowsでは、次のように入力します。

    login -s 151.155.111.1 -p 8009 -u admin.mycompany -w mypassword

    セキュア接続が確立できないというエラーが表示される場合は、「クライアントを使用してセキュア接続を確立する」に表示されているJSSEファイルがシステム上にない可能性があります。

    指定するポート番号が分からない場合は、eDirectoryポート番号を確認する を参照してください。

    eMBoxクライアントはログインが成功したかどうかを表示します。

  3. (オプション)次のコマンドを入力して、現在の設定を検索します。

    getconfig

    オプション指定は必要ありません。

    たとえば次のように表示されます。

    Roll forward log status OFF
    Stream file logging status OFF
    Current roll forward log directory C:\rfl\nds.rfl
    Minimum roll forward log size (bytes) 104857600
    Maximum roll forward log size (bytes) 4294705152
    Last roll forward log not used 00000000.log
    Current roll forward log 00000001.log
    *** END ***
  4. setconfigコマンドで設定を変更します。次のような形式で入力してください。

    setconfig [-L|-l] [-T|-t] -r path_to_roll-forward_logs -n minimum_file_size -m maximum_file_size

    各スイッチの間にはスペースが必要です。スイッチの順序は重要ではありません。

    ロールフォワードログ専用のディスクパーティション/ボリュームを用意するのが最善です。こうしておけば、ディスク容量やアクセス権を監視しやすくなります。

    警告:ロールフォワードログ記録を有効にしたら、デフォルトの保存先は使用しないでください。障害対策のためには、eDirectoryとは別のディスクパーティション/ボリューム、別の記憶デバイスを指定してください。ロールフォワードログディレクトリは、バックアップ環境設定を変更するサーバ上である必要があります。

    重要:ロールフォワードログ機能を有効にする場合、ログを保存するボリュームのディスク容量を常に監視してください。これを怠ると、ログの容量は増える一方なので、ディスクパーティション/ボリュームがあふれてしまう恐れがあります。ディスク容量が不足してロールフォワードログを作成できない場合は、eDirectoryはそのサーバに対して応答しなくなります。書き出しが終わったロールフォワードログは、定期的にバックアップし、サーバから削除するようお勧めします。詳細については、ロールフォワードログのバックアップと削除を参照してください。

  5. サーバからログアウトするには、次のコマンドを入力します。

    logout

  6. eMBoxクライアントを終了するには、次のコマンドを入力します。

    exit

22.3.5 eMBoxクライアントによるバックアップファイルの復元作業

eMBoxクライアントを使ってバックアップファイルに保存されたデータからeDirectoryデータベースを復元する手順を解説します。手動あるいはバッチ方式で残しておいたバックアップファイルから、データを復元できます。処理結果は所定のログファイルに記録されます。

eMBoxクライアントを使えば、iManagerでは実現できない高度な復元機能も実行できます。これらは、「バックアップ/復元のコマンドラインオプション」のrestoreおよびrestadvの項に記載されています。

eMBoxクライアントを使ってeDirectoryデータベースを復元する手順を示します。

  1. 必要なバックアップファイルを集めておきます。詳しくは「復元処理の準備」を参照してください。

  2. eMBoxクライアントを対話式モードで起動します。

    • Linux: コマンドラインで、「edirutil -i」と入力します。

    • Windows: drive\novell\nds\edirutil.exe -iを実行します。

    edirutilファイルは、eMBoxクライアントを実行するためのショートカットです。Java実行可能ファイルと、eDirectoryでeMBoxクライアントがインストールされるデフォルトの場所が指定されているほか、必要な-nsオプションも含まれています。この情報は、ワークステーションでクライアントを実行するに記載されているようにして手動で入力することもできます。

    正常に起動されると、「eMBox Client>」というプロンプトが現れます。

  3. 復元の対象サーバにログインします。次のように入力してください。

    login -s server_name_or_IP_address -p port_number -u username.context -w password

    たとえば、Windowsでは、次のように入力します。

    login -s 151.155.111.1 -p 8009 -u admin.mycompany -w mypassword

    セキュア接続が確立できないというエラーが表示される場合は、「クライアントを使用してセキュア接続を確立する」に表示されているJSSEファイルがシステム上にない可能性があります。

    指定するポート番号が分からない場合は、eDirectoryポート番号を確認する を参照してください。

    eMBoxクライアントはログインが成功したかどうかを表示します。

  4. eMBoxクライアントのプロンプトで、次のような一般的な形式でrestoreコマンドを入力します。

    restore -r -a -o -f full_backup_path_and_filename -d roll-forward_log_location -l restore_log_path_and_filename

    各スイッチの間にはスペースが必要です。スイッチの順序は重要ではありません。-rスイッチを使用してeDirectoryデータベースそのものを復元します。このスイッチを指定しないと、その他の種類のファイルのみが復元の対象となります。復元処理の終了後にデータベースをアクティブにして開くには、-aおよび-oを指定してください。

    ロールフォワードログを使って復元する場合は、ログのフルパスを指定しなければなりません。フルパスは、eDirectoryにより自動的に作成されたディレクトリ(通常は\nds.rfl)を含みます。このディレクトリについて詳しくはロールフォワードログの保存先を参照してください。

    次に例を示します。

    restore -r -a -o -f sys:/backup/nds.bak -d $HOME/rfldir/nds.rfl -l $HOME/backups/backup.log

    この例では、データベースそのものを復元し(-r)、復元の検証が正常終了してから、そのデータベースをアクティブにして(-a)、開く(-o)よう指定しています。-fスイッチでフルバックアップファイルの場所を、-dでロールフォワードログの場所を指定しています。また、復元処理の結果を記録するログファイルを、-lで指定しています。

    これによりフルバックアップファイルからの復元処理が実行され、次にインクリメンタルバックアップファイルの指定を求めるプロンプトが現れます。

  5. (状況によって実行)インクリメンタルバックアップファイルから復元する場合は、プロンプトに応じて順次、そのパスとファイル名を入力します。

    プロンプトには次に指定するべきファイルのIDが表示されます。これはインクリメンタルバックアップファイルのヘッダに記載されているものです。

    バックアップ処理が正常終了すれば、その旨の表示が現れます。

  6. (状況によって実行)復元処理に失敗した場合は、ログファイルでエラーの原因を確認してください。

    復元後の検証に失敗した場合の対処については、「復元後の検証処理に失敗した場合の対処方法」を参照してください。

    メモ:レプリカリング中にeDirectory 8.5より前のバージョンが稼動しているサーバがある場合、復元処理は失敗します。エラーコードは-666、すなわち「DSバージョンの不整合」となります。

  7. サーバからログアウトするには、次のコマンドを入力します。

    logout

  8. eMBoxクライアントを終了するには、次のコマンドを入力します。

    exit

  9. (状況によって実行)NICIセキュリティファイルを復元した場合は、復元の完了後、サーバを再起動してNICIを再初期化し、その後でDIBを復元します。

  10. ここでサーバが通常どおり要求に応答することを確認しておきます。

  11. (状況によって実行)このサーバでロールフォワードログ機能を使うためには、改めて有効に切り替え、障害対策のための書き出し先も設定し直して、ロールフォワードログの環境設定を再作成する必要があります。ロールフォワードログを有効にしてから、改めてフルバックアップも取る必要があります。

    この手順が必要となるのは、復元処理の過程で、ロールフォワードログに関する設定はデフォルトに戻るためです。つまり、ロールフォワードログ機能は無効となり、保存先もデフォルトの場所になるからです。フルバックアップが改めて必要となるのは、スケジュールに従って次に無人でのフルバックアップが取られるまでに、再び障害が起こる可能性があるためです。

    ロールフォワードログの詳細については、「ロールフォワードログを使用する」を参照してください。

以上で復元作業が終了しました。NICIの再初期化も済んでいるので、暗号化された情報にもアクセスできます。ロールフォワードログ機能を使用する場合は、今後の障害に備えるため、再びこの機能を有効にし、フルバックアップを取っておいてください。