MSExchangeGuru.com

Learn Exchange the Guru way !!!

 

DAG changes and some tips!

During the daily support and considering the change requirements and failures you would need to do few changes in the DAG configuration.

Here we are guiding some procedures to change some DAG configurations

We can change few setting from GUI which are Witness Server, Witness Directory, Alternate Witness Directory, Alternate Witness Directory and IP Addresses. To configure these changes follow the below steps

Login to the management server with Organization management permissions

Open Exchange management Console

Go to Organization Configuration –> Mailbox –> Database Availability Group tab

Right click DAG Name and select properties


 

To change the member servers

Go to Organization Configuration –>Mailbox –>Database Availability Group tab

Right click DAG Name and select “Manage Database Availabiliy Group members”

On this windows Add or remove servers then click manage:


There are some settings which can’t be changed from GUI so we can use the following cmdlet to change them

Run the below cmdlet to get the status of the DAG

Get-DatabaseAvailabilityGroup <Dagname> –status | fl

Run the below cmd to change the Primary active manager Server

cluster.exe <ClusterName> group “Cluster Group” /MoveTo:<DAG Server Name>

Run the below cmd to enable DAC mode

Set-DatabaseAvailabilityGroup <Dagname> -DatacenterActivationMode DAGOnly

Run the below cmd to configure replication port

Set-DatabaseAvailabilityGroup <Dagname> -ReplicationPort <port number>

Run the below cmd to configure network compression or encryption or both

Set-DatabaseAvailabilityGroup <Dagname> -NetworkCompression Enabled/Disabled/InterSubnetOnly/seedonly -NetworkEncryption Enabled/Disabled/InterSubnetOnly/Seedonly

Run the below cmd to enable cross site RPCClient Access

Set-DatabaseAvailabilityGroup <Dagname> -AllowCrossSiteRpcClientAccess $True/$False

Prabhat Nigam (Wizkid)
Team@ MSExchangeGuru

