www.SAMURAJ-cz.com 

19.04.2024 Rostislav Translate to English by Google     VÍTEJTE V MÉM SVĚTĚ

Články

Exchange Server 2016 Database Availability Group

Neděle, 17.03.2019 14:02 | Samuraj - Petr Bouška |
Elektronická pošta je již dlouho pro firmy důležitým komunikačním kanálem. Proto potřebujeme zajistit vysokou dostupnost této služby. Řešením je nasadit více serverů a řešit jejich zástupnost, tedy vlastně vytvořit cluster. K tomu nám pomáhá technologie Database Availability Group, která se objevila s Exchange 2010. Tato technologie vytváří pasivní kopie databáze schránek, replikuje jejich obsah a umožňuje přepnout aktivitu na kopii.

Tento článek patří do série, která vychází z mých poznámek při migraci Exchange organizace z verze 2010 na 2016. Nejde o kompletní postup, ale o popis hlavních bodů a oblastí. Příklady se týkají určitého daného designu, ale většinou se dají zobecnit. Stejně tak, i když jde o popis migrace, tak se informace hodí i pro novou instalaci či správu.

Starší verzi DAGu jsem popisoval v článku Exchange 2010 CAS Array a DAG mezi Sites.

Plánování topologie a instalace DAG

Dříve než si začneme popisovat, co to je Database Availability Group, jak funguje a konfiguruje se, tak navážeme na předchozí díly a nakreslíme si ukázkovou topologii. Při plánování adres služeb (Namespaces) v prvním díle jsme si vytvářeli tabulky a schémata pro plánované nasazení. Pokud se rozhodneme využít DAG, tak bychom měli doplnit další sítě a adresy. Případně také naplánovat databáze a kde budou primárně aktivní.

Topologie Exchange Database Availability Group

Obecný postup nasazení

  • připravíme jednotlivé servery, většinou asi půjde o VM, a nastavíme síťové adresy
  • na servery nainstalujeme Exchange Mailbox role a provedeme základní konfiguraci
  • vytvoříme DAG (Database Availability Group)
  • jednotlivé Mailbox servery zařadíme do DAGu (jako uzly Nodes - Member Servers)
  • (volitelně) zrušíme staré databáze a vytvoříme nové databáze schránek
  • k databázím přídáme DB kopie na dalších serverech

DAG - Database Availability Group

Dokumentace Database availability groups, Manage database availability groups, Plan for high availability and site resilience

DAG zajišťuje vysokou dostupnost Mailbox DB tím, že vytváří kopie (Mailbox Database Copies) na dalších serverech (členech DAGu) a ty udržuje aktuální pomocí replikací (Continuous Replication). Jedna kopie (na jednom serveru) je aktivní (Active Mounted) a ostatní jsou neaktivní (Passive). V případě problémů na serveru se aktivuje DB kopie na jiném, tedy dojde k automatickému failover. Ruční přepnutí (aktivování) databáze se nazývá switchover. Monitoring a přepínání řeší komponenta Active Manager (součást služby Exchange Replication). DAG je skupina až 16 Mailbox serverů, všechny musí mít stejnou verzi Exchange (tedy nejde 2016 a 2010 dohromady) a být ve stejné doméně. Pokud dojde k switchover nebo failover, tak jsou klienti téměř okamžitě přesměrováni k nové DB.

Od Exchange 2013 SP1 CU4 (minimálně na Windows Server 2012 R2) můžeme vytvořit DAG bez IP adresy, jinak řečeno bez cluster administrative access point (CAAP). Pak se nepřiřazuje IP adresa, nevytváří síťové jméno ani DNS, nevytváří se Cluster Name Object (CNO) v AD DS. Celkově to zjednodušuje řešení clusteru. Ale cluster se pak nedá spravovat pomocí Failover Cluster Management nástroje, ale pouze pomocí Exchange Management Shell.

Velký dopad je pro zálohování, kdy některé nástroje využívají CAAP a bez něj nedokáží DAG zazálohovat. Proto je nejprve třeba zkontrolovat zálohovací SW. Microsoft SCDPM 2012 R2 UR9 podporuje zálohování Exchange 2016, včetně DAGu bez IP adresy. DPM can now backup Exchange 2016

