Konfigurirajte vedno v skupinah razpoložljivosti v SQL strežniku

V tem članku si bomo ogledali postopno namestitev in konfiguracijo skupin razpoložljivosti. Vedno naprej v SQL Server v operacijskem sistemu Windows Server 2019 razmislite o scenarijih prekinitve in številnih drugih povezanih težavah.

"Vedno v skupinah razpoložljivosti"Ali"Vedno v skupinah razpoložljivosti“Je tehnologija za visoko razpoložljivost v SQL Serverju. Always On se je pojavil v izdaji Microsoft SQL Server 2012.

Vsebina:

  • Značilnosti skupin Always On Group za razpoložljivost v SQL Serverju
  • Konfigurirajte grozd preklopa Windows Server za vedno vključeno
  • Konfiguriranje vedno vklopljeno v MS SQL Server
  • Vedno vklopljen: preverjanje učinkovitosti, samodejno preklapljanje

Značilnosti skupin Always On Group za razpoložljivost v SQL Serverju

Za katere se lahko uporabljajo skupine razpoložljivosti SQL Server?

  • Velika razpoložljivost MS SQL in samodejni preklop;
  • Naložite izravnalne poizvedbe za izravnavo med vozlišči (sekundarne replike so lahko berljive);
  • Varnostno kopiranje iz sekundarnih kopij;
  • Odveč podatkov. Vsaka replika shranjuje kopije podatkovnih zbirk skupin.

Vedno vklopljen teče na ploščadi Preklopna grozda Windows Server (WSFC). WSFC spremlja vozlišča, ki sodelujejo v skupini za razpoložljivost, in lahko samodejno odpove z glasovanjem med vozlišči. Začenši z MS SQL Server 2017, priložnost za uporabo Always On brez WSFC, tudi na Linux sistemov. Pri gradnji grozda Linux lahko Pacemaker uporabite kot alternativo WSFC.

Vedno vklopljeno je na voljo na Standardno izdaja, vendar z nekaj omejitvami:

  • Omejite se na 2 kopiji (primarni in sekundarni);
  • Sekundarne replike ni mogoče uporabiti za dostop do branja;
  • Sekundarne replike ni mogoče uporabiti za varnostno kopiranje MS SQL;
  • Podprite samo 1 bazo podatkov na skupino razpoložljivosti.

V urednikih Podjetje brez omejitev.

Funkcije licenciranja MS SQL Server.

Razumeli bomo terminologijo:

  • Vedno ON Skupina razpoložljivosti - To je zbirka kopij in baz podatkov.
  • Replika - To je primerek SQL Serverja v skupini za razpoložljivost. Replika je morda glavna (primarno) in sekundarno (sekundarno) Vsaka replika lahko vsebuje eno ali več baz podatkov.

Always On temelji na WSFC. Vsako vozlišče skupine razpoložljivosti mora biti član grozdja za preklop sistema Windows. Vsak primerek SQL Server lahko ima več skupin razpoložljivosti. Vsaka skupina razpoložljivosti lahko ima do 8 sekundarnih kopij.

Če replika ne uspe, bo grozd glasoval za novo primarno repliko in Always On bo eno od sekundarnih kopij prenesel v primarno. Ker se pri delu z Always On uporabniki povežejo s poslušalcem grozda (ali poslušalcem, torej posebnim naslovom grozda in ustreznim imenom DNS), je možnost pisanja zahtev v celoti obnovljena. Poslušalec je odgovoren tudi za uravnoteženje izbranih poizvedb med sekundarnimi replikami..

Konfigurirajte grozd preklopa Windows Server za vedno vključeno

Najprej moramo konfigurirati grozdni grozd na vsa vozlišča, ki bodo sodelovala v Always On.

Moja konfiguracija:

  • 2 navidezna stroja na Hyper-V z Windows Server 2019;
  • 2 primerka izdaje Enterprise SQL Server 2019;
  • Ime gostitelja vozlišč sta testnode1 in testnode2. Ime primerkov node1 in node2.

V upravitelju strežnikov dodajte vlogo Klasično združevanje, ali namestite komponento s pomočjo PowerShell:

Namestitev-WindowsFeature -Name Failover-Clustering -IncludeManagementTools

Namestitev je samodejna, še vedno vam ni treba ničesar konfigurirati. Po končani namestitvi zaženite snap-in. Upravljavec grozdov s preklopom (FailoverClusters.SnapInHelper.msc).

Ustvari nov grozd.

Dodajte imena strežnikov, ki bodo sodelovali v grozdu.

Nato čarovnik ponudi, da opravi teste. Ne zavrnite, izberite prvi element.

Določite ime grozda, izberite omrežje in IP naslov grozda. Ime grozda se bo samodejno prikazalo v DNS, ni ga treba posebej registrirati. V mojem primeru ime grozda - ClusterAG.