3 Responses to “DAG changes and some tips!”

  1. ZAHOOR Says:

    I have problem when trying to add Exchange server to DAG froup whihc is located on other AD site but same domain,and diferent subnet.
    i am getting the following error:
    part of log file attached:

    [2013-04-01T10:09:35] The CNO is currently Online.
    [2013-04-01T10:09:35] InternalValidate() done.
    [2013-04-01T10:09:35] Updated Progress ‘Adding server ‘SAJDDREX01’ to database availability group ‘SAEXDAG1′.’ 6%.
    [2013-04-01T10:09:35] Working
    [2013-04-01T10:09:35] Updated Progress ‘Adding server ‘SAJDDREX01′ to the cluster.’ 8%.
    [2013-04-01T10:09:35] Working
    [2013-04-01T10:35:16] The following log entry comes from a different process that’s running on machine ‘SAJDHQEX01.x.x.com.’. BEGIN
    [2013-04-01T10:35:16] [2013-04-01T10:09:35] Opening a local AmCluster handle.
    [2013-04-01T10:09:35] Updated Progress ‘Adding server ‘sajddrex01’ to database availability group ‘SAEXDAG1′.’ 2%.
    [2013-04-01T10:09:35] Working
    [2013-04-01T10:09:35] ClusterSetupProgressCallback( eSetupPhase = ClusterSetupPhaseValidateNodeState, ePhaseType = ClusterSetupPhaseStart, ePhaseSeverity = ClusterSetupPhaseInformational, dwPercentComplete = 12, szObjectName = SAJDDREX01, dwStatus = 0x0 )
    [2013-04-01T10:35:16] ClusterSetupProgressCallback( eSetupPhase = ClusterSetupPhaseValidateNodeState, ePhaseType = ClusterSetupPhaseContinue, ePhaseSeverity = ClusterSetupPhaseFatal, dwPercentComplete = 12, szObjectName = SAJDDREX01, dwStatus = 0x800713bb )
    [2013-04-01T10:35:16] ClusterSetupProgressCallback( eSetupPhase = ClusterSetupPhaseValidateNodeState, ePhaseType = ClusterSetupPhaseEnd, ePhaseSeverity = ClusterSetupPhaseFatal, dwPercentComplete = 12, szObjectName = SAJDDREX01, dwStatus = 0x800713bb )
    [2013-04-01T10:35:16] Found a matching exception: Microsoft.Exchange.Cluster.Replay.DagTaskValidateNodeTimedOutException: A database availability group administrative operation failed. Error: Windows Failover Clustering timed out while trying to validate server ‘SAJDDREX01’. If this is in a disjoint DNS namespace, the DNS suffixes for all servers in the database availability group must be present on every server.
    [2013-04-01T10:35:16] ClusterSetupProgressCallback( eSetupPhase = ClusterSetupPhaseFailureCleanup, ePhaseType = ClusterSetupPhaseStart, ePhaseSeverity = ClusterSetupPhaseInformational, dwPercentComplete = 12, szObjectName = SAJDDREX01, dwStatus = 0x0 )
    [2013-04-01T10:35:16] ClusterSetupProgressCallback( eSetupPhase = ClusterSetupPhaseFailureCleanup, ePhaseType = ClusterSetupPhaseEnd, ePhaseSeverity = ClusterSetupPhaseInformational, dwPercentComplete = 12, szObjectName = , dwStatus = 0x0 )

    [2013-04-01T10:35:16] The preceding log entry comes from a different process running on computer ‘SAJDHQEX01.x.x.com’. END
    [2013-04-01T10:35:16] The operation wasn’t successful because an error was encountered. You may find more details in log file “C:\ExchangeSetupLogs\DagTasks\dagtask_2013-04-01_10-09-30.737_add-databaseavailabiltygroupserver.log”.
    [2013-04-01T10:35:16] WriteError! Exception = Microsoft.Exchange.Cluster.Replay.DagTaskOperationFailedException: A database availability group administrative operation failed. Error: The operation failed. CreateCluster errors may result from incorrectly configured static addresses. Error: Windows Failover Clustering timed out while trying to validate server ‘SAJDDREX01’. If this is in a disjoint DNS namespace, the DNS suffixes for all servers in the database availability group must be present on every server. —> Microsoft.Exchange.Cluster.Replay.DagTaskValidateNodeTimedOutException: A database availability group administrative operation failed. Error: Windows Failover Clustering timed out while trying to validate server ‘SAJDDREX01’. If this is in a disjoint DNS namespace, the DNS suffixes for all servers in the database availability group must be present on every server.
    at Microsoft.Exchange.Cluster.ClusApi.AmCluster.AddNodeToCluster(AmServerName nodeName, IClusterSetupProgress setupProgress, IntPtr context, Exception& errorException, Boolean throwExceptionOnFailure)
    at Microsoft.Exchange.Cluster.Replay.DagHelper.AddDagClusterNode(AmServerName mailboxServerName, String& verboseLog)
    — End of inner exception stack trace (Microsoft.Exchange.Cluster.Replay.DagTaskValidateNodeTimedOutException) —
    at Microsoft.Exchange.Cluster.Replay.DagHelper.ThrowDagTaskOperationWrapper(Exception exception)
    at Microsoft.Exchange.Cluster.Replay.DagHelper.AddDagClusterNode(AmServerName mailboxServerName, String& verboseLog)
    at Microsoft.Exchange.Cluster.ReplayService.ReplayRpcServer.c__DisplayClass34.b__33()
    at Microsoft.Exchange.Data.Storage.Cluster.HaRpcExceptionWrapperBase`2.RunRpcServerOperation(String databaseName, RpcServerOperation rpcOperation)
    — End of stack trace on server (SAJDHQEX01.x.xom) —
    at Microsoft.Exchange.Data.Storage.Cluster.HaRpcExceptionWrapperBase`2.ClientRethrowIfFailed(String databaseName, String serverName, RpcErrorExceptionInfo errorInfo)
    at Microsoft.Exchange.Cluster.Replay.ReplayRpcClientWrapper.RunRpcOperationDbName(AmServerName serverName, String databaseName, Int32 timeoutMs, IHaRpcExceptionWrapper rpcExceptionWrapperInstance, InternalRpcOperation rpcOperation)
    at Microsoft.Exchange.Cluster.Replay.ReplayRpcClientWrapper.RunRpcOperation(AmServerName serverName, Nullable`1 dbGuid, Int32 timeoutMs, IHaRpcExceptionWrapper rpcExceptionWrapperInstance, InternalRpcOperation rpcOperation)
    at Microsoft.Exchange.Cluster.Replay.ReplayRpcClientWrapper.RunAddNodeToCluster(AmServerName serverName, AmServerName newNode, String& verboseLog)
    at Microsoft.Exchange.Management.SystemConfigurationTasks.AddDatabaseAvailabilityGroupServer.JoinNodeToCluster()
    [2013-04-01T10:35:16] Updated Progress ‘Done!’ 100%.
    [2013-04-01T10:35:16] COMPLETED
    add-databaseavailabiltygroupserver explicitly called CloseTempLogFile().

  2. Prabhat Says:

    Do you have Dag name and IP host record in DNS?

    Do you have a DC/GC in the DR site?

    Do you have DHCP client service running?

    Disable your firewall and also IPv6.

    Check the blogs answer – http://social.technet.microsoft.com/Forums/en-US/exchange2010/thread/71960757-66fc-4aea-81ba-3783a48401a0/

    Look at the extract from log, it looks like we are missing DNS configuration.
    —————–
    [2013-04-01T10:35:16] Found a matching exception: Microsoft.Exchange.Cluster.Replay.DagTaskValidateNodeTimedOutException: A database availability group administrative operation failed. Error: Windows Failover Clustering timed out while trying to validate server ‘SAJDDREX01′. If this is in a disjoint DNS namespace, the DNS suffixes for all servers in the database availability group must be present on every server.
    —————-

  3. ZAHOOR Says:

    Yes all the records are fine.

    It worked fine lately.
    The strange thing happen like:
    Our network Team were performing an activity to switch the lease line / link form one proivder to another. Once they changed the link between the sites to another provider it worked and i was able to add the memebr server at dr site to the DAG group.
    I had the similar issue with Dell SAN replication which did nto work with one of the lease line provider.

    thanks a alot. I am new to Exchange 2010 and this is my first instalation of exchange 2010. Both of my servers at DR is having all the Three roles (Typical Insallation) and main site is also the smae Typical installation.

    Now DAG will cover the DB high Avalability.
    how can i make it possible to have the CA and HT high avalability between the Sites. If this site goes down or main site exchange goes down the Clients must be able to use exchange from the DR site.
    your help is highly appreciated.

    Thanks always.

    here is the status of the present DB copies .
    [PS] C:\Windows\system32>Get-MailboxDatabaseCopyStatus staff

    Name Status CopyQueue ReplayQueue LastInspectedLogTime ContentIndex
    Length Length State
    —- —— ——— ———– ——————– ————
    Staff\SAJDDREX01 Resynchronizing 282 0 Healthy
    Staff\SAJDHQEX01 Mounted 0 0 Healthy

    [PS] C:\Windows\system32>Get-MailboxDatabaseCopyStatus it

    Name Status CopyQueue ReplayQueue LastInspectedLogTime ContentIndex
    Length Length State
    —- —— ——— ———– ——————– ————
    IT\SAJDDREX01 Resynchronizing 400 0 Healthy
    IT\SAJDHQEX01 Mounted 0 0 Healthy

    [PS] C:\Windows\system32>Get-AdSiteLink

    Name ADCost ExchangeCost Sites
    —- —— ———— —–
    DEFAULTIPSITELINK 100 {X.X.X/Configuration/S…

    thanks.
    Is there any problem with copy queue status whihc is 400 and 282 in this case.

Leave a Reply

Categories

Archives

MSExchangeGuru.com