zettelkasten/OneNoteExport/Kommunikationstechnologie/Exchange/03_Maintenance Mode.md
Ralf Koop 5a108aa2b4 .
2023-08-25 23:29:11 +02:00

6.7 KiB

Maintenance Mode

Mittwoch, 20. April 2016

14:36

 

Ein Exchange Server 2016 hat mehrere Komponenten, Services etc., die global zu sog. ServerComponent zusammengefasst sind. Z.B. gehört zu HubTransport, alles was zum Transport Service, die frühere Serverrolle Hub Transport (HTS) unter Exchange 2010 auch hatte. Die Serverkomponente FrontendTransport hat die Aufgabe von früherem Client Access Server (CAS) unter Exchange 2010 und 2013. Die Serverkomponente OWAProxy ist dagegen nur zuständig für den OWA Zugriff

 

In der PEC Test Umgebung TETRA.PEC wurde dies probiert und dient als Beispiel

Exchange Server TETRAMXP01a und TETRAMXP01b als DAG Cluster

 

Man kann sehen, dass die Serverkomponenten keine 1 :1 Beziehung weder zu den Services noch zu den Health Sets haben. Sie stellen eine abstrakte Ebene dar, die die Komponenten von einem Exchange

2016 Mailbox Server. In 2016 gibt es zwar keinen CAS, aber dessen Komponenten laufen als Client Access Services auf einem Mailbox Server (MBS)

 

Der Zustand (State) dieser Hauptkomponenten kann mit Get-ServerComponentState aufgelistet werden

 

Get-ServerComponentState -id tetramxp01a

Computergenerierter Alternativtext: \[PS\] C:\\windows\\systen32\>Cet---ServerConponentState ---id tetranxpOla erver Component State ETRAMXPO1a..TETRA ..PEC ServerltlideOff line Active ETRAMXPØ1a.TETRA .PEC HubTransport Active ETRAMXPO1a..TETRA ..PEC FrontendTransport Active ETRAMXPØ1a.TETRA .PEC Monitoring Active ETBAMXPØ1a..TETBA ..PEC flecoveryActionsEnabled Active ETRAMXPØ1a.TETRA .PEC AutoDiscoverProxy Active ETRAMXPØ1a..TETRA ..PEC Act iveßyncProxy Active ETRAMXPØ1a.TETRA .PEC EcpProxy Active ETRAMXPØ1a..TETRA ..PEC EwsProxy Active ETRAMXPØ1a.TETRA .PEC InapProxy Active ETBAMXPOIa..TETBA ..PEC OabProxy Active ETRAMXPØ1a.TETRA .PEC OwaProxy Active ETBAMXPØ1a..TETBA ..PEC PopProxy Active ETRAMXPØ1a.TETRA .PEC PushHotificationsProxy Active ETRAMXPO1a..TETRA ..PEC flpsProxy Active ETRAMXPØ1a.TETRA .PEC flusProxy Active ETRAMXPO1a..TETRA ..PEC flpcProxy Active ETRAMXPO1a.TETRA .PEC UMCallflouter Active ETBAMXPØ1a..TETBA ..PEC XropProxy Active ETRAMXPØ1a.TETRA .PEC HttpProxyAvailabilityCroup Active ETBAMXPØ1a..TETBA ..PEC ForwardSyncDaenon Inactive ETRAMXPØ1a.TETRA .PEC Provisioningflps Inactive ETRAMXPO1a..TETRA ..PEC MapiProxy Active ETRAMXPØ1a.TETRA .PEC EdgeTransport Active ETRAMXPO1a..TETRA ..PEC HighAvailability Active ETRAMXPØ1a.TETRA .PEC SharedCache Active ETBAMXPØ1a..TETBA ..PEC MailboxDeliveryProxy Active ETRAMXPØ1a.TETRA .PEC flout ingUpdates Active ETflAMXPØÍa..TETflA ..PEC flestProxy Active ETflAMXPØ1a.TFTflA PEC flefaultProxy Active{width="8.302083333333334in" height="4.458333333333333in"}

 

Der Server Component "ServerWideOffline" setzt den kompletten Server auf Maintenance, wenn dieser auf Inactive gesetzt wird.

Die Serverkomponenten können entweder „Active" oder „lnactive" sein. Nur die Serverkomponenten FrontendTransport und HubTransport haben zusätzlich den Status .Draining", da sie die Mails bzw.