MS doporučuje použít DAG bez administrative access point (pro Exchange 2016 nebo 2019 na minimálně Windows Server 2012 R2). Pouze pokud používáme nějaký 3rd party aplikaci, která se připojuje na cluster/DAG (pro normální provoz to není třeba).

Fungování DAGu

DAG používá nepřetržité replikace (Continuous Replication - block mode nebo file mode) a část technologie Windows Failover Clustering k zajištění vysoké dostupnosti (High Availability) a odolnosti lokalit (Site Resilience).

DAG využívá Windows Failover Cluster, ten využívá princip kvóra (quorum). Pokud jsou servery ve více lokalitách a dojde k výpadku spojení, tak se zajistí, aby běžela pouze jedna strana. Na základě souhlasu (konsenzu) voličů je pouze jedna skupina členů clusteru aktivní. Pokud má DAG sudý počet členů, tak je třeba Quorum Witness Resource, aby se zabránilo split brain syndrome. Členové DAGu komunikují s Witness Server a mohou zamknout soubor witness.log pomocí SMB. Člen DAGu, který zamknul Witness Server, označuje se Locking Node, má hlas navíc a členové, kteří s ním komunikují, mají většinu.

Podle počtu členů clusteru (node) se využívá Quorum Model:

  • Node Majority - lichý počet
  • Node and File Share Majority - sudý počet

Vytvoření DAGu

Musíme si připravit Witness server, kde bude sdílená složka (případně se může použít i druhý (záložní) Witness server). Sice, když máme 3 Mailbox servery, tak se Witness nebude používat, ale nastavit při konfiguraci jej musíme (kdyby se změnil počet členů DAGu). Na Witness serveru musíme do skupiny lokálních administrátorů zařadit doménovou skupinu Exchange Trusted Subsystem.

Pozn.: Na Exchange 2016 je možno vše okolo DAGu spravovat pomocí Exchange Management Shell, ale hodně věcí lze provést i v Exchange Admin Center. V článku si často uvádíme pouze jednu možnost.

Vytvoříme DAG bez IP adresy. Vždy je důležité unikátní jméno pro DAG. Založení je jednoduché.

  • EAC - Exchange Admin Center
  • Servers - Database Availability Groups
  • klikneme na plus - New
  • zadáme jméno, adresu serveru a složku pro Witness, nezadáme žádnou IP adresu
Nový DAG (Database Availability Groups)

Pozn.: Standardně využívá DAG, pro síťový provoz mezi subnety, šifrování a kompresi. V nastavení DAGu můžeme změnit. Exchange servery mezi sebou využívají Kerberos autentizaci.

Přidání serveru do DAGu

Postupně přidáme první, a pak další členy DAGu, tedy jednotlivé Mailbox servery.

  • EAC - Exchange Admin Center
  • Servers - Database Availability Groups
  • zvolíme náš DAG a klikneme na ikonu počítače s ozubeným kolečkem - Manage DAG membership
  • v novém okně klikneme na plus - Add
  • přidáme server a potvrdíme Save
Přidání serveru do DAGu (Database Availability Groups)

Při přidání prvního serveru se provede

  • instalace komponenty Windows Failover Clustering (pokud již nemáme nainstalovanou)
  • vytvoří se Failover Cluster pro DAG se zadaným jménem
  • server se přidá do DAG objektu v AD DS
  • cluster database se aktualizuje údaji o databázích, které jsou mount na přidaném serveru

Protože máme DAG bez IP, tak se neprovede

  • nevytvoří se Cluster Name Object (CNO) v default Computers kontejneru AD DS
  • registrace jména DAG/cluster v DNS
  • nepřiřadí se jméno sítě ke clusteru

Pozn.: Než přidáme druhý server do DAGu, tak musím počkat na proběhnutí replikací AD

Při přidání druhého serveru do DAGu provede

  • přidání serveru do Failover Cluster
  • vytvoří se witness directory and share
  • server se přidá do DAG objektu v AD DS
  • cluster database se aktualizuje údaji o databázích, které jsou mount na přidaném serveru

Kontrola DAGu

