Dela via


IaaS med SQL Server – justera tröskelvärden för redundansklusternätverk

I den här artikeln beskrivs lösningar för att justera tröskelvärdet för redundansklusternätverk.

Symptom

När du kör windows-noder för redundanskluster i IaaS med en SQL Server AlwaysOn-tillgänglighetsgrupp rekommenderas att du ändrar klusterinställningen till ett mer avslappnat övervakningstillstånd. Klusterinställningarna är inte begränsande och kan orsaka onödiga avbrott. Standardinställningarna är utformade för mycket finjusterade lokala nätverk och tar inte hänsyn till risken för inducerad svarstid som orsakas av en miljö med flera klientorganisationer, till exempel Microsoft Azure (IaaS).

Windows Server-redundansklustring övervakar ständigt nätverksanslutningarna och hälsotillståndet för noderna i ett Windows-kluster. Om en nod inte kan nås via nätverket vidtas återställningsåtgärder för att återställa och ta program och tjänster online på en annan nod i klustret. Svarstiden i kommunikationen mellan klusternoder kan leda till följande fel:

Fel 1135 (systemhändelselogg)

Nodnod 1 för kluster har tagits bort från det aktiva redundansklustrets medlemskap. Klustertjänsten på den här noden kan ha stoppats. Detta kan också bero på att noden har förlorat kommunikationen med andra aktiva noder i redundansklustret. Kör guiden Verifiera en konfiguration för att kontrollera nätverkskonfigurationen. Om villkoret kvarstår kontrollerar du om det finns maskinvaru- eller programvarufel relaterade till nätverkskorten på den här noden. Kontrollera även om det finns fel i andra nätverkskomponenter som noden är ansluten till, till exempel hubbar, växlar eller bryggor.

Cluster.log exempel:

