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

自己管理型レプリカセットからのノードの削除

レプリカセットのノードを削除するには、次のいずれかの手順を行います。

  1. Shut down the mongod instance for the member you wish to remove. To shut down the instance, connect using mongosh and use the db.shutdownServer() method.

  2. レプリカセットの現在のプライマリに接続します。現在のプライマリを確認するには、レプリカセットの任意のノードに接続した状態で db.hello()を使用します。

  3. 以下のいずれかの形式で rs.remove() を使用して、ノードを削除します。

    rs.remove("mongod3.example.net:27017")
    rs.remove("mongod3.example.net")

    レプリカセットで新しいプライマリを選択する必要がある場合、MongoDB により shell が一時的に切断されることがあります。このような切断が起きると、shell により自動的に再接続されます。ただし、コマンドが正常に実行されても、shell に DBClientCursor::init call() failed エラーが表示される場合があります。

ノードを削除するには、レプリカ構成ドキュメント を使用してレプリカセットを再構成し、そのノードを members 配列から削除します。

rs.reconfig() では、一度に最大 1 voting メンバーを追加または削除できます。レプリカセットから複数の投票メンバーを削除するには、一連の rs.reconfig() 操作を発行して、一度に 1 つのメンバーを削除します。詳しくは、「再構成では一度に 1 人の投票メンバーしか追加または削除できない」を参照してください。

  1. Shut down the mongod instance for the member you wish to remove. To shut down the instance, connect using mongosh and use the db.shutdownServer() method.

  2. レプリカセットの現在のプライマリに接続します。現在のプライマリを確認するには、レプリカセットの任意のノードに接続した状態で db.hello()を使用します。

  3. rs.conf() メソッドを発行して現在の構成ドキュメントを表示し、削除するメンバーの members 配列内での位置を決定します。

    mongod_C.example.net は、次の構成ファイルの 2 の位置にあります。

    {
    "_id" : "rs",
    "version" : 7,
    "members" : [
    {
    "_id" : 0,
    "host" : "mongod_A.example.net:27017"
    },
    {
    "_id" : 1,
    "host" : "mongod_B.example.net:27017"
    },
    {
    "_id" : 2,
    "host" : "mongod_C.example.net:27017"
    }
    ]
    }
  4. 現在の構成ドキュメントを変数 cfg に割り当てます。

    cfg = rs.conf()
  5. cfg オブジェクトを変更してメンバーを削除します。

    mongod_C.example.net:27017 を削除するには、次の JavaScript 操作を使用します。

    cfg.members.splice(2,1)
  6. 次のコマンドを発行して、新しい構成でレプリカセット構成ドキュメントを上書きします。

    rs.reconfig(cfg)
  7. 新しい構成を確認するには、rs.conf() を実行します。

    上記の例では、出力は次のようになります。

    {
    "_id" : "rs",
    "version" : 8,
    "members" : [
    {
    "_id" : 0,
    "host" : "mongod_A.example.net:27017"
    },
    {
    "_id" : 1,
    "host" : "mongod_B.example.net:27017"
    }
    ]
    }