Po přidání serveru do DAGu je třeba provést kontrolu, protože se může zdát vše v pořádku, ale server se nepřidá správně a není aktivní. Pro hlavní kontrolu může použít Exchange Management Shell, Failover Cluster PowerShell nebo Failover Cluster řádkový příkaz.

[PS] C:\>Get-DatabaseAvailabilityGroup -Identity MailDAG -Status

Name             Member Servers          Operational Servers
----             --------------          -------------------
MailDAG          {MAIL2, MAIL1, MAIL3}   {MAIL1, MAIL2, MAIL3}

[PS] C:\>Get-Cluster

Name
----
MailDAG

[PS] C:\>Get-ClusterNode

Name            ID    State
----            --    -----
mail1           1     Up
mail2           2     Up
mail3           3     Up

[PS] C:\>cluster node
Listing status for all available nodes:

Node           Node ID Status
-------------- ------- ---------------------
mail1                1 Up
mail3                2 Up
mail2                3 Up

Musíme ověřit, že jsou jednotlivé členské servery (member / node) nahoře (up) a v provozním stavu (Operational). Tento stav vidíme i v Exchange Admin Center, pokud zvolíme editaci DAGu. V PowerShellu si můžeme zobrazit více detailů.

Get-DatabaseAvailabilityGroup -Identity MailDAG -Status | FL *

Také můžeme spustit test celkového zdraví DAGu.

Test-ReplicationHealth

Pozn.: Jeden server mi nešel přidat do DAGu, buď při přidání vrátil chybu, nebo po úspěšném přidání nefungoval. Dlouho jsem to ladil a nakonec vytvořil nový virtuál a nově instalovat Exchange a od té doby bylo vše OK.

Podívat se můžeme na log o přidání člena DAGu v cestě C:\ExchangeSetupLogs\DagTasks. Pak můžeme použít Event Viewer, kde se logují Operational informace - Applications and Services Logs - Microsoft - Exchange - HighAvailability - Operational. Zjistil jsem, že problémy byly s vlastním Failover Cluster. Služba Cluster Service (ClusSvc) byla Disabled a nešla nastartovat. Registry HKEY_LOCAL_MACHINE\Cluster byly neúplné. Soubory jsou v C:\Windows\Cluster.

DAG Network - sítě

DAG network je soubor jednoho nebo více subnetů, které se používají pro replikaci nebo MAPI provoz. DAG musí mít jednu MAPI síť a může mít více replikačních sítí. Je podporováno použití jedné sítě (jednoho adaptéru) pro MAPI i replikaci dohromady. Doporučuje se minimálně dvě sítě a oddělit MAPI a replikace. Pro replikace může být více sítí.

Síť pro replikaci by neměla mít nastavenu default gateway a doporučuje se vypnout Client for Microsoft Networks, File and Printer Sharing for Microsoft Networks a Register this connection's addresses in DNS. Členové DAGu musí mít stejné síťové adaptéry, každý adaptér musí mít nastavenu IPv4 adresu (pokud má server více adaptérů, tak každý musí mít adresu z jiného subnetu). Pokud na MAPI síti vypneme replikace, tak zde stejně mohou probíhat, pokud bude nedostupná síť pro replikace.

MS přímo uvádí, že na Exchange 2010 se sítě často musely konfigurovat ručně. Nyní probíhá konfigurace automaticky systémem. Když si chceme vypsat sítě, tak můžeme použít následující cmdlet, ale pokud jsem jej spustil bez parametru, tak jsem dostal chybu.

[PS] C:\>Get-DatabaseAvailabilityGroupNetwork

Could not load file or assembly 'Microsoft.Exchange.Data, Version=14.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
 or one of its dependencies. The system cannot find the file specified.

Řešení je zavolat s parametrem, kde zadáme jméno serveru Exchange 2016

[PS] C:\>Get-DatabaseAvailabilityGroupNetwork -Server mail1

Identity                         ReplicationEnabled Subnets
--------                         ------------------ -------
MailDAG\MapiDagNetwork           True               {{10.0.0.0/24,Up}}
MailDAG\ReplicationDagNetwork01  True               {{192.168.0.0/24,Up}}