Daten in ihren Queues noch entleeren müssen.

 

Der Status (State) einer Serverkomponente kann mit Set-ServerComponentState verändert werden. Dazu ist die Angabe eines Requester notwendig. Requester sind nur „Label" um den Grund eines

Statuswechsels zu markieren. Man sollte dennoch immer einen Requester wählen z.B. Maintenance, wenn eine Serverkomponente zwecks Wartung . lnactive" gesetzt werden muss.

Alle Requester müssen Active sein, damit die Component komplett wieder Active ist. Ein InActive hat immer Vorrang vor einem Active.

 

Die Anzeige der Requester einer Component erfolgt mit

 

$scs=Get-ServerComponentState -id tetramxp01a -Component ServerWideOffline

$scs.LocalStates

$scs.RemoteStates

Computergenerierter Alternativtext: \[PS\] C:\\windows\\system32\>\$scs=Cet---ServerComponentState ---hi tetranxp@la ---Component Serverl?IideOffline \[PS\] C:\\windows\\system32\>\$scs.LocalStates Requester State Timestamp Component Functional Active 3/22/2016 1:01:53 PM ServerUideOffline Maintenance Active 4/20/2016 8:53:16 AM ServerUideOffline \[PS\] C:\\windows\\system32\>\$scs.flemoteStates Requester State Timestamp Component maintenance Active 4/20/2016 8:53:16 AM ServerWideOffline Functional Active 3/22/2016 1:01:52 PM ServerilideOffline{width="9.302083333333334in" height="2.1979166666666665in"}

 

Local States werden in der Registry gespeichert

HKLM\SOFTWARE\Microsoft\ExchangeServer\v15\ServerComponentStates

 

Remote States werden im Active Directory gespeichert

CN=TETRAMXP01a ,CN=Servers,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=TETRAMAIL,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=tetra,DC=pec

In dem Attribut „msExchComponentStates" des Exchange Servers werden die States und Requester gespeichert.

 

 

Server in Maintenance setzen

 

Set-ServerComponentState -id $ServerName -Component HubTransport -State Draining -Requester Maintenance

Restart-Service MSExchangeTransport

Restart-Service MSExchangeFrontEndTransport

 

Redirect-Message -Server $ServerName -Target $RemoteServer -Confirm:$false

Set-MailboxServer $ServerName -DatabaseCopyActivationDisabledAndMoveNow $true

Move-ActiveMailboxDatabase -Server $ServerName

Set-MailboxServer $FQDN -DatabaseCopyAutoActivationPolicy Blocked

Suspend-ClusterNode $ServerName

Set-ServerComponentState -id $ServerName -Component ServerWideOffline -State InActive -Requester Maintenance

 

 

Server aus dem Maintenance nehmen

 

Set-ServerComponentState -id $ServerName -Component ServerWideOffline -State Active -Requester Maintenance

Set-ServerComponentState -id $ServerName -Component HubTransport -State Active -Requester Maintenance

Restart-Service MSExchangeTransport

Restart-Service MSExchangeFrontEndTransport

Set-MailboxServer $ServerName -DatabaseCopyActivationDisabledAndMoveNow $false -DatabaseCopyAutoActivationPolicy Unrestricted

Resume-ClusterNode $ServerName

RedistributeActiveDatabases.ps1 -DagName get--BalanceDbsByActivationPreference -ShowFinalDatabaseDistribution -Confirm:$false

 

Scripte abgelegt im Abschnitt "Scripte"

 

<<Start-MaintenanceMode.ps1>>

<<Stop-MaintenanceMode.ps1>>

 

DADBA8F4

 

Set-MailboxServer "SERVERNAME" -DatabaseCopyActivationDisabledAndMoveNow $True

Set-ServerComponentState --Identity "SERVERNAME"  --Component HubTransport --State Draining --Requester Maintenance

Suspend-ClusterNode --Name "SERVERNAME"

Set-MailboxServer --Identity "SERVERNAME" --DatabaseCopyAutoActivationPolicy Blocked

Set-ServerComponentState "SERVERNAME" --Component ServerWideOffline --State InActive --Requester Maintenance

 

Aus <https://www.frankysweb.de/exchange-server-howto-zur-installation-von-updates/>