Forstå hvordan Cluster quorum Work

Basert på konferanser som jeg har deltatt og e-poster som jeg får, alltid synes det for meg at når det kommer til clustering, quorumer er en av de mest misforståtte emner. For å effektivt administrere en klynge skjønt, må du forstå hva en beslutningsdyktig og du trenger å vite om de ulike typer quorumer. I denne artikkelen vil jeg forklare hva et quorum er og hva den gjør. Siden dette har en tendens til å være en forvirrende tema for mange mennesker, vil jeg forsøke å holde mine forklaringer så enkelt som jeg kan.

Clustering Basics

Før jeg kan virkelig snakke om hva en beslutningsdyktig er og hva den gjør det, må du vite litt om hvordan en klynge fungerer. Microsofts serverprodukter støtter to hovedtyper av clustering; serverklynger og nettverk lastbalansering (NLB). Designfilosofien bak disse to typer servere kunne ikke vært mer forskjellige, men en ting som både design aksje er konseptet med en virtuell server.

Det finnes flere forskjellige betydninger for begrepet virtuell server, men i clustering har en bestemt mening. Det betyr at brukerne (og andre datamaskiner) se klyngen som en enkelt maskin, selv om den er bygget opp av flere servere. Singelen maskin som brukerne ser, er den virtuelle serveren. De fysiske servere som utgjør den virtuelle serveren er kjent som klase noder.

Network Load Balancing

Disse to forskjellige typer klynger har to helt forskjellige formål. Network Load Balancing er kjent som en aksje hele klyngen. Det blir dette navnet fordi et program kan kjøre på tvers av alle klyngens noder samtidig. I denne type av klyngen, løper hver server sin egen individuelle kopi av et program. Det er mulig at hver server kan koble til en delt database skjønt.

Network Load Balancing klynger er oftest brukt for å arrangere høy etterspørsel nettsteder. I et nettverk lastbalansering arkitektur, opprettholder hver av klyngens noder sin egen kopi av nettstedet. Dersom en av nodene skulle gå ned, de andre nodene i klyngen plukke opp slakk. Hvis resultatene begynner å svinne som etterspørselen øker, bare legge til flere servere til klyngen og disse serverne vil dele arbeidsmengden. En Network Load Balancing klynge distribuerer den nåværende arbeidsmengden jevnt over hele klyngens aktive noder. Brukerne får tilgang til den virtuelle serveren definert av klyngen, og brukerens forespørsel er betjent av noden som er minst opptatt.

Server Clusters

Den andre typen klyngen er bare kjent som en server klyngen. En server cluster er kjent som en aksje ingenting arkitektur. Denne typen klyngen er egnet for applikasjoner som ikke kan fordeles over flere servere. For eksempel kan du ikke kjøre en databaseserver over flere noder fordi hver node vil motta oppdateringer selvstendig, og databasene vil ikke bli synkronisert.

I en server cluster, er bare én node aktiv om gangen. Den andre nodene er plassert i en slags hvilemodus. De venter på å overta hvis den aktive noden skulle svikte.

Som du kanskje husker, sa jeg at serverklynger brukes for programmer som ikke kan fordeles over flere noder. Grunnen til at det er mulig for en node for å overta kjører et program når den aktive noden svikter er fordi alle nodene i klyngen er koblet til en felles lagringsmekanisme. Denne felles lagringsmekanisme kan være et RAID-oppsett, kan det være en storage area network, eller det kan være noe annet. Selve medietype er irrelevant, men begrepet delt lagring er ekstremt viktig for å forstå hva en beslutningsdyktig. Faktisk er serverklynger den eneste typen gruppering som bruker quorumer. Balansering nettverksbelastning bruker ikke quorumer. Derfor vil resten av denne diskusjonen fokusere på serverklynger.

Hva er et quorum?

OK, nå som jeg har gitt deg all nødvendig bakgrunnsinformasjon, la oss gå videre til store spørsmålet. Hva er beslutningsdyktig? For å si det enkelt, er beslutningsdyktig klyngens konfigurasjonsdatabasen. Databasen ligger i en fil som heter \\ MSCS \\ quolog.log. Beslutningsdyktighet er noen ganger også referert til som beslutningsdyktig log.

Selv om quorum er bare en konfigurasjonsdatabase, har det to svært viktige arbeidsplasser. Først av alt, forteller den klyngen som node skal være aktiv. Tenk på det et øyeblikk. For at en klynge å arbeide, alle nodene må fungere på en måte som gjør det mulig for den virtuelle serveren for å fungere på ønsket måte. For at dette skal skje, må hver node har en krystallklar forståelse av sin rolle i klyngen. Det er der beslutningsdyktig kommer inn i bildet. Quorumet forteller klyngen som noden er aktiv og som node eller noder er i stand by.

