AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。

自己管理型シャーディングされたクラスターのレプリカセットへの変換

このチュートリアルでは、シャーディングされたクラスターをシャーディングされていないレプリカセットに変換する方法について説明します。レプリカセットをシャーディングされたクラスターに変換するには、「 自己管理型レプリカセットをシャードクラスタに変換 」を参照してください。シャーディングされたクラスターの詳細については、 シャーディング に関するドキュメントを参照してください。

このチュートリアルでは、次のタスクについて説明します。

  1. バランサーを無効にします。

  2. クラスターをレプリカセットに変換します。

  3. クラスターのロックを解除します(マルチシャード クラスターのみ)。

このチュートリアルの手順にはMongoDB 6.0 以降が必要です。

fsyncfsyncUnlockコマンドと コマンドには 認可アクションが必要です。このアクションは、fsync hostManagerロールまたはカスタムロールを通じて割り当てられます。

シャーディングされたクラスターでは、 MongoDB はユーザーとロールの定義をadmin コンフィギュレーションサーバー の データベースに保存します。これらの定義は、クラスターを変換するときにレプリカセットに転送されません。

アプリケーションがレプリカセットに接続する前に、レプリカセットで必要な配置に必要なユーザーとロールを作成します。詳細については、「 自己管理型配置でのユーザーの作成 」および「 自己管理型配置でのユーザーとロールの管理 」を参照してください。

チャンクの移行、再シャーディング、スキーマ変換が通常実行されない場合は、 クラスターを変換します 。

シャードが 1 つしかないシャードクラスターの場合、そのシャードには完全なデータセットが含まれます。そのクラスターをシャーディングされていないレプリカセットに変換するには :

1

バランサーを無効にするには:

  1. mongoshmongosシャーディングされたクラスター内の インスタンスに を接続します。

  2. バランサー を停止するには、次のコマンドを実行します。

    sh.stopBalancer()
  3. バランサーが無効になっていることを確認するには、次のコマンドを実行し、出力が false であることを確認します。

    sh.getBalancerState()
2
  1. すべての mongos インスタンスを停止します。

  2. 新しいレプリカセットとなるシャードのレプリカセットに直接接続するようにアプリケーションを再構成します。

  3. レプリカセットのノードのローリング再起動を実行して、--shardsvr mongodから オプションを除きます。

    Tip

    --shardsvrオプションを変更すると、mongodが着信接続をリッスンするポートが変更されます。

単一シャード クラスターは、データセットに対する読み取りおよび書き込み (write) 操作を受け入れる非シャーディングのレプリカセットになりました。必要に応じて、コンフィギュレーションサーバーを廃止できます。

シャーディングされたクラスター バランサーの管理

このページを評価