transitionToDedicatedConfigServer
定義
バージョン8.0の新機能。
MongoDB 8.0以降では、次のことが可能です。
通常のシャーディングされたクラスターのメタデータデータ に加えて、アプリケーションデータを保存するように コンフィギュレーションコンフィギュレーションサーバーを構成します。 アプリケーションデータを保存するコンフィギュレーションサーバーは、コンフィギュレーションシャードと呼ばれます。
コンフィギュレーコンフィギュレーションサーバーの間で変換しコンフィギュレーションサーバー。
クラスターにはコンフィギュレーションサーバーが必要ですが、専用のコンフィギュレーションサーバーでなく、 コンフィギュレーションシャード にすることもできます。 コンフィギュレーションシャードを使用すると、必要なノードの数が減り、配置が簡素化されます。
アプリケーションに可用性と回復力の要件がある場合は、専用のコンフィギュレーションサーバーの配置を検討してください。 専用のコンフィギュレーションサーバーは、重要なクラスター操作に対して分離、専用リソース、一貫したパフォーマンスを提供します。
transitionToDedicatedConfigServer
コマンドは、コンフィギュレーションシャードを専用のコンフィギュレーションコンフィギュレーションサーバーとして実行するように構成します。 コマンドを使用すると、バランサーは優先的にチャンクをコンフィギュレーションシャードからクラスター内の他のシャードに移動するようにします。
transitionToDedicatedConfigServer
を実行する前に、 mongos
に接続し、管理データベースを使用します。
シャーディングされたシャーディングされたクラスターでは、 featureCompatibilityVersionを少なくとも8.0
に設定する必要があります。
構文
コマンド構文:
db.adminCommand( { transitionToDedicatedConfigServer: 1 } )
動作
transitionToDedicatedConfigServer
コマンドは、 removeShard
コマンドがデータを移動するのと同じ方法で、コンフィギュレーションシャードからクラスター内の他のシャードにアプリケーションデータを移動します。
内部的には、 transitionToDedicatedConfigServer
はremoveShard
コマンドを実行します。 transitionToDedicatedConfigServer
はremoveShard
と同じ応答を返します。 データ移動に成功した後のレスポンスにはstate: "completed"
が含まれます。 完全な応答の詳細と例については、「 deleteShard の例」を参照してください。 transitionToDedicatedConfigServer
を実行中する前にremoveShard
のドキュメントを確認して、デプロイにどのように影響するかを理解してください。
transitionToDedicatedConfigServer
を 2 回実行し、シャード データが現在他のシャードに移動している場合、 transitionToDedicatedConfigServer
の 2 回目の実行によってデータ移動の現在のステータスが返されます。 transitionToDedicatedConfigServer
はremoveShard
と同じ応答を返します。
transitionToDedicatedConfigServer
によるデータの移動が完了すると、コンフィギュレーションサーバーは専用のコンフィギュレーションサーバーになり、コンフィギュレーションシャードではなくなります。
アクセス制御
アクセス制御が有効になっている場合、transitionToDedicatedConfigServer
コマンドには クラスターtransitionToDedicatedConfigServer
の 認可アクションが必要です。
{ resource: { cluster : true }, actions: [ "transitionToDedicatedConfigServer" ] }
clusterManager
ロールにはtransitionToDedicatedConfigServer
認可アクションがあり、ユーザーに割り当てることができます。
次の例ではtestUser
という名前のユーザーにclusterManager
ロールを割り当てます。
db.grantRolesToUser( "testUser", [ "clusterManager" ] )
例
次の例では、 コンフィギュレーションシャード を専用の コンフィギュレーションコンフィギュレーションサーバーとして実行するように構成します。
db.adminCommand( { transitionToDedicatedConfigServer: 1 } )
詳細については、「ダウングレード機能の互換性バージョン 」を参照してください。