NetBackup™ for MongoDB 管理者ガイド
- NetBackup を使用した MongoDB の保護の概要
- MongoDB Plug-in for NetBackup の前提条件の検証
- NetBackup for MongoDB の構成
- NetBackup を使用した MongoDB のバックアップ
- NetBackup を使用した MongoDB データのリストアまたはリカバリ
- トラブルシューティング
- 付録 A. 追加情報
MongoDB を保護するための前提条件とベストプラクティス
シャード MongoDB クラスタの場合、mongos プロセスと mongod プロセスは、バックアップポリシーでクライアントとして指定されたアプリケーションサーバーで実行する必要があります。
RHEL および SUSE プラットフォームのみが、バックアップホストのサポート対象です。
MongoDB 用 NetBackup プラグインには、NetBackup プライマリサーバー、メディアサーバー、およびバックアップホストで NetBackup バージョン 8.2 以降が必要です。
NetBackup が、使用している MongoDB バージョンをサポートしていることを確認します。詳しくは、ソフトウェア互換性リストを参照してください。
NetBackup は、RHEL、SUSE、Linux-s390x、IBMzSeriesRedHat オペレーティングシステムに構成またはインストールされている MongoDB クラスタをサポートします。
NetBackup は、次の MongoDB 構成をサポートします。
シャード MongoDB クラスタ (設定サーバーとシャードを使用した MongoDB クラスタ)
レプリカセットの MongoDB クラスタ
レプリカセットなしのスタンドアロンの MongoDB
NetBackup は、MongoDB に対して次の認証形式をサポートします。
認証なし
単純認証
証明書ベースの認証
NetBackup は、バックアップおよびリストアで次のファイルシステムをサポートします。
XFS
ext4
すべての MongoDB ノードに OpenSSH パッケージをインストールします。すべての MongoDB ノードで SSH を有効にします。
NetBackup は、WiredTiger ストレージエンジンで構成されている MongoDB クラスタをサポートします。
NetBackup は、
.tar
ファイルを使用してローカルに設定またはインストールされた、または MongoDB 公式リポジトリを使用してインストールされた MongoDB クラスタを保護します。NetBackup は、完全バックアップとともに、MongoDB の差分増分バックアップをサポートします。累積増分バックアップは現在サポートされていません。
NetBackup では、バックアップの高可用性をサポートするために、シャード MongoDB 環境に少なくとも 3 つの設定サーバーを構成することをお勧めします。
MongoDB アプリケーションも備えたサーバーには、MongoDB プラグインをインストールしないでください。MongoDB アプリケーションを備えたサーバーは、バックアップホストとして使用できません。
MongoDB サーバーとバックアップホストのローカル時刻が NTP サーバーと同期していることを確認します。
シャード MongoDB クラスタの場合、クエリールーター役割が構成サーバーに存在する必要があります。
SUSE オペレーティングシステムを備えた MongoDB クラスタの場合、すべての MongoDB ノードで、
/etc/ssh/sshd_config
ファイルの PasswordAuthentication フィールドを Yes に設定します。ファイルを更新したら、sshd を再起動します。
すべてのクラスタで、同じハッシュキーアルゴリズム (RSA) がサポートされることを確認します。
リストアまたはリカバリ中に、tpconfig コマンドを使用して構成されたホストユーザークレデンシャルが、MongoDB クラスタの構成に使用されるホストユーザーアカウント (root または root 以外の MongoDB デーモンのホストユーザーアカウント) であることを確認します。
詳しくは、root 以外のユーザーのホストユーザーとしての使用を参照してください。
MongoDB バージョン 4.2 を保護するには、NetBackup プライマリサーバーおよびメディアサーバーとともに、バックアップポリシーで定義した NetBackup バックアップホストをバージョン 9.0 にアップグレードします。9.0 より前のバージョンのバックアップホストは、MongoDB 4.2 クラスタに影響する可能性があります。
ss コマンドが MongoDB ノードで利用可能であることを確認します。ss コマンドは、外部から取得した構成ファイルを使用して作成した MongoDB クラスタを識別するために必要です。
MongoDB バージョン 4.2 を保護するには、NetBackup プライマリサーバーおよびメディアサーバーとともに、バックアップポリシーで定義した NetBackup バックアップホストをバージョン 9.0 にアップグレードします。9.0 より前のバージョンのバックアップホストは、MongoDB 4.2 クラスタに影響する可能性があります。
NetBackup クライアントをバックアップホストとして使用する場合は、NetBackup プライマリサーバーの
bp.conf
ファイルに次の値を追加します。APP_PROXY_SERVER=NBU_CLIENT_FQDN
MongoDB ホストユーザーに root 権限がない場合は、ユーザーがシンクライアント (
mdbserver
)、ログ、スナップショットなどをコピーするためのすべての一時パスにアクセスできることを確認します。オペレーティングシステムのsudoers
ファイルに root 以外のユーザーを追加します。.tar
ファイルを使用する、またはデフォルト以外の場所に MongoDB をインストールする場合は、CLI から MongoDB コマンドを実行できるように、オペレーティングシステムのbashrc
ファイルに MongoDB bin フォルダのパスを追加します。MongoDB サーバーが SUSE 12.3 オペレーティングシステムを使用している場合は、--host <FQDN> オプションを使用して、mongod と mongos プロセスに接続できることを確認します。詳しくは、『MongoDB 管理者ガイド』を参照してください。
-host_password オプションを tpconfig コマンドと
mongodb.conf
HostPassword
と併用する場合、パスワードが次を満たすことを確認します。63 文字を超えていない
次の英数字を 1 文字以上含む: a-z、A-z、0-9
次の文字を 1 文字以上含む: - (ハイフン)、_ (アンダースコア)、, (カンマ)、. (ピリオド)、? (疑問符)
ログ、シンクライアント (
mdbserver
)、スナップショット、またはその他のすべてに対するパスをmongodb.conf
ファイル内で定義するときは、クレデンシャルファイルのホストユーザーが、これらのパスにアクセスするための有効な権限を持っていることを確認します。SSH を有効にするには、sudoers ファイルに次のエントリを追加します。
Default <host_user> !requiretty
MongoDB の制限としきい値が、正式な MongoDB のガイドラインに従っていることを確認します。
ポリシーの構成中、および
mongodb.conf
ファイル内で、ホスト名が tpconfig コマンドで一貫して使用されることを確認します。たとえば、FQDN を使用する場合、すべてのホスト名インスタンスに対し、短縮名でなく FQDN を使用します。MongoDB 環境で使用され、db.hostInfo() コマンドを使用して検証されたホスト名と application_server が一致することを確認します。
たとえば、db.hostInfo() によって表示されるホスト名の値は次のようになります。
"hostname" : "<hostname_value>:<port>"
バックアップジョブまたはリストアジョブを実行する前に、
mongodb.conf
ファイル内に JSON 形式のエラーまたはタイプミスがないことを確認します。mongod.conf
ファイル内に追加され、tpconfig コマンドと併用されるセキュリティ証明書のパスが、すべての MongoDB ノードで同じであることを確認します。単純認証の場合、すべての MongoDB ノードに対し、管理データベースからのルートグループに属する同じユーザーを構成します。
mongod.conf
ファイルまたはmongos.conf
ファイルを使用して MongoDB プロセスを開始する場合は、MongoDB クラスタの絶対システムパスを使用して、mongod
ファイルを実行します。たとえば、次のようなコマンドを使用します。mongod --config /home/user1/mongod.conf
NetBackup では、MongoDB インスタンスの構成を変更した後に完全バックアップを実行することをお勧めします。構成を変更した後に増分バックアップを実行するようにスケジュールされている場合は、増分バックアップの前に完全バックアップを手動で実行します。
たとえば、MongoDB の機能の互換性のバージョン (FCV)、MongoDB のバージョン、認証形式、トポロジー (新しいシャードの追加または既存のシャードの削除)、ストレージパラメータなどを変更した場合は、完全バックアップを実行します。