Systém asi většinou vytvoří (rozumně) sítě MapiDagNetwork a ReplicationDagNetwork01, pokud máme dva adaptéry. Na MapiDagNetwork zapne MAPI access i Replication, na ReplicationDagNetwork01 pouze Replication. Pokud chceme provést nějaké manuální změny sítí či ručně vytvořit sítě, tak musíme na DAGu zapnout možnost manuální konfigurace (lze i v EAC).

Set-DatabaseAvailabilityGroup MailDAG -ManualDagNetworkConfiguration $true

Patrně budeme chtít na MAPI síti vypnout replikace

Set-DatabaseAvailabilityGroupNetwork -Identity MailDAG\MapiDagNetwork -ReplicationEnabled:$false

Když do DAGu přidáme server z jiné Site, a tedy jiného subnetu pro MAPI, tak se označuje jako multi-subnet DAG. Na rozdíl od Exchange 2010, zvládne Exchange 2016 správně automaticky přidat subnety do sítí.

[PS] C:\>Get-DatabaseAvailabilityGroupNetwork -Server mail1

Identity                         ReplicationEnabled Subnets
--------                         ------------------ -------
MailDAG\MapiDagNetwork           False              {{10.0.0.0/24,Up}, {10.10.0.0/24,Up}}
MailDAG\ReplicationDagNetwork01  True               {{192.168.0.0/24,Up}}

DAG Network můžeme nyní spravovat i z EAC.

  • EAC - Exchange Admin Center
  • Servers - Database Availability Groups
  • přidání sítě - zvolíme náš DAG a klikneme na ikonu počítače s plus - New DAG network
  • úprava existující - zvolíme náš DAG a vpravo vidíme DAG Network se seznamem a akcemi
Správa sítí DAG Network

Správa kopií databáze schránek

Dokumentace Manage mailbox database copies.

Když jsme vytvořili DAG a zařadili do něj členské servery, tak můžeme k existujícím databázím (Mailbox DB) vytvářet jejich synchronizované kopie a pracovat s nimi.

Vytvoření kopie databáze v rámci DAGu

Když vytvoříme kopii databáze, tak na zvoleném serveru vznikne pasivní kopie DB a aktivují se replikace (continuous replication). Databázové kopie mají přiřazen identifikátor ve formátu Databáze\Server, například DB1\MAIL1. Při vytváření kopie DB se použijí stejné cesty pro datové soubory i logy. Na serverech tedy musí existovat stejné (použité) disky. Aby se mohla vytvořit kopie DB, tak se nesmí používat Circular Logging (odmazávání logů).

  • EAC - Exchange Admin Center
  • Servers - Databases
  • vybereme DB, klikneme na tři tečky - More - Add database copy
  • zvolíme server, kam chceme kopii umístit
  • případně můžeme upravit prioritu kopie - Activation preference number
  • další volitelná možnost jsou zpožděné replikace - Replay lag time

Samozřejmě můžeme přidání kopie provést v Exchange Management Shell.

Add-MailboxDatabaseCopy -Identity DB1 -MailboxServer MAIL1 -ActivationPreference 2

Kontrola stavu databázových kopií

Přímo v seznamu databází v EAC vidíme seznam a stav jednotlivých kopií.

  • EAC - Exchange Admin Center
  • Servers - Databases
  • vybereme DB a vpravo vidíme údaje, včetně kopií
  • pro kopii můžeme využít View Detail
Kontrola stavu databázových kopií

Obdobně si můžeme vypsat v PowerShellu. Zde je vidět, že probíhá prvotní synchronizace po přidání na server MAIL3.

[PS] C:\>Get-MailboxDatabaseCopyStatus DB1

Name                Status          CopyQueue  ReplayQueue LastInspectedLogTime  ContentIndex
                                    Length     Length                            State
----                ------          ---------  ----------- --------------------  ------------
DB1\MAIL1           Mounted         0          0                                 Healthy
DB1\MAIL2           Healthy         0          0           15.11.2018 18:54:13   Healthy
DB1\MAIL3           Resynchronizing 28083      0                                 Suspended

Správa databázových kopií, přepínání

