Error al ejecutar StartDagServerMaintenance.ps1 script en Exchange Server 2010

Número de KB original: 3058960

Síntomas

Intente configurar un servidor que se encuentra en un grupo de disponibilidad de base de datos (DAG) en modo de mantenimiento mediante la ejecución del StartDagServerMaintenance.ps1 script. Sin embargo, se produce un error en el script y recibe el siguiente mensaje de error:

VERBOSE: [Time UTC] Move-DagActiveCopy: Entering: `$MailboxServer=ExServer, `$Database=
VERBOSE: [Time UTC] Move-DagActiveCopy: Moving all replicated active databases off server ExServer
VERBOSE: [Time UTC] Move-DagActiveCopy: moving database 'DBName' off server 'ExServer'
VERBOSE: [Time UTC] Move-DagMasterCopy: Entering: `$db=DBName, `$srcServer=ExServer, `$preferredTarget=
VERBOSE: [Time UTC] Test-DagTargetCopy: Testing move criteria for DatabaseName\ExchangeServer, with `$Lossless=True and
`$CICheck=False …
VERBOSE: [Time UTC] Test-DagTargetCopy: Name='DatabaseName\ExchangeServer', Status='DisconnectedAndHealthy',
CIStatus='Healthy', CopyQueueLength=0, ReplayQueueLength=0
VERBOSE: [Time UTC] Test-DagTargetCopy: Leaving (returning 'False')
VERBOSE: [Time UTC] Test-DagTargetCopy: Testing move criteria for DBName\DR-ExServer, with `$Lossless=True
and `$CICheck=False …
VERBOSE: [Time UTC] Test-DagTargetCopy: Name='DBName\DR-ExServer', Status='DisconnectedAndHealthy',
CIStatus='Healthy', CopyQueueLength=0, ReplayQueueLength=0
VERBOSE: [Time UTC] Test-DagTargetCopy: Leaving (returning 'False')
VERBOSE: [Time UTC] Move-DagMasterCopy: 0 copies out of 3 for database DBName will be attempted for move.
Log-Error : [Time UTC] Move-DagMasterCopy: Database 'DBName' *FAILED* to move! Now attempting to perform rollback to prevent a DB outage…

At D:\Program Files\Microsoft\Exchange\V14\scripts\DagCommonLibrary.ps1:483 char:14
+ Log-Error <<<< ($DagCommonLibrary_LocalizedStrings.res_0064 –f $db,"Move-DagMasterCopy")
+ CategoryInfo : NotSpecified: ( : ) [Write-Error], WriteErrorException + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Log-Error

Además, al ejecutar el Get-MailboxDatabaseCopyStatus cmdlet en la base de datos, la base de datos no notifica el estado DisconnectedAndHealthy según lo previsto.

Solución alternativa

Para solucionar este problema, use los métodos siguientes para conmutar por error manualmente las bases de datos de este servidor.

Poner el servidor en modo de mantenimiento

  1. Compruebe que al menos otra copia no retrasada de cada base de datos replicada esté en buen estado. Para ello, ejecute el siguiente comando del Shell de administración de Exchange (EMS):

    Get-MailboxDatabase -Server 'MaintenanceServerName' | Get-MailboxDatabaseCopyStatus
    
  2. Mueva todas las bases de datos de este servidor ejecutando el siguiente comando EMS:

    Move-ActiveMailboxDatabase -Server 'MaintenanceServerName'
    

    Nota:

    No se especifica ningún servidor de destino, lo que significa que la siguiente mejor copia se seleccionará automáticamente para la activación.

  3. Mueva los recursos principales del clúster a otro nodo del DAG. Para ello, ejecute el siguiente comando en el símbolo del sistema:

    cluster.exe DAGFQDN group "ClusterGroup" /moveto: 'MaintenanceServerName'
    
  4. Suspenda todas las copias en el servidor ejecutando el siguiente comando EMS:

    Get-MailboxDatabaseCopyStatus -Server 'MaintenanceServerName' | Suspend-MailboxDatabaseCopy -ActivationOnly:$true
    
  5. Para pausar el nodo en el clúster, ejecute la siguiente línea de comandos:

    cluster.exe DAGFQDN node '**MaintenanceServerName**' /pause
    
  6. Evite que las bases de datos intenten conmutar por error a este nodo mediante la ejecución del siguiente comando EMS:

    Set-MailboxServer -Identity 'MaintenanceServerName' -DatabaseCopyAutoActivationPolicy:BLOCKED
    

Quitar el servidor del modo de mantenimiento

Para volver a poner el servidor en producción, siga estos pasos:

  1. Reanude el nodo en el clúster. Para ello, ejecute la siguiente línea de comandos:

    cluster.exe DAGFQDN node 'MaintenanceServerName' /resume
    
  2. Quite el bloque de activación automática en este servidor mediante la ejecución del siguiente comando EMS:

    Set-MailboxServer -Identity 'MaintenanceServerName' -DatabaseCopyAutoActivationPolicy: Unrestricted
    
  3. Reanude la replicación de la base de datos de buzones en el servidor mediante la ejecución del siguiente comando EMS:

    Get-MailboxDatabaseCopyStatus -Server 'MaintenanceServerName' | Resume-MailboxDatabaseCopy
    

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".