Failover-kluster

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 4 augusti 2016; kontroller kräver 9 redigeringar .

Failover-kluster ( engelska  High-Availability cluster , HA-kluster  - hög tillgänglighetskluster ) - ett kluster (grupp av servrar ), designat i enlighet med hög tillgänglighetsteknik och garanterar minimal driftstopp på grund av hårdvaruredundans. Utan klustring gör ett serverfel att de applikationer eller nätverkstjänster som den stöder är otillgängliga förrän de har säkerhetskopierats. Failover-klustring korrigerar denna situation genom att starta om program på andra noder i klustret utan administratörsingripande om maskinvaru- eller programvarufel upptäcks. Omstartsprocessen är känd som failover . Som en del av denna process kan klustringsmjukvaran ytterligare konfigurera noden innan applikationen körs på den (till exempel importera och montera lämpliga filsystem, konfigurera om nätverkshårdvaran eller köra några verktygsprogram).

Failover-kluster används ofta för att stödja kritiska databaser , lagring av nätverksfiler, affärsapplikationer och kundtjänstsystem som e- handelssajter .

Implementeringar av HA-kluster är försök att uppnå feltolerans för klustret som helhet genom att eliminera kritiska felpunkter, inklusive genom redundans av datorkraft, nätverksanslutningar och datalagring, kombinerat till ett redundant SAN .

Applikationsarkitekturkrav

Inte alla program kan köras i en högtillgänglig klustrad miljö. Lämpliga beslut bör fattas i ett tidigt skede av mjukvaruutvecklingen. För att köras i ett HA-kluster måste en applikation uppfylla minst följande tekniska krav, varav de två sista är avgörande för dess tillförlitliga drift i ett kluster, och som är svårast att till fullo uppfylla:

Konstruktionsscheman

De vanligaste HA-klustren med två noder är den minsta konfiguration som krävs för att ge feltolerans. Men ofta innehåller kluster mycket mer, ibland dussintals noder. Alla dessa konfigurationer kan generellt beskrivas av en av följande modeller:

Termerna logisk värd eller klustrad logisk värd används för att hänvisa till nätverksadressen som används för att komma åt tjänsterna som tillhandahålls av klustret. Det logiska värd-ID:t är inte bundet till en enda klusternod. Det är faktiskt en nätverksadress/namn som är associerat med tjänsten/tjänsterna som tillhandahålls av klustret. Om en klusternod med till exempel en körande databas går ner, kommer databasen att startas om på en annan klusternod, och nätverksadressen där användarna kommer åt databasen kommer att bevaras för alla nya noder, så användare kommer fortfarande att ha tillgång till databasen.

Tillförlitlighet för en enda nod

HA-kluster, förutom de beskrivna inter-nod-redundansscheman, använder alla metoder som vanligtvis används i separata (icke-kluster) system och nätverksinfrastruktur för att maximera tillförlitligheten. Dessa inkluderar:

Individuella nodupptidsmått hjälper till att minimera chanserna att tillgripa inbyggda failover-klustringsmekanismer. Om de senare är aktiverade kan tillgången till tjänsten avbrytas, även om det bara är för en kort tid, och det är mer ändamålsenligt att förhindra kritiska utrustningsfel.

Felåterställningsalgoritmer

System som hanterar fel i distribuerade datorsystem använder olika strategier för att hantera konsekvenserna av ett fel. Till exempel erbjuder Apache Cassandra API Hector (API) tre alternativ för felhantering:

För att kontrollera tillståndet hos noderna i ett kluster sänds vanligtvis en kontinuerlig periodisk signal ("puls", engelska  hjärtslag ) i klustrets interna nätverk från var och en av noderna, genom vilken kontrollprogramvaran bedömer den normala driften. av angränsande noder. Ett icke-uppenbart, men allvarligt problem med "split-brain_(computing)" är kopplat till detta -  i händelse av ett samtidigt avbrott i många anslutningar i klustrets interna nätverk på grund av ett strömavbrott, nätverksutrustningsfel, etc. , noden kommer inte att kunna hantera denna situation korrekt, börjar bete sig som om alla andra klusternoder har misslyckats och startar dubbla tjänster som redan körs i klustret, vilket kan leda till datakorruption i den delade lagringen.

Se även

Anteckningar

Länkar