S databázovými kopiemi můžeme provádět různé operace. Nejčastější je asi manuální přepnutí na pasivní kopii, tedy aktivace kopie (Activate Database Copy), Microsoft to označuje jako Database switchovers (Switchovers and failovers). Aktivní kopie DB se odpojí (dismount) na jednom serveru a pasivní kopie se připojí (mounted) jako nová aktivní na jiném. Další možnosti jsou odstranění (Remove) DB kopie, pozastavení (Suspend) a obnova (Resume) a aktualizace (Seed, Update).

  • EAC - Exchange Admin Center
  • Servers - Databases
  • vybereme DB, vpravo vidíme kopií a u nich dostupné příkazy

Aktivace DB kopie pomocí Exchange Management Shell nabízí různé přepínače a někdy je nutné je použít.

Move-ActiveMailboxDatabase DB1 -ActivateOnServer MAIL2 -SkipMoveSuppressionChecks 

Rozložení aktivních DB kopií na servery, DAG Failback

Když máme více Mailbox serverů a DAG, tak máme vyřešeno High Availability a Fault Tolerance, protože pokud dojde k nějaké chybě serveru, tak se aktivují data na druhém. Ale asi by bylo škoda využívat servery ve stylu Active-passive, kdy jeden vykonává všechnu práci a na ostatní se pouze synchronizují data. Proto můžeme využít Active-active (Load Balancing), kdy jsou všechny servery aktivní a obsluhují klienty. Toho dosáhneme tak, že vytvoříme více mailbox DB a nastavíme je aktivní na různých serverech (a využijeme Activation preference number).

Když se provádí plánované (switchover) nebo neplánované (failover) aktivace databázových kopií, tak je výsledkem nevyvážený stav rozložení aktivních DB kopií na servery (oproti úvodnímu stavu). Stejně, jako na Exchange 2010, můžeme využít skript RedistributeActiveDatabases.ps1, který aktivuje DB na serverech podle čísla Activation Preference. Ale od Exchange Server 2016 CU2 není třeba používat, protože balancování DB kopií probíhá automaticky každý zadaný čas (default 1 hodina) pro DAG PreferenceMoveFrequency (Get-DatabaseAvailabilityGroup | FT Name,PreferenceMoveFrequency).

Údržba serveru v DAGu

Než začneme provádět nějakou údržbu serveru nebo instalaci aktualizací, tak je doporučeno přepnout server do Maintenance Mode. Ten přesune aktivní databáze a funkce na ostatní servery. Podrobný popis Performing maintenance on DAG members. Můžeme využít skripty, které jsou součástí instalace Exchange serveru.

cd $ExScripts
.\StartDagServerMaintenance.ps1 -ServerName <ServerName>
.\StopDagServerMaintenance.ps1 -serverName <ServerName>

Server Switchover

Pomocí EAC můžeme jednoduše provést Server Switchover, který aktivuje kopie DB na jiném serveru.To se doporučuje provést před každým restartem Exchange serveru, který je členem DAGu.

  • EAC - Exchange Admin Center
  • Servers - Servers
  • vybereme server, ze kterého chceme přesunout aktivní DB, vpravo klikneme na Server Switchover

Datacenter Activation Coordination (DAC) mode

Defaultně je vypnutý, ale MS jej doporučuje zapnout. Při startu serveru kontroluje, zda je možno aktivovat databázi, pokud máme více datových center a byla aktivována kopie v druhém datovém centru. Má zabránit Split Brain, tedy aby nám aktivně běžely dvě kopie stejné DB. Například, pokud v primárním DC dojde k výpadku proudu a všechny servery padnou. Aktivuje se nám záložní DC a zde kopie DB. V primárním centru se obnoví napájení, server nastartuje, ale nemá komunikaci se záložním. Pak standardně aktivuje DB. Více info Datacenter Activation Coordination mode.

Set-DatabaseAvailabilityGroup -Identity mailDAG -DatacenterActivationMode DagOnly

Pokud používáme DAC mode, tak můžeme využít příkazy pro přepnutí datových center.

Stop-DatabaseAvailabilityGroup
Restore-DatabaseAvailabilityGroup
Start-DatabaseAvailabilityGroup