Det er ekstremt viktig for noder å samsvare med status definert av beslutningsdyktig. Det er så viktig faktisk, at Microsoft har utviklet clustering tjenesten slik at hvis en node ikke kan lese quorum, som node vil ikke bli brakt på nettet som en del av klyngen.

Den andre tingen som quorum gjør er å gripe inn når kommunikasjonen mislykkes mellom noder. Vanligvis kan hver node i en klynge kommunisere med enhver annen node i klyngen over en dedikert nettverksforbindelse. Hvis dette nettverksforbindelsen skulle svikte selv, ville klyngen deles i to deler, som hver inneholder en eller flere funksjonelle noder som ikke kan kommunisere med noder som finnes på den andre siden av kommunikasjonsfeil.

Når denne type kommunikasjonsfeil oppstår, er klyngen sies å ha blitt partisjonert. Problemet er at begge partisjonene har det samme målet; beholde programmet kjører. Søknaden kan ikke kjøres på flere servere samtidig skjønt, så det må være en måte å bestemme hvilken partisjon får å kjøre programmet. Det er der beslutningsdyktig kommer i. Den partisjonen som "eier" quorum er lov til å fortsette å kjøre programmet. Den andre partisjonen er fjernet fra klyngen.

Typer quorumer

Så langt i denne artikkelen, har jeg beskriver beslutningsdyktig type som kalles en standard quorum. Hovedideen bak en standard quorum er at det er en konfigurasjonsdatabase for klyngen og lagres på en delt harddisk, tilgjengelig for alle klyngens noder.

I Windows Server 2003, Microsoft introduserte en ny type beslutningsdyktig kalles Majority Node Set quorum (MNS). Det som virkelig setter en MNS quorum bortsett fra en standard beslutningsdyktig er det faktum at hver node har sitt eget, lokalt lagret kopi av beslutningsdyktig database.

Ved første, hver node har sin egen kopi av beslutningsdyktig database kanskje ikke virke som en stor avtale, men det er virkelig fordi det åpner dørene til langdistanse clustering. Standard klynger er vanligvis ikke praktisk over lange avstander på grunn av problemer involvert i å få tilgang en sentral beslutningsdyktig database på en effektiv måte. Men når hver node har sin egen kopi av databasen, geografisk spredte klynger blitt mye mer praktisk.

Selv MNS quorumer tilbyr noen interessante muligheter, de har også noen alvorlige begrensninger som du må være klar over. Nøkkelen til å forstå MNS er å vite at alt fungerer basert på majoriteter. Et eksempel på dette er at når beslutningsdyktig databasen er oppdatert, må hver kopi av databasen som skal oppdateres. Oppdateringen er ikke ansett for å faktisk har blitt gjort før over halvparten av databasene har blitt oppdatert ((antall noder /2) +1). For eksempel, hvis en klynge har fem noder, deretter tre noder betraktes flertallet. Hvis en oppdatering til quorum ble gjort, ville oppdateringen ikke være gyldig før tre noder hadde blitt oppdatert. Ellers hvis to eller færre noder hadde blitt oppdatert, da flertallet av nodene vil fortsatt ha den gamle beslutningsdyktig informasjon, og derfor ville det gamle beslutningsdyktig konfigurasjon fortsatt være i kraft.

Den andre måten at en MNS beslutningsdyktig avhenger på majoriteter er i å starte nodene. Et flertall av nodene ((antall noder /2) 1) må være online før klyngen vil starte den virtuelle serveren. Dersom færre enn flertallet av noder er på nettet, så klyngen sies å "ikke ha beslutningsdyktig". I et slikt tilfelle vil de nødvendige tjenestene holde starte inntil et tilstrekkelig antall noder er til stede.

En av de viktigste tingene å vite om MNS er at du må ha minst tre nodene i klyngen. Husk at et flertall av noder må kjøre hele tiden. Hvis en klynge bare har to noder, så mesteparten er beregnet til å være 2 ((2 noder /2) 1) -2. Derfor, hvis en node skulle svikte, vil hele klyngen gå ned fordi det ikke ville ha quorum.

Konklusjon

I denne artikkelen har jeg forklart forskjellene mellom et nettverket lastbalansering klyngen og en server cluster. Jeg fortsatte med å beskrive de rollene som beslutningsdyktighet spiller i en server cluster. Til slutt, jeg gikk på å diskutere forskjellene mellom en standard quorum og et flertall node sett quorum. Anmeldelser



Previous:
Next Page: