Docs Menu
Docs Home
/ /
/ / /

Convertir un conjunto de réplicas en un clúster fragmentado con un servidor de configuración integrado

A partir de MongoDB 8.0, puede configurar un servidor de configuración para almacenar los datos de su aplicación además de los habituales. Metadatos de clúster fragmentados. Un servidor de configuración que almacena datos de aplicaciones se denomina fragmento de configuración o servidor de configuración integrado.

Convertir su conjunto de réplicas en un clúster fragmentado con un servidor de configuración integrado puede reducir:

  • La cantidad de nodos necesarios en su implementación.

  • Complejidad para mantener clústeres de un solo fragmento.

No se puede convertir directamente un conjunto de réplicas en un fragmento de configuración. Para convertir un conjunto de réplicas en un servidor de configuración integrado, debe:

Si el control de acceso está habilitado, el transitionFromDedicatedConfigServer comando requiere la transitionFromDedicatedConfigServer acción de autorización para el clúster.

El rol tiene clusterManager la transitionFromDedicatedConfigServer acción de autorización y se puede asignar a un usuario.

El siguiente ejemplo convierte un conjunto de réplicas autoadministradas en un fragmento de configuración que contiene datos de usuario preexistentes del conjunto de réplicas.

1

Este tutorial presupone que sabe cómo convertir su conjunto de réplicas autoadministradas en un clúster fragmentado. Para obtener instrucciones completas, consulte Convertir un conjunto de réplicas autoadministradas en un clúster fragmentado.

2

Por ejemplo, para conectarse a su instancia mongos que se ejecuta en el host mongodb6.example.net como un usuario administrador llamado admin01:

mongosh "mongodb://admin01@mongodb6.example.net:27017"
3

Para configurar su servidor de configuración dedicado para que se ejecute como un fragmento de configuración, ejecute el comando transitionFromDedicatedConfigServer desde la base de datos de administración:

db.adminCommand( {
transitionFromDedicatedConfigServer: 1
} )
4

Puede confirmar que un clúster fragmentado utiliza un fragmento de configuración mediante uno de los siguientes métodos:

  • Ejecute el sh.isConfigShardEnabled() método mongosh en. Si la sh.isConfigShardEnabled() salida enabled: true contiene, el clúster usa un fragmento de configuración. Si la salida enabled: false contiene, el clúster no usa ningún fragmento de configuración.

  • Ejecute el comando en listShards la admin base de datos mientras esté conectado a un e inspeccione la salida para ver si hay un documento mongos donde _id esté configurado "config" como. Si la listShards salida no contiene un documento donde _id esté configurado "config" como, el clúster no usa un fragmento de configuración.

El siguiente ejemplo ejecuta el comando listShards e intenta encontrar un documento donde _id esté establecido en "config".

db.adminCommand({ listShards: 1 })["shards"].find(element => element._id === "config")

En este ejemplo, el documento devuelto tiene _id establecido en "config", lo que confirma que este clúster usa un fragmento de configuración.

{
_id: "config",
host: "configRepl/localhost:27018",
state: 1,
topologyTime: Timestamp({ t: 1732218671, i: 13 }),
replSetConfigVersion: Long('-1')
}

Nota

Si el balanceador está en ejecución, migra automáticamente los datos entre los fragmentos. De lo contrario, use los moveCollection comandos o para distribuir los datos manualmente.moveChunk

5

Para reducir el clúster a un solo fragmento después de agregar el fragmento de configuración, mueva todas las colecciones no fragmentadas al fragmento de configuración moveCollection con el comando y elimine el primer fragmento del clúster con el comando. Este paso reduce removeShard el clúster a un solo fragmento de configuración.

Para obtener instrucciones completas sobre cómo eliminar fragmentos en su clúster, consulte Eliminar fragmentos de un clúster fragmentado.

Volver

Fragmento de configuración

En esta página