Čeboke odstranimo “V skupino dodajte vse primerne pomnilnike«, Kot lahko kasneje dodamo diske.

V gruči sta samo 2 vozli, zato jih morate konfigurirati Kvorum grozda. Kvorum grozda je "odločilen glas." Na primer, če eno od vozlišč grozda ni na voljo, mora grozd določiti, katera vozlišča so dejansko na voljo in se lahko vidijo. Za skladnost gruč je potreben sklepčnost (Grozd -> Več dejanj -> Konfiguriranje nastavitev kvoruma gruče).

Izberite vrsto priče.

Nato izberite vrsto priče - mrežno mapo (datoteka v skupni rabi priče).

Določite pot UNC do omrežne mape. Ta imenik morate ustvariti sami in mora biti na strežniku, ki ni vključen v gručo..

Pri nastavitvi grozda se lahko prikaže napaka:

Pri konfiguraciji priče deljenja datotek je prišlo do napake. Spremembe lastnosti ni mogoče shraniti za File Share Witness. Sistem ne najde podane datoteke.

Najverjetneje to pomeni, da uporabnik, iz katerega deluje grozd, nima pravic do te omrežne mape. Grozd privzeto deluje kot lokalni uporabnik. Pravice do te mape lahko daste vsem računalnikom v grozdu ali spremenite račun za storitev grozda in ji dodelite pravice.

S tem je zaključena osnovna konfiguracija grozda. Prepričajte se, da je grozd DNS registriran in daje pravilen IP

Konfiguriranje vedno vklopljeno v MS SQL Server

Po standardni namestitvi primerka SQL Serverja lahko omogočite in konfigurirate Always On Skupine razpoložljivosti. Vključiti jih je treba SQL Server Configuration Manager na primer lastnosti. Kot lahko vidite na posnetku zaslona, ​​je SQL Server že ugotovil, da je član skupine WSFC. Potrdite polje »Omogoči vedno v skupinah razpoložljivosti"In znova zaženite storitev primerka MSSQL. Na drugi stopnji sledite istim korakom.

Namig.. Preden konfigurirate Always On, se prepričajte, da storitve SQL Server ne delujejo pod lokalnim sistemskim računom. Priporočamo, da uporabljate skupinske račune storitve, ki jih upravljajo ali navadne domene. V nasprotnem primeru ne morete dokončati nastavitve Always On..

V studiu za upravljanje SQL Server kliknite »Vedno na visoki razpoložljivosti"In zaženite čarovnika za konfiguracijo skupine razpoložljivosti (Čarovnik za novo skupino razpoložljivosti).

Navedite ime skupine Always On Availability Group in izberite »Zdravstveno zaznavanje ravni podatkovne baze" S to možnostjo bo Always On lahko določil, kdaj je baza podatkov v nezdravem stanju..

Izberite zbirke podatkov SQL Server, ki bodo sodelovale v skupini Always On Availability..

Kliknite »Dodaj repliko ...« in se povežite z drugim strežnikom SQL. Tako lahko dodate do 8 strežnikov.

  • Začetna vloga - Vloga replike v času nastanka skupine. Lahko je primarna in sekundarna;
  • Samodejni preklop - če baza podatkov ni na voljo, Always On prenese primarno vlogo v drugo repliko. Označite potrditveno polje;
  • Način razpoložljivosti - morda izbrati Sinhroni prevzem ali Asinhroni zavez. Ko izberete sinhroni način, bodo transakcije, ki prispejo do primarne replike, poslane vsem ostalim sekundarnim replikam s sinhronim načinom. Primarna replika transakcijo zaključi šele potem, ko replike napišejo transakcijo na disk. To odpravi možnost izgube podatkov, če primarna replika ne uspe. V asinhronem načinu glavna replika takoj zabeleži spremembe, ne da bi čakala na odgovor sekundarnih kopij;
  • Berljivo sekundarno - parameter, ki določa zmožnost izbiranja poizvedb v sekundarnih replikah. Če je odgovor pritrdilen, lahko stranke tudi s povezavo brez ApplicationIntent = readonly dobijo dostop samo za branje;
  • Zahtevani so sinhronizirani sekundarni zavezniki - Število sinhroniziranih sekundarnih kopij za dokončanje transakcije. Nastaviti je treba, odvisno od števila kopij, postavil bom 1. Upoštevajte, da če sekundarne sinhronizirane replike postanejo manjše od določenega števila (na primer med nesrečo), bodo baze podatkov skupine razpoložljivosti postale nedostopne tudi za branje.

Končne točke se ne dotikajo.

Zavihek Nastavitve za varnostno kopiranje Izberete lahko, kje bodo varnostne kopije. Vse puščamo kot privzeto - Raje sekundarno.

Določite ime poslušalca dostopne skupine, vrata in naslov IP.

Zavihek Usmerjanje samo za branje pustite nespremenjene.