Client Access Server (CAS) Array

Dříve se po vysokou dostupnost (High Availability) využíval DAG a CAS Array. Ještě byla otázka, jestli máme pouze jednu lokalitu/datové centrum/Site nebo více. Při výpadku lokality nefungovalo CAS Array pro automatické přepnutí. Exchange 2016 již CAS Array vůbec nepoužívá.

CAS Array sloužil pro MAPI/RPC připojení klienta Outlook na Client Access Server. Na Exchange 2016 se MAPI/RPC nepoužívá, místo toho buď MAPI/HTTP (MAPI over HTTP) nebo Outlook Anywhere (MAPI/RPC over HTTP).

Na databázích si můžeme vypsat údaj RpcClientAccessServer, kde je buď adresa serveru, nebo adresa CAS Array, pokud jsme jej používali. I po zrušení všech Exchange 2010 serverů zůstane tento atribut nastaven, ale to nevadí, protože se nepoužívá.

Get-MailboxDatabase | Select Name,RpcClientAccessServer

Odolnosti lokalit - Site Resilience

To znamená DAG přes více lokalit / datových center. Dokumentace Site resilience. Souvisí s popisem Namespaces v prvním článku série.

Exchange 2016 přináší změnu, že automaticky funguje přepnutí na servery v jiné lokalitě (datacentru/Site). Dříve se musel ručně měnit namespace. Klientská spojení jsou nyní pomocí HTTPS (i z Outlooku) a může být přiřazeno více IP adres, které se postupně zkouší. Přímé připojení přes MAPI již není povoleno. Na Exchange 2016 se klient může připojit k libovolnému Mailbox serveru a je zajištěn prostup požadavku na server, kde je aktivní databáze pro danou schránku. Můžeme využít DNS round robin, vytvoříme jeden DNS záznam, který bude obsahovat IP adresy všech serverů.

Řešení problémů a chyb

Oprava sítí DAG Network, odstranění neexistující

Sítě a subnety se přidávají samy, ale již se neodstraňují, když třeba odstraníme servery, které byly v jiné lokalitě. Je dobré občas spustit test a případně provést opravy. Úpravy se mohou dělat Exchange Management Shell i v EAC, kde je například jednodušší editace subnetu.

[PS] C:\>Test-ReplicationHealth

Server          Check                      Result     Error
------          -----                      ------     -----
MAIL1           ClusterService             Passed
MAIL1           ReplayService              Passed
MAIL1           ActiveManager              Passed
MAIL1           TasksRpcListener           Passed
MAIL1           TcpListener                Passed
MAIL1           ServerLocatorService       Passed
MAIL1           DagMembersUp               Passed
MAIL1           MonitoringService          Passed
MAIL1           ClusterNetwork             *FAILED*   Subnet '10.0.0.0/24' on network 'MapiDagNetwork' is not Up. 
  Current state is 'Misconfigured'.
                                                      Subnet '10.0.0.0/24' on network 'MapiDagNetwork' is not Up.
  Current state is 'Misconfigured'.
                                                      Subnet '10.10.0.0/24' on network 'MapiDagNetwork' is not Up.
  Current state is 'Misconfigured'.
                                                      Subnet '10.10.0.0/24' on network 'MapiDagNetwork' is not Up.
  Current state is 'Misconfigured'.
MAIL1           QuorumGroup                Passed
MAIL1           FileShareQuorum            Passed
MAIL1           DatabaseRedundancy         Passed
MAIL1           DatabaseAvailability       Passed
MAIL1           DBCopySuspended            Passed
MAIL1           DBCopyFailed               Passed
MAIL1           DBInitializing             Passed
MAIL1           DBDisconnected             Passed
MAIL1           DBLogCopyKeepingUp         Passed
MAIL1           DBLogReplayKeepingUp       Passed

Test ukazuje chybu na MAPI síti (píše dokonce, že není nahoře, ale ona v tuto chvíli normálně fungovala). Tak si vypíšeme DAG Network.

[PS] C:\>Get-DatabaseAvailabilityGroupNetwork

