Definición
sh.removeShardFromZone(shard, zone)Elimina la asociación entre una zona y una partición.
Importante
Método mongosh
Esta página documenta un método.
mongoshEsta no es la documentación para comandos de base de datos ni controladores específicos de lenguaje, como Node.js.Para el comando de base de datos, consulta el comando
removeShardFromZone.Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.
Este método tiene los siguientes parámetros:
ParameterTipoDescripciónstring
string
El único problema
mongosse presenta cuando sesh.removeShardFromZone()conecta a una instancia.
Compatibilidad
Este método está disponible en implementaciones alojadas en los siguientes entornos:
- MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Importante
Este comando no es compatible con los clústeres M0 y Flex. Para obtener más información, consulta Comandos no compatibles.
MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB
MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.
Comportamiento
sh.removeShardFromZone() no remueve los rangos asociados con la zona.
Para eliminar completamente una zona del clúster, debe ejecutar en cada fragmento asociado con la sh.removeShardFromZone() zona.
Si el fragmento especificado es el último asociado a la zona, debe asegurarse de que no queden rangos asociados a ella. Utilice updateZoneKeyRange para eliminar cualquier rango existente asociado a la zona antes de sh.removeShardFromZone() ejecutar.
Consulte la página del manual de zonas para obtener más información sobre las zonas en clústeres particionados.
Balanceador
Remover la asociación entre una zona y una partición elimina las restricciones que mantienen los fragmentos cubiertos por la zona en la partición. Durante la próxima ronda del balanceador, el balanceador puede migrar los fragmentos que antes cubría la zona.
Consulta la página del manual de balanceador de clúster para obtener más información sobre cómo funcionan las migraciones en un clúster.
Seguridad
Para clústeres que aplican control de acceso, se debe autenticar como:
un usuario cuyos privilegios incluyan
enableShardingsobre el recurso clúster.
Los roles clusterAdmin integrados o clusterManager tienen los permisos adecuados para sh.removeShardFromZone() emitir. Consulte la página del manual de Control de acceso basado en roles para obtener más información.
Ejemplo
El siguiente ejemplo elimina la asociación entre shard0000 y la zona NYC:
sh.removeShardFromZone("shard0000", "NYC")