Izberemo, kako se bodo sinhronizirale replike. Pustim prvo točko - samodejno sinhronizacijo (Samodejno sejanje).

Po tem je treba vaše nastavitve potrditi. Če ni napak, kliknite Dokončaj, da uveljavite spremembe..

V mojem primeru so bili vsi testi uspešni, vendar je čarovnik po namestitvi v koraku z rezultati prijavil napako pri ustvarjanju poslušalca skupine razpoložljivosti. Dnevniki grozda so imeli to napako:

Viri imena omrežja grozdov ni uspel ustvariti povezanega računalniškega predmeta v domeni.

To pomeni, da grozd nima dovolj pravic, da bi ustvaril poslušalca. V dokumentaciji je zapisano, da je dovolj, če želite dati dovoljenje za ustvarjanje predmetov vrste "računalnik" predmetu vaše grozda. Najlažji način je, če pooblastilo prenesete na AD (ali hitra, a slaba možnost je začasno dodajanje predmeta CLUSTERAG $ v skupino upravnikov domene).

Ko diagnosticirate težave z Always ON in nizko zmogljivostjo SQL v skupini za razpoložljivost, morate poleg standardnih diagnostičnih orodij SQL Server skrbno pogledati tudi dnevnike grozda Windows.

Ker sem ustvaril skupino dostopnosti, poslušalca pa ne, sem jo dodal ročno. Pokličemo v kontekstni meni skupine razpoložljivosti in kliknemo Dodajte poslušalca...

Določite IP naslov, vrata in DNS ime poslušalca.

Preverite, ali se poslušalec prikaže v razdelku Razpoložljivi poslušalci v skupini Vedno vklopljen..

S tem je zaključena osnovna namestitev skupine Always On Availability Group..

Vedno vklopljen: preverjanje učinkovitosti, samodejno preklapljanje

Oglejte si nadzorno ploščo nadzorne plošče.

Vse je v redu, skupina za razpoložljivost je ustvarjena in deluje..

Poskusimo prenesti glavno vlogo na primer node2 v ročnem načinu. Z desno miškino tipko kliknite skupino razpoložljivosti in izberite Odpoved.

Vredno je biti pozoren na izdelek Pripravljenost na prekinitev. Vrednost Brez izgube podatkov pomeni, da je izguba podatkov med prehodom izključena.

Povezava z node2.

Kliknite Dokončaj.

Preverite, ali je node2 postal glavna replika v skupini za razpoložljivost (primarni primerek).

Poskrbite, da poslušalec deluje, kot bi moral. V SSMS podajte ime poslušalca DNS in vrata, ločena z vejicami: ag1-poslušalec-1,1445

Naredimo preprost vnos, izbiro in posodobitev poizvedb v našo bazo podatkov SQL Server.

Zdaj preverimo samodejno preklapljanje glavne replike. Preprosto zaključite postopek sqlservr.exe na TESTNODE2.

Preverjanje stanja skupine razpoložljivosti na preostalem vozlišču - TESTNODE1 \ NODE1.

Grozd je samodejno prenesel status replike testnode1 \ node1 v primarno, saj testnode2 \ node2 ni na voljo.

Preverili bomo stanje poslušalca, ker bodo povezave odjemalca nanj.

V mojem primeru sem se uspešno povezala s poslušalcem, vendar je pri dostopu do baze podatkov prišlo do napake

Do baze podatkov 'TestDatabase' ni mogoče dostopati, ker nima kvoruma vozlišč za visoko razpoložljivost. Poskusite znova pozneje.

Do te napake je prišlo zaradi „Zahtevani so sinhronizirani sekundarni zavezniki" Ker pri nastavitvi to vrednost nastavimo na 1, Always On nam preprečuje povezavo z bazo podatkov, ker imamo samo eno primarno kopijo.

To vrednost nastavite na 0 in poskusite znova.

Vklopite testnode2 in preverite stanje skupine.

Status primarne replike je ostal pri testnode1, testnode2 pa je postal sekundarna replika. Podatki, ki smo jih spremenili v testnode1, ko je bil testnode2 izklopljen, so bili po vklopu stroja uspešno sinhronizirani.

To je konec testiranja. Poskrbeli smo, da vse deluje pravilno in v primeru kritične napake bodo podatki na voljo za dostop do branja / pisanja.

Poleg funkcije Always On ima SQL Server še nekaj drugih tehnologij visoke razpoložljivosti..

Skupine Always On Availability Skupine je enostavno nastaviti. Če se soočate z nalogo, da na osnovi SQL Serverja sestavite odporno rešitev, potem bodo skupine razpoložljivosti to nalogo opravile odlično.

S izdajo SQL Server 2017 in SQL Server 2019 je SQL Server Management Studio 18.x predstavil nastavitve Always On, ki so bile prej na voljo samo prek T-SQL, zato priporočamo, da uporabite najnovejšo različico SSMS.