Identity                         ReplicationEnabled Subnets
--------                         ------------------ -------
MailDAG\MapiDagNetwork           False              {{10.0.0.0/24,Misconfigured}, {10.10.0.0/24,Misconfigured}}
MailDAG\ReplicationDagNetwork01  True               {{192.168.0.0/24,Up}}
MailDAG\ReplicationDagNetwork02  False              {{fe80::/64,Misconfigured}}

U sítě MapiDagNetwork a ReplicationDagNetwork02 vidíme chybu, stav je Misconfigured. MAPI síť hlásí chybu, protože jediný server v druhé lokalitě (síť 10.10.0.0) byl zrušen. Je tedy potřeba editovat síť a odstranit nepoužívaný subnet.

  • EAC - Exchange Admin Center
  • Servers  - Database Availability Groups
  • zvolíme náš DAG, vpravo vidíme DAG Network, kde najdeme požadovanou síť
  • klikneme na View details
  • zde vidíme přiřazené subnety, můžeme je editovat, odstraňovat i přidávat

Pozn.: Odstranění subnetu nebo sítě trvá delší dobu. Takže subnet/síť se přestane zobrazovat až po několika minutách.

Replikační síť 2 vznikla nějak automaticky pro nepoužívanou IPv6 adresu. Potřebujeme celou síť odstranit. Když to zkusíme, tak dostaneme chybu, že je třeba nejprve odstranit subnety.

[PS] C:\>Remove-DatabaseAvailabilityGroupNetwork MailDAG\ReplicationDagNetwork02

DatabaseAvailabilityGroupNetwork 'ReplicationDagNetwork02' can't be removed because it contains active subnets. To remove
 the network, all active subnets must first be assigned to other networks. If you want to disable the use of the network,
 consider using the Set-DatabaseAvailabilityGroupNetwork cmdlet with the -IgnoreNetwork or -ReplicationEnabled parameters.
  + CategoryInfo          : InvalidArgument: (:) [Remove-DatabaseAvailabilityGroupNetwork], DagNetworkManagementException
  + FullyQualifiedErrorId : [Server=MAIL1,RequestId=46104fdf-ef9f-4c67-b991-7dba758fe4f9,TimeStamp=19.02.2019 18:16:28]
 [FailureCategory=Cmdlet-DagNetworkManagementException] 7B8813CC,Microsoft.Exchange.Management.SystemConfigurationTasks.
RemoveDatabaseAvailabilityGroupNetwork
  + PSComputerName        : mail1.firma.local

[PS] C:\>Set-DatabaseAvailabilityGroupNetwork MailDAG\ReplicationDagNetwork02 -Subnets $none

Odstraníme všechny subnety, když si hned vypíšeme údaje o síti, tak v ní pořád subnety uvidíme. Musíme několik minut počkat a zkusit to znovu.

[PS] C:\>Get-DatabaseAvailabilityGroupNetwork MailDAG\ReplicationDagNetwork02

Identity                        ReplicationEnabled Subnets
--------                        ------------------ -------
MailDAG\ReplicationDagNetwork02 False              {}

Pak již odstranění sítě proběhne

[PS] C:\>Remove-DatabaseAvailabilityGroupNetwork MailDAG\ReplicationDagNetwork02

Confirm
Are you sure you want to perform this action?
Removing database availability group network "MailDAG\ReplicationDagNetwork02".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"): y

Content index ve stavu Failed - DB kopie

Docela často se může stát, že když se podíváme (EMS nebo EAC) na stav pasivní kopie DB, tak je zde Content index state: Failed. V tu chvíli se nám nepovede přepnout tuto kopii na aktivní. Tato situace nastává například vždy po restartu některého serveru. Návod na opravu je popsán třeba v Repairing a Failed Content Index in Exchange Server 2016. Ale ukázalo se, že většinou stačí nějakou dobu počkat (třeba 15 minut) a tato chyba sama zmizí.

Content index state: Failed

Problém s aktivací databázové kopie

Chtěl jsem udělat Database switchovers, tedy aktivovat DB kopii na jiném serveru. Operace proběhla, aniž by se zobrazila nějaká chyba. Ale když jsem se na databázi po chvilce podíval, tak byla znovu aktivní na původním serveru. Při dalším pokusu se zobrazila chyba, že je příliš mnoho logs to inspect and replay.

