レプリカセット ノードの新しいサーバーへの移行
Overview
MongoDB Ops Manager コンソールから、管理対象のレプリカセットの 1 つのメンバーを別のメンバーに置き換えることができます。 このプロセスを使用して、レプリカセットのメンバーを新しい基礎サーバーに移行します。 この手順には、以下が必要です。
新しいサーバーをプロビジョニングします。
レプリカセットに別のノードを追加します。
レプリカセットの古いノードをシャットダウンします。
古いノードの管理を解除します(任意)。
Considerations
最初の同期
新しいレプリカセット ノードを追加すると、ノードは最初の同期を実行する必要があります。これは、データセットのサイズに応じて完了するまでに時間がかかります。 最初の同期の詳細については、「レプリカセット データの同期 」を参照してください。
複数ノードの移行
複数のレプリカセット メンバーを一度に削除または移行できますが、投票メンバーの過半数が残っている必要があります。 さらに投票権のあるノードを削除する必要がある場合は、一度に 1 つずつ削除します。
例
例 1
4 ノードのレプリカセットがある。 すべてのノードは投票権のあるノードです。 削除できるノードは 1 つだけです。これにより、4 つの投票ノードのうち 3 つの過半数が保持されます。 その後に残りの 3 ノードのレプリカセットから別のノードを削除できます。 これにより、残りの投票ノードの過半数が保持されます。
例
例 2
4 ノードのレプリカセットがある。 3 つのノードは投票ノードであり、1 つのノードは非投票ノードです。 投票権を持つノードと投票権のないノードを同時に削除できます。 これにより、投票ノード 3 つのうち 2 つの過半数が保持されます。
投票について詳しくは、「レプリカセットの高可用性」と「レプリカセットの選挙 」を参照してください。
移行中にノードを削除すると、使用する書込み保証 ( write concern ) のレベルによっては、レプリカセットが書込み (write) を確認しなくなる可能性があります。 詳細については、MongoDB マニュアルの「書込み保証」を参照してください。
手順
この手順は、移行するレプリカセットの各ノードに対して個別に実行します。
新しいサーバーをプロビジョニングします。
「サーバーのプロビジョニングを参照してください。
レプリカセットにメンバーを追加します。
Member ConfigurationセクションでAdd a Mongodをクリックして、新しい mongod
メンバーを追加します。
MongoDB Ops Managerに、 mongod
の次の構成設定が表示されます。
設定 | 説明 |
---|---|
Member | メニューから次のいずれかのレプリカセット ノード ロールを選択します。
|
Hostname | MongoDB Ops Manager Automation がレプリカセット ノードを配置するホストを メニューから選択します。 メニューには、 MongoDB Ops Manager Automation の下のホストのみが一覧表示されます。 MongoDB Ops Manager Automation へのサーバーの追加に関する詳細なドキュメントについては、「オートメーション用のサーバーのプロビジョニング 」を参照してください。 このホスト名は、ホスト名、 FQDN 、 IPv4アドレス、またはIPv6アドレスにすることができます。 |
Port | |
Votes | |
Priority | |
Delay | このノードがプライマリ ノードより "遅れる" 秒数を指定します。 この設定は、 |
Build Indexes |
|
Tags | レプリカセットに関連付けられたタグを指定します。 この設定は、 レプリカセット タグに関する詳細なドキュメントについては、「レプリカセット タグ」を参照してください。 |
新しくプロビジョニングされたサーバーに対応するHostnameを選択していることを確認します。
新しいmongod
プロセスを構成します。
Replica Set Configurationセクションから、 Replica Set Settings見出しの下のテーブルを表示します。 Process Name列には、各レプリカセット メンバーセットのホスト名とポートが一覧表示されます。 MongoDB Ops Managerは最初に、レプリカセット名の下にプロセスをグループ化します。 をクリックしますレプリカセット名の左側にある アイコンを使用すると、レプリカセットに関連付けられているすべてのノードが一覧表示されます。
新しく追加されたメンバーに対応するProcess Nameに対して、次の設定を構成します。
設定 | 説明 |
---|---|
Version |
MongoDB Ops Manager には、配置で使用可能な MongoDB バージョンのみが一覧表示されます。 このフィルタリングを無効にするには、 |
Data Directory |
各 |
Log File | ログファイル名と拡張子を含む、 たとえば、
|
新しいノードが同期していることを確認します。
Deploymentページでレプリカセットの名前をクリックしてクラスタービューを開きます。 新しい各ノードのステータスがRecovering
状態でなくなっていることを確認します。
レプリカセットから古いノードを削除します。
Deploymentビューから [ Modify ] をクリックします。
Member Configurationセクションに移動します。
をクリックします削除するメンバーの省略記号ボタン。
メニューからRemove from Replica Set ] を選択します。
重要
プライマリレプリカセット ノードを削除すると、選挙がトリガーされます。 レプリカセットは、選挙が完了するまで書込み (write) 操作を処理できません。 レプリカセットの選挙に関する詳細なドキュメントについては、「レプリカセットの選挙 」を参照してください。
Deployment画面に戻るには、 Saveをクリックします。
[ Review Changesをクリックし、 Confirm & Deployをクリックします。 MongoDB Ops Managerは、削除されたレプリカセットを、Deployment ビューで表示されるスタンドアロン クラスターに変換します。
任意: 古いノードを削除します。
MongoDB Ops Manager の管理からノードを削除するには、次のクリックします:省略記号 アイコンをクリックし、 Remove from Ops Managerを選択します。
MongoDB Ops Managerは、マネジメントから削除されたプロセスを自動的にシャットダウンしません。 前の手順で プロセスをシャットダウンしなかった場合は、ホスト マシンに直接接続して、手動でシャットダウンする必要があります。
MongoDB Ops Managerの管理からプロセスを削除する方法の詳細なドキュメントについては、「 1 つの配置の管理や監視を停止 」を参照してください。