NetBackup™ for MongoDB 管理者ガイド
- NetBackup を使用した MongoDB の保護の概要
- MongoDB Plug-in for NetBackup の前提条件の検証
- NetBackup for MongoDB の構成
- NetBackup を使用した MongoDB のバックアップ
- NetBackup を使用した MongoDB データのリストアまたはリカバリ
- トラブルシューティング
- 付録 A. 追加情報
mongodb.conf ファイルを使用する MongoDB のためのバックアップオプションの設定
メモ:
MongoDB 構成ツールを使用する場合、これらの手動の手順は必要ありません。
NetBackup はデフォルトのオプションを使用して、MongoDB データをバックアップします。バックアップ操作中に使用するカスタムオプションを指定するには、UNIX の場合 /usr/openv/var/global/
ディレクトリに mongodb.conf
ファイルを作成し、Windows プライマリサーバーの場合 <Install_Dir>\NetBackup\var\global
\ を作成する必要があります。
注意:
ファイル名 mongodb.conf
は大文字と小文字が区別されます。
mongodb.conf
ファイル内のすべてのオプションを指定する必要はありません。NetBackup はカスタム値が設定されていないオプションに対してデフォルト値を使用します。
mongodb.conf
ファイルで JSON 形式が使用されていることを確認し、ファイルパスを許可リストに追加します。(bp.conf
の bpcd_allowed_path オプションを使用します。)
NetBackup プライマリサーバーの許可リストに構成ファイルのパスを含めるを参照してください。
次のバックアップオプションとその値を、mongodb.conf
ファイルで指定できます。
注意:
ファイルのオプションでは、大文字と小文字が区別されます。
オプション |
詳細 |
---|---|
application_servers |
プライマリ設定サーバーの完全修飾ドメイン名 (FQDN) またはホスト名、またはその短縮名とポート番号、mongod と mongos ポートを次の形式で指定します。 clientFQDN_OR_hostname_OR_shortname:portnumber application_server が、MongoDB 環境で使用され、db.hostInfo() コマンドを使用して検証されたホスト名の値と一致することを確認します。 たとえば、db.hostInfo() ではホスト名の値は次のように表示されます: "hostname" : "<hostname_value>:<port>" 警告: MongoDB 用のアービターノードとして動作するノードは入力しないでください。 |
alternate_config_server |
セカンダリまたは代替設定サーバーの完全修飾ドメイン名 (FQDN) またはホスト名、またはその短縮名とポート番号。1 つのクラスタには、代替設定サーバーを 1 つだけ追加できます。 値には次の形式を使用します。 clientFQDN_OR_hostname_OR_shortname:portnumber alternate_config_server が、MongoDB 環境で使用され、db.hostInfo() コマンドを使用して検証されたホスト名の値と一致することを確認します。 たとえば、db.hostInfo() ではホスト名の値は次のように表示されます: "hostname" : "<hostname_value>:<port>" プライマリ設定サーバーへの接続が失敗した場合は、最初の有効な代替設定サーバーが使用されます。 シャード MongoDB クラスタの場合、mongod プロセスと mongos プロセスの両方が代替構成サーバーで実行される必要があります。 すべての application_servers エントリに対して、alternate_config_server の値を個別に入力する必要があります。 |
cleanup_time_in_min |
取り消されたジョブのために作成された古いスナップショットまたは oplogstore をクリーンアップする時間を分単位で指定できます。 値は、整数で指定する必要があります。 |
free_space_percentage_snapshot |
このオプションでは、スナップショットを作成するために使用できるボリュームグループ上の空き領域の割合を指定します。このオプションは完全バックアップの場合にのみ使用されます。 デフォルト値 (指定されていない場合) は 20% です。値は 0 から 100 の間である必要があります。パーセント記号 (%) は使用しないでください。 たとえば、vgdisplay コマンドを実行して、"Free PE / Size" フィールドの値を確認します。この free_space_percentage_snapshot 値は、データパスが存在するボリュームグループの Free PE / Size の割合です。 バックアップ操作時の MongoDB インスタンスのデータ変更率と、ボリュームグループで利用可能な空き容量に基づいて、 free_space_percentage_snapshot 値を調整します。 たとえば、次の場合に実行します。
この場合、free_space_percentage_snapshot の最小値を 25% として指定します。 空き領域スナップショットの割合の値を小さくしすぎると、スナップショット (およびその後のバックアップ) にエラーが発生する可能性があります。 空き領域のスナップショットの割合の値を大きくしすぎると、ボリュームグループの利用可能な領域の量が減る可能性があります。 一般的な方法について詳しくは lvcreateコマンドについて Linux のマニュアルページを参照してください。 |
data_channel_tls |
このパラメータを使用して、MongoDB クラスタとバックアップホスト間のデータチャネルの暗号化を無効または有効にします。 たとえば、"data_channel_tls": false を使用して、データチャネルの暗号化を無効にします。 デフォルトでは、NetBackup バックアップホストとシンクライアント (mdbserver) 間のすべてのトラフィックが TLS チャネルを介します。シンクライアント (mdbserver) からバックアップホストへのデータ移動に対してこの TLS を無効にして、パフォーマンスを向上させることができます。 メモ: このオプションが無効になっている場合でも、クレデンシャルなどの制御データと機密データは TLS チャネルを介して転送されます。 |
logdir |
MongoDB ノードでシンクライアント ( デフォルトの場所は |
loglevel |
ログレベルを指定します。 デフォルト値は 3 です。 ログレベルの値については、次のオプションを参照してください。
|
max_log_mbsize |
NetBackup シンクライアントログファイルの最大ファイルサイズを MB 単位で指定します。 デフォルトサイズは 10 MB です。新しいログファイルは毎日作成されるか、既存のログファイルが最大サイズを超える場合に作成されます。ログファイルの作成は進行中のジョブに影響せず、mdbserver によって実行される次回のジョブの間にログのロールオーバーが行われます。 ログは 30 日後にクリーンアップされます。 |
max_streams |
メモ: このパラメータは、シャード MongoDB クラスタにのみ適用されます。 バックアップホストごとの並列データストリームの数を定義します。最小値は 32 です。 max_streams が定義されない場合、デフォルト値は、バックアップホストごとに 32 個の並列データストリームになります。 mongodb.conf ファイルに次のエントリを追加します。 max_streams: { "global_default":<set_value>, "<backup_host>":<set_value> } ここで示された文字列については、次のとおりです。
メモ: このオプションは、バックアップホストごとの並列データストリームの数の上限を設定します。バックアップジョブまたはリカバリジョブは、利用可能なすべてのストリームは使用しないことがあります。 |
mdb_progress_loglevel |
アクティビティモニターにリストアされたファイルの進捗ログ情報を出力できます。 デフォルト値は 0 (オフ) です。 有効にするには、"mdb_progress_loglevel": 1 を設定します。 メモ: このオプションを有効にすると、リカバリ時間が長くなる可能性があります。 |
mdbserver_location |
MongoDB バックアップとリストア操作に必要な MongoDB ノードのシンクライアント ( ファイルは、保護する必要があるデータが含まれているサーバーにコピーされ、バックアップ操作の完了後に削除されます。 ファイルのコピー先のデフォルトの場所は メモ: ディレクトリの権限で競合が発生する可能性があるため、マウントパスまたは高レベルの Linux ディレクトリは指定しないでください。たとえば、/root、/etc、/usr、/bin、/home などのパスを指定しないでください。 |
mdbserver_port |
MongoDB ノードで実行されている NetBackup シンクライアント (mdbserver) に接続するためにバックアップホストによって使用されるポート。 デフォルト値は この値は文字列です。 |
mdbserver_port_range |
このパラメータは、単一の MongoDB ノードで複数の mongod インスタンスが実行される場合に使用します。 このオプションを使用すると、既存のポートが使用中の場合に、バックアップおよびリストア操作の範囲内で次に利用可能なポートを使用できます。 このオプションを使用すると、複数の NetBackup シンクライアント (mdbserver) を配備して、異なるポートで同時に複数のバックアップジョブを実行できます。 値を "mdbserver_port_range":range_value として入力します。ここで、range_value は利用可能なポート番号の範囲を定義する整数です。たとえば、range_value を 10 として追加し、mdbserver_port が 12000 と定義されている場合、ポート範囲は 12000 から 12009 が使用されます。 デフォルトの値は 10 です。 同時にバックアップされる MongoDB ホスト上の mongod インスタンスの数に基づいて、この値を変更します。 |
mdbserver_timeout_min |
NetBackup シンクライアント (mdbserver) プロセスが強制終了するまで待機する時間を分単位で定義します。 デフォルト値は 300 (分) です。 バックアップ処理時間に、より長い時間が必要な場合は、300 分より大きい値を設定します。 理想的には、mdbserver はプラグインが終了した後またはバックアップが完了した後に強制終了します。 |
mongos_port |
mongos プロセスが通信に使用するポート。 このパラメータは、シャード MongoDB クラスタの必須のパラメータです。 alternate_config_server または application_servers エントリにそれぞれこの値を指定する必要があります。 この値は文字列です。 |
oplog_location |
差分増分バックアップの場合は、MongoDB この場所はバックアップイメージに格納されます。 デフォルトの場所は この場所には、増分バックアップの oplog データ用に十分な空き領域があることを確認します。 |
snapshot_mount_path |
完全バックアップの間に LVM スナップショットをマウントするための MongoDB ノードのパスを指定します。 デフォルトパスは |
メモ:
MongoDB クレデンシャルファイルで構成した HostUser が、mongodb.conf ファイルに記述されているすべてのパスに対する読み取りおよび書き込み権限を持っていることを確認します。
すべてのオプションを追加しない場合は、不足しているオプションについてのエントリがログに追加されます。デフォルト値が、指定されていないオプションに対して使用され、バックアップ操作が続行されます。
{ "application_servers": { "FQDN_primary_configuration_server_1:port": { "alternate_config_server": [ { "hostname:port": "FQDN_alternate_configuration_server_1:26051", "mongos_port": "26051" } ], "mongos_port": "26052" }, "FQDN_primary_configuration_server_2:port": { "alternate_config_server": [ { "hostname:port": "FQDN_alternate_configuration_server_2:26053", "mongos_port": "26053" } ], "mongos_port": "26054" } }, "mdbserver_location": "/path/to/store/mdbserver/", "logdir": "/path/to/store/logdir/", "mdbserver_port": "21020", "loglevel": 5, "max_log_mbsize": 4, "oplog_location": "/path/to/store/oplog/", "free_space_percentage_snapshot": "25", "mdb_progress_loglevel": 1, "snapshot_mount_path": "/path/to/mount/snapshot/", "max_streams": { "global_default":2, "FQDN_backup_host_1":1 } }