An Active Manager operation failed. Error: The database action failed. Error: An error occurred while trying to validate
 the specified database copy for possible activation. Error:

   mail1:
   Database copy 'DB2' on server 'mail1' has 124 logs to inspect and replay, which is higher than maximum allowed replay
 queue length of 10. If you need to activate this database copy, you can use the Move-ActiveMailboxDatabase cmdlet with
 the -SkipLagChecks and -MountDialOverride parameters to forcibly activate the database copy. If the database does not
 automatically mount after running Move-ActiveMailboxDatabase successfully, use the Mount-Database cmdlet to mount the
 database.

K tomu si můžeme zobrazit aktuální detaily o stavu DB kopií:

[PS] C:\>Get-MailboxDatabaseCopyStatus * | sort name | Select name, status, contentindexstate, ReplayQueueLength

Name         Status  ContentIndexState ReplayQueueLength
----         ------  ----------------- -----------------
DB2\MAIL1    Healthy            Failed                46
DB2\MAIL2    Mounted           Healthy                 0

Zde vidíme frontu logů (ReplayQueueLength) a také stav Content Index jako Failed. Když nějakou dobu počkáme, tak se fronta vyprázdní a stav vrátí na Healthy. Pak můžeme znovu přesunout (aktivovat) DB kopii, ale dopadne to stejně. Po několika pokusech se již aktivace kopie nepodaří a dostaneme chybu:

An Active Manager operation failed. Error: The database action failed. Error: Move for database 'DB2' was suppressed
 because too many moves have happened recently. 4 moves

Pokud chceme v tuto chvíli udělat přesun (aktivaci), tak musíme využít Exchange Management Shell a přidat atribut:

Move-ActiveMailboxDatabase DB2 -ActivateOnServer MAIL1 –SkipMoveSuppressionChecks

Ale stále se kopie neaktivuje na novém serveru. Při prohlížení aplikačního logu událostí na cílovém serveru jsem nalezl příčinu:

EventID 121 ExchangeStoreDB

At '23.02.2019 18:45:40' the Exchange store database 'DB2' copy on this server appears to have failed due to insufficient
 memory. For more details about the failure, consult the Event log on the server for other "ExchangeStoreDb" events.
 Recovery was not attempted.

Na serveru byl přihlášen uživatel (správce) a obsazoval asi 1,5 GB operační paměti. Po jeho odhlášení začalo vše fungovat.

zobrazeno: 9343krát | Komentáře [0]

Autor:

Související články:

Migrace Exchange organizace 2010 na 2016

Prováděl jsem migraci organizace z Exchange Server 2010 na Exchange Server 2016. Celý proces byl dost náročný a dlouhý (i se studiem mi trval 4 měsíce). V průběhu jsem narazil na množství problémů, chyb a nedostatků (i v oficiální dokumentaci). Ze svých poznámek vytvářím tuto sérii. Nejde o kompletní návod na přechod, ale o hlavní body a zmínky problémů, na které jsem narazil. Jednotlivé články popisují různé oblasti Exchange Server 2016, takže nejde pouze o přechod ze starší verze, ale hodí se i pro novou instalaci či správu.

Microsoft Exchange

Jednou částí mé práce je administrace poštovního serveru od firmy Microsoft, tedy Exchange Serveru. Články začínají u verze 2003 a jak jde čas, tak pokračují dále.

Pokud se chcete vyjádřit k tomuto článku, využijte komentáře níže.

Komentáře

Zatím tento záznam nikdo nekomentoval.

Přidat komentář

Vložit tag: strong em link

Vložit smajlík: :-) ;-) :-( :-O

Nápověda:
  • maximální délka komentáře je 2000 znaků
  • HTML tagy nejsou povoleny (budou odstraněny), použít se mohou pouze speciální tagy (jsou uvedeny nad vstupním polem)
  • nový řádek (ENTER) ukončí odstavec a začne nový
  • pokud odpovídáte na jiný komentář, vložte na začátek odstavce (řádku) číslo komentáře v hranatých závorkách