Puedes configurar Instancias de mongosync al inicio mediante opciones de línea de comandos o un archivo de configuración. El archivo de configuración especifica valores para configuraciones equivalentes a mongosync opciones de línea de comandos.
Durante una migración, puede reconfigurar ciertas opciones mongosync siguiendo los pasos que se indican en Reconfigurar mongosync durante la sincronización.
archivo de configuración
Puede escribir la mayoría de las mongosync opciones de línea de comandos en un archivo YAML. El archivo de configuración especifica los valores de cada opción mediante el formato YAML.
Por ejemplo:
cluster0: "mongodb://192.0.2.10:27017" cluster1: "mongodb://192.0.2.20:27017" logPath: "/var/log/mongosync" verbosity: "WARN"
Para utilizar un archivo de configuración, inicie mongosync con la opción para establecer la ruta al --config archivo:
mongosync --config <configPath>
Configuraciones
Puedes configurar los siguientes parámetros mongosync usando un archivo de configuración.
Para configurar mongosync desde la línea de comandos, consulte Opciones de línea de comandos.
Nota
El start comando proporciona opciones adicionales para funciones como reversibility user write blockingy. Para más detalles, consulte la documentación de la API de inicio.
acceptDisclaimerTipo: bool
Acepta las exenciones de responsabilidad para el verificador integrado.
Cuando el proceso
mongosyncse inicia sin esta configuración, se le solicita al usuario que acepte cada exención de responsabilidad.Esta configuración permite a los usuarios que ya han leído y aceptado las exenciones de responsabilidad aceptarlas e iniciar el proceso
mongosync.Para establecer la
acceptDisclaimerconfiguración desde la línea de comando, consulte la--acceptDisclaimeropción.Nuevo en la versión 1.9.
cluster0Tipo: string
Establece la URI de conexión para el primer clúster. El primer clúster puede servir como el origen o el destino en el proceso de sincronización. Designa los clústeres de origen y destino en la llamada al endpoint
startde la API.Para obtener más información sobre cómo conectar
mongosync, consulta Conexiones.Para establecer la
cluster0configuración desde la línea de comando, consulte la--cluster0opción.
cluster1Tipo: string
Establece la URI de conexión para el segundo clúster. El segundo clúster puede servir como origen o destino en el proceso de sincronización. Designa los clústeres de origen y destino en la llamada al
startdel endpoint de la API.Para obtener más información sobre cómo conectar
mongosync, consulta Conexiones.Para establecer la
cluster1configuración desde la línea de comando, consulte la--cluster1opción.
createIndexesBatchSizeNuevo en la versión 1.19.0.
Tipo: entero
Mínimo:
1Máximo:
64Establezca explícitamente el tamaño del lote para las compilaciones de índices en los clústeres de destino. De forma predeterminada,
mongosyncoptimiza este valor programáticamente en los clústeres de destino de Atlas.Advertencia
Asegúrese de haber asignado entre 100 MB y1 GB de memoria por índice. Además, asegúrese de que la memoria total utilizada por las compilaciones de índices simultáneas se mantenga por debajo del 20% de la RAM del clúster de destino. Asignar más del 20% de la RAM de destino a las compilaciones de índices puede interferir con la caché del sistema de archivos, lo que reduce la memoria disponible para almacenar en búfer las escrituras en el clúster de destino.
Para obtener más información,consulte Optimizaciones de creación de índices.
Para establecer la
createIndexesBatchSizeconfiguración desde la línea de comando, consulte la--createIndexesBatchSizeopción.
disableMetricsLoggingTipo: booleano
Nuevo en la versión 1.16.0.
Desactiva el registro de métricas cuando ejecutas el binario de Mongosync.
Advertencia
Se recomienda encarecidamente mantener habilitado el registro de métricas para facilitar la resolución de problemas y el soporte efectivos.
Para obtener más información, consulta Mongosync métricas.
Para establecer la
disableMetricsLoggingconfiguración desde la línea de comando, consulte la--disableMetricsLoggingopción.Para obtener más información, consulte colección de datos de usuario.
disableTelemetryTipo: booleano
Nuevo en la versión 1.4.0.
Deshabilita la colección de datos de telemetría para
mongosync.Por defecto,
mongosyncrecopila datos de uso anónimos y agregados para mejorar los productos de MongoDB. Cuando ejecutasmongosync, puedes desactivar la colección de estos datos de telemetría.Para establecer la
disableTelemetryconfiguración desde la línea de comando, consulte la--disableTelemetryopción.Para obtener más información, consulte colección de datos de usuario.
disableVerificationTipo: booleano
Deshabilita el Verificador Integrado. Cuando está desactivado,
mongosyncno verifica la migración. Para métodos de verificación alternativos, ve Verificar transferencia de datos.Esta opción proporciona una solución alternativa para los clientes que experimentan fallos por OOM al ejecutar
mongosynccon verificación y no pueden asignar más recursos ni tolerar reiniciar la verificación. Permite que la migración se complete con la verificación desactivada. La verificación permanece desactivada para reinicios y reversiones posteriores.Esta opción no debería utilizarse cuando
mongosyncse inicia inicialmente. En su lugar, desactiva la verificación con el parámetro de solicitud /startverification.enabled: false, ya que la verificación está activada por defecto.Para deshabilitar la verificación desde la línea de comandos, consulte la
--disableVerificationopción.Nuevo en la versión 1.10.
hotDocIDsTipo: string
Establece un identificador para documentos activos o documentos que se actualizan con mucha frecuencia en los clústeres de origen. Luego,
mongosynccopia estos documentos durante la etapa de confirmación de la migración.Utilice esta configuración para migraciones que tienen retrasos en la replicación debido a documentos activos cuando se ejecuta
mongosync.Proporcione los identificadores en el siguiente formato:
{ “db”: <string>, // the name of the database "collection" : <string>, // name of the collection "ids" : [ {“_id”:<Object>”}, ...], } Los objetos en el campo
idsdeben ser cadenas JSON extendidas válidas en modo canónico.Puede usar esta configuración varias veces para proporcionar identificadores de documentos relevantes de varias colecciones. El siguiente ejemplo proporciona dos identificadores de documentos relevantes de las colecciones
coll1ycoll2:mongosync \ --hotDocIDs '{"db":"db1","collection":"coll1","ids":[{"_id":{"$oid":"doc1"}},{"_id":{"$oid":"6aa23c249cef3cd958e43785"}}]}' \ --hotDocIDs '{"db":"db2","collection":"coll2","ids":[{"_id":{"$oid":"70023c249cef3cd958e43269"}},{"_id":{"$oid":"7aa23c249cef3cd958e43785"}}]}' \ ... other CLI arguments ... Una vez iniciado, no puedes Remover un identificador de documento activo. Si configuras uno incorrectamente, reinicia
mongosynccon los identificadores correctos.Para configurar
hotDocIDsdesde la línea de comando, consulte la--hotDocIDsopción.
idTipo: string
Establece un identificador para la instancia
mongosync.Utilice esta configuración al ejecutar varias instancias de
mongosyncen un clúster fragmentado, para sincronizar los fragmentos individualmente.El valor del identificador para esta configuración debe corresponder al ID del fragmento que sincroniza. Para encontrar el ID del fragmento, use el
listShardscomando.Para establecer la
idconfiguración desde la línea de comando, consulte la--idopción.
loadLevelTipo: entero
Por defecto:
3Establece el nivel de carga de trabajo del clúster para sincronizar datos entre los clústeres de origen y destino:
4, la configuración más alta maximiza la carga de trabajo del clúster y sincroniza los datos más rápidamente.1, la configuración más baja, minimiza la carga de trabajo del clúster y sincroniza los datos más lentamente.
Para establecer la
loadLevelconfiguración desde la línea de comando, consulte la--loadLevelopción.Advertencia
Configurar
loadLevelpor encima de la configuración por defecto de3puede afectar negativamente el rendimiento del clúster de destino.Si existen cuellos de botella de lectura en el clúster de origen o cuellos de botella de escritura en el clúster de destino, disminuir
loadLevelpodría mejorar el rendimiento.Nuevo en la versión 1.4.
logPathTipo: string
Establece la ruta al directorio de registro. Mongosync escribe registros en archivos de este directorio.
Para obtener más información, consulta Registro.
Para establecer la
logPathconfiguración desde la línea de comando, consulte la--logPathopción.
metricsLoggingFilepathTipo: string
Nuevo en la versión 1.16.0.
Establece la ruta al directorio de registros de métricas. Mongosync guarda registros de métricas en archivos en este directorio.
Para obtener más información, consulta Mongosync métricas.
Para establecer la
metricsLoggingFilepathconfiguración desde la línea de comando, consulte la--metricsLoggingFilepathopción.
portTipo: entero
Por defecto:
27182Configura el puerto utilizado por el servidor HTTP para la API HTTP de Mongosync.
Para establecer la
portconfiguración desde la línea de comando, consulte la--portopción.
verbosityTipo: string
Por defecto:
DEBUGEstablece el nivel de verbosidad que se utilizará en los mensajes de registro. Mongosync registra todos los mensajes en el nivel especificado y cualquier mensaje en niveles inferiores.
La configuración
verbosityadmite los siguientes valores:TRACEDEBUGINFOWARNERRORFATALPANIC
Para establecer la
verbosityconfiguración desde la línea de comando, consulte la--verbosityopción.
Reconfigurar mongosync durante la sincronización
Importante
Solo se pueden ajustar las siguientes configuraciones durante una migración. Las demás configuraciones deben permanecer sin cambios entre mongosync reinicios.
Mientras mongosync se sincroniza, puede reconfigurar las --config --createIndexesBatchSize--disableTelemetry--loadLevel--logPathopciones,,,,, y realizando los siguientes--port --verbosity pasos:
(Opcional) Pausar los mongosync procesos
Ejecute en pause cada mongosync proceso en ejecución.
Puedes reanudar los procesos mongosync más tarde desde el estado en pausa, como se muestra en el paso final.
Tip
Si no desea reanudar inmediatamente las operaciones de sincronización de datos tras la reconfiguración, considere pausar los procesos mongosync. Esto resulta útil si está coordinando operaciones desde varios procesos mongosync.
(Opcional) Actualiza tu archivo de configuración
Si utilizó la opción para establecer la ruta a un archivo de configuración cuando inicializó por --config primera mongosync vez, actualice este archivo de configuración con el nuevo valor para cada configuración.
Inicializar los mongosync procesos
Si actualizó un archivo de configuración en el último paso, inicialice los mongosync procesos con la opción establecida en la ruta del archivo de configuración --config actualizado:
mongosync --config <configPath>
Si no utilizó la opción cuando inicializó por --config primera mongosync vez, inicialice los mongosync procesos con las opciones de la línea de comandos establecidas en sus valores actualizados:
mongosync \ --cluster0 "<cluster0_connection_string>" \ --cluster1 "<cluster1_connection_string>" \ --loadLevel <newLevel>
Para obtener más información, consulte Inicializar mongosync.
Iniciar o reanudar los mongosync procesos
Si pausó algún mongosync proceso anteriormente en el primer paso opcional, ejecute en resume los mongosync procesos pausados.
Si detuvo algún mongosync proceso sin pause usar, ejecute en start los mongosync procesos detenidos. Para obtener instrucciones más detalladas,consulte Migrar datos entre clústeres.
mongosync Reanuda la sincronización aproximadamente donde estaba antes de detener los procesos anteriores. Cualquier partición en curso al momento de la finalización se reiniciará desde el principio.