0000ab34.00004e64::2014/06/10-07:54:34.099 DBG   [NETFTAPI] Signaled NetftRemoteUnreachable event, local address 10.xx.x.xxx:3343 remote address 10.x.xx.xx:3343
0000ab34.00004b38::2014/06/10-07:54:34.099 INFO  [IM] got event: Remote endpoint 10.xx.xx.xxx:~3343~ unreachable from 10.xx.x.xx:~3343~
0000ab34.00004b38::2014/06/10-07:54:34.099 INFO  [IM] Marking Route from 10.xxx.xxx.xxxx:~3343~ to 10.xxx.xx.xxxx:~3343~ as down
0000ab34.00004b38::2014/06/10-07:54:34.099 INFO  [NDP] Checking to see if all routes for route (virtual) local fexx::xxx:5dxx:xxxx:3xxx:~0~ to remote xxx::cxxx:xxxd:xxx:dxxx:~0~ are down
0000ab34.00004b38::2014/06/10-07:54:34.099 INFO  [NDP] All routes for route (virtual) local fxxx::xxxx:5xxx:xxxx:3xxx:~0~ to remote fexx::xxxx:xxxx:xxxx:xxxx:~0~ are down
0000ab34.00007328::2014/06/10-07:54:34.099 INFO  [CORE] Node 8: executing node 12 failed handlers on a dedicated thread
0000ab34.00007328::2014/06/10-07:54:34.099 INFO  [NODE] Node 8: Cleaning up connections for n12.
0000ab34.00007328::2014/06/10-07:54:34.099 INFO  [Nodename] Clearing 0 unsent and 15 unacknowledged messages.
0000ab34.00007328::2014/06/10-07:54:34.099 INFO  [NODE] Node 8: n12 node object is closing its connections
0000ab34.00008b68::2014/06/10-07:54:34.099 INFO  [DCM] HandleNetftRemoteRouteChange
0000ab34.00004b38::2014/06/10-07:54:34.099 INFO  [IM] Route history 1: Old: 05.936, Message: Response, Route sequence: 150415, Received sequence: 150415, Heartbeats counter/threshold: 5/5, Error: Success, NtStatus: 0 Timestamp: 2014/06/10-07:54:28.000, Ticks since last sending: 4
0000ab34.00007328::2014/06/10-07:54:34.099 INFO  [NODE] Node 8: closing n12 node object channels
0000ab34.00004b38::2014/06/10-07:54:34.099 INFO  [IM] Route history 2: Old: 06.434, Message: Request, Route sequence: 150414, Received sequence: 150402, Heartbeats counter/threshold: 5/5, Error: Success, NtStatus: 0 Timestamp: 2014/06/10-07:54:27.665, Ticks since last sending: 36
0000ab34.0000a8ac::2014/06/10-07:54:34.099 INFO  [DCM] HandleRequest: dcm/netftRouteChange
0000ab34.00004b38::2014/06/10-07:54:34.099 INFO  [IM] Route history 3: Old: 06.934, Message: Response, Route sequence: 150414, Received sequence: 150414, Heartbeats counter/threshold: 5/5, Error: Success, NtStatus: 0 Timestamp: 2014/06/10-07:54:27.165, Ticks since last sending: 4
0000ab34.00004b38::2014/06/10-07:54:34.099 INFO  [IM] Route history 4: Old: 07.434, Message: Request, Route sequence: 150413, Received sequence: 150401, Heartbeats counter/threshold: 5/5, Error: Success, NtStatus: 0 Timestamp: 2014/06/10-07:54:26.664, Ticks since last sending: 36
0000ab34.00007328::2014/06/10-07:54:34.100 INFO    <realLocal>10.xxx.xx.xxx:~3343~</realLocal>
0000ab34.00007328::2014/06/10-07:54:34.100 INFO    <realRemote>10.xxx.xx.xxx:~3343~</realRemote>
0000ab34.00007328::2014/06/10-07:54:34.100 INFO    <virtualLocal>fexx::xxxx:xxxx:xxxx:xxxx:~0~</virtualLocal>
0000ab34.00007328::2014/06/10-07:54:34.100 INFO    <virtualRemote>fexx::xxxx:xxxx:xxxx:xxxx:~0~</virtualRemote>
0000ab34.00007328::2014/06/10-07:54:34.100 INFO    <Delay>1000</Delay>
0000ab34.00007328::2014/06/10-07:54:34.100 INFO    <Threshold>5</Threshold>
0000ab34.00007328::2014/06/10-07:54:34.100 INFO    <Priority>140481</Priority>
0000ab34.00007328::2014/06/10-07:54:34.100 INFO    <Attributes>2147483649</Attributes>
0000ab34.00007328::2014/06/10-07:54:34.100 INFO  </struct mscs::FaultTolerantRoute>
0000ab34.00007328::2014/06/10-07:54:34.100 INFO   removed
0000ab34.0000a7c0::2014/06/10-07:54:38.433 ERR   [QUORUM] Node 8: Lost quorum (3 4 5 6 7 8)
0000ab34.0000a7c0::2014/06/10-07:54:38.433 ERR   [QUORUM] Node 8: goingAway: 0, core.IsServiceShutdown: 0
0000ab34.0000a7c0::2014/06/10-07:54:38.433 ERR   lost quorum (status = 5925)

Orsak

Det finns två inställningar som används för att konfigurera klustrets anslutningshälsa.

Delay – Detta definierar hur ofta klusterpulsslag skickas mellan noder. Fördröjningen är antalet sekunder innan nästa pulsslag skickas. I samma kluster kan det finnas olika fördröjningar mellan noder i samma undernät och mellan noder, som finns i olika undernät.

Tröskelvärde – Detta definierar antalet pulsslag som missas innan klustret vidtar återställningsåtgärder. Tröskelvärdet är ett antal pulsslag. I samma kluster kan det finnas olika tröskelvärden mellan noder i samma undernät och mellan noder som finns i olika undernät.

Som standard anger Windows Server 2016 SameSubnetThreshold till 10 och SameSubnetDelay till 1 000 ms. Om anslutningsövervakningen till exempel misslyckas i 10 sekunder nås tröskelvärdet för redundans, vilket resulterar i att noden inte kan nås från klustermedlemskapet. Detta resulterar i att resurserna flyttas till en annan tillgänglig nod i klustret. Klusterfel rapporteras, inklusive klusterfel 1135 (ovan) rapporteras.

Åtgärd

Lös problemet genom att lätta på konfigurationsinställningarna för klusternätverk. Se Pulsslag och tröskelvärde.

Referenser

Mer information om hur du justerar konfigurationsinställningar för Windows-klusternätverk finns i Justera tröskelvärden för redundansklusternätverk.

Information om hur du användercluster.exe för att finjustera konfigurationsinställningar för Windows-klusternätverk finns i Konfigurera klusternätverk för ett redundanskluster.