Konfiguráljon mindig az elérhetőségi csoportokat az SQL Server alkalmazásban

Ebben a cikkben a lépésről lépésre áttekintjük a rendelkezésre állási csoportok telepítését és konfigurálását. Mindig bekapcsolva az SQL Server alkalmazásban a Windows Server 2019 rendszerben vegye figyelembe a feladatátvételi forgatókönyveket és számos más kapcsolódó problémát.

"Mindig rendelkezésre állási csoportokon„Vagy”Mindig rendelkezésre állási csoportokon”Az SQL Server magas rendelkezésre állású technológiája. Mindig bejelentkezett a Microsoft SQL Server 2012 kiadásban.

Tartalom:

  • Az SQL Server állandóan rendelkezésre álló csoportok jellemzői
  • Konfigurálja a Windows Server feladatátvételi fürtöt mindig bekapcsolva
  • Mindig bekapcsolva az MS SQL Server alkalmazásban
  • Mindig be: teljesítmény-ellenőrzés, automatikus feladatátvétel

Az SQL Server állandóan rendelkezésre álló csoportok jellemzői

Milyen SQL Server elérhetőségi csoportok használhatók?

  • Magas rendelkezésre állás az MS SQL és az automatikus feladatátvétel;
  • Terheléskiegyenlítő kiválasztott lekérdezések csomópontok között (a másodlagos replikák olvashatók lehetnek);
  • Biztonsági mentés a másodlagos replikákból;
  • Adat redundancia. Minden replika tárolja a rendelkezésre álláscsoport-adatbázisok másolatait.

Mindig On fut a peronon Windows Server feladatátvételi fürt (WSFC). A WSFC figyeli a rendelkezésre állási csoportban részt vevő csomópontokat, és automatikusan meghibásodhat a csomópontok közötti szavazással. Az MS SQL Server 2017-től kezdve az állandó bekapcsolás lehetősége WSFC nélkül, beleértve a Linux rendszereket. Linux fürt felépítésekor a Pacemaker alkalmazható a WSFC alternatívájaként.

A Mindig elérhető helyen elérhető szabvány kiadás, de néhány korlátozással:

  • Korlát 2 replikára (elsődleges és másodlagos);
  • A másodlagos replika nem használható olvasási hozzáféréshez;
  • A másodlagos replika nem használható MS SQL biztonsági mentéshez;
  • Csak rendelkezésre álló csoportonként 1 adatbázist támogat.

A szerkesztőkben A vállalkozásnak nincs korlátozása.

MS SQL Server licencelési szolgáltatások.

Megértjük a terminológiát:

  • Mindig ON rendelkezésre állás csoport - Ez a replikák és az adatbázisok gyűjteménye.
  • másolat - Ez az SQL Server példánya egy rendelkezésre állási csoportban. Lehet, hogy a replika a fő (elsődleges) és másodlagos (másodlagos). Minden replika tartalmazhat egy vagy több adatbázist.

A Mindig a WSFC alapú. Minden rendelkezésre állási csoport csomópontnak a Windows feladatátvevő fürt tagjának kell lennie. Az SQL Server egyes példányai több elérhetőségi csoportot tartalmazhatnak. Minden rendelkezésre álláscsoport legfeljebb 8 másodlagos replikával rendelkezik.

Ha a replika sikertelen, akkor a klaszter az új elsődleges replikának szavaz, és a Mindig bekapcsolva a másodlagos replikák egyikét átviszi az elsődlegesre. Mivel a Mindig bekapcsolt állapotban a felhasználók kapcsolódnak a fürtfigyelőhöz (vagy a Figyelőhöz, vagyis a fürt speciális IP-címéhez és a megfelelő DNS-névhez), a kérések írásának képessége teljes mértékben helyreáll. A hallgató felelõs a kiválasztott lekérdezések kiegyensúlyozásáért is a másodlagos replikák között..

Konfigurálja a Windows Server feladatátvételi fürtöt mindig bekapcsolva

Mindenekelőtt a feladatátvételi fürtöt minden olyan csomóponton be kell állítanunk, amelyek részt vesznek a Mindig bekapcsolva.

Saját konfigurációm:

  • 2 virtuális gép a Hyper-V rendszeren a Windows Server 2019 segítségével;
  • Az Enterprise SQL Server 2019 kiadásának két példánya;
  • A csomópontok hosztneve a testnode1 és testnode2. A node1 és node2 példányok neve.

Adjon hozzá egy szerepet a Kiszolgálókezelőben Feladatátvételi csoportosulás, vagy telepítse az összetevőt a PowerShell használatával:

Telepítés - WindowsFeature -Névátvételi-Fürtözés -IncludeManagementTools

A telepítés automatikus, még nem kell konfigurálnia semmit. A telepítés befejezése után indítsa el a beépülő modult. Feladatátvevő fürt menedzser (FailoverClusters.SnapInHelper.msc).

Hozzon létre egy új fürtöt.

Adja hozzá a fürtben részt vevő kiszolgálók nevét.

Ezután a varázsló felajánlja a tesztek átadását. Ne utasítsa el, válassza ki az első elemet.

Adja meg a klaszter nevét, válassza ki a klaszter hálózatát és IP-címét. A fürt neve automatikusan megjelenik a DNS-ben, nem kell külön regisztrálnia. Az én esetemben a klaszter neve - ClusterAG.

Eltávolítjuk a chebokatAdjon hozzá minden alkalmas tárhelyet a fürthez”, Mivel később lemezeket is hozzáadhatunk.

Csak két csomópont van a fürtben, ezért be kell állítania A klaszter kvóruma. A klaszter kvóruma „meghatározó hang”. Például, ha az egyik fürtcsomópont elérhetetlenné válik, a fürtnek meg kell határoznia, mely csomópontok állnak rendelkezésre és láthatják egymást. Kvorumra van szükség a klaszter konzisztenciájához (Klaszter -> További műveletek -> A klaszter kvórumbeállításainak konfigurálása).

Válassza ki a kvórum tanú típusát.

Ezután válassza ki a tanú típusát - hálózati mappa (fájlmegosztó tanú).

Adja meg a hálózati mappa UNC elérési útját. Önnek létre kell hoznia ezt a könyvtárat, és olyan kiszolgálón kell lennie, amely nem vesz részt a fürtben..

Fürt létrehozásakor hibaüzenetet kaphat:

Hiba történt a fájlmegosztó tanú konfigurálásakor. Nem sikerült menteni a File Share Witness tulajdonságváltozásait. A rendszer nem találja a megadott fájlt.

Valószínűleg ez azt jelenti, hogy annak a felhasználónak, ahonnan a fürt működik, nincs joga erre a hálózati mappára. Alapértelmezés szerint a fürt helyi felhasználóként fut. A fürt összes számítógépéhez jogokat adhat ennek a mappának a számára, megváltoztathatja a fürtszolgáltatás fiókját, és jogosultságokat adhat hozzá.

Ez befejezi az alapvető fürtkonfigurációt. Ellenőrizze, hogy a fürt DNS-je regisztrálva van-e és adja meg a helyes IP-t

Mindig bekapcsolva az MS SQL Server alkalmazásban

Az SQL Server egy példányának szabványos telepítése után engedélyezheti és konfigurálhatja a Mindig rendelkezésre állási csoportokat. Be kell őket vonni a SQL Server Configuration Manager például tulajdonságok. Amint az a képernyőképen látható, az SQL Server már megállapította, hogy tagja a WSFC-fürtnek. Jelölje be a „Mindig engedélyezze az elérhetőségi csoportokatIndítsa újra az MSSQL példányszolgáltatást. Kövesse ugyanazokat a lépéseket a második példányban.

tanács.. A Always On konfigurálása előtt ellenőrizze, hogy az SQL Server szolgáltatások nem futnak-e helyi rendszerfiók alatt. Javasoljuk, hogy használja a Csoport által kezelt szolgáltatási fiókokat vagy egy szokásos domain fiókot. Ellenkező esetben nem tudja befejezni a Always On beállítást..

Az SQL Server Management Studio alkalmazásban kattintson a „Mindig magas rendelkezésre állással rendelkezikÉs futtassa a rendelkezésre állási csoport konfigurációs varázslóját (Új rendelkezésre állási csoport varázsló).

Adja meg a Mindig elérhető elérhetőség csoport nevét, majd válassza a „Adatbázis szintű állapotfelderítés”. Ezzel a lehetőséggel a Mindig bekapcsolva képes lesz meghatározni, hogy az adatbázis egészségtelen állapotban van-e..

Válassza ki az SQL Server adatbázisokat, amelyek részt vesznek a Mindig rendelkezésre állási csoportban..

Kattintson az „Add Replica ...” elemre, és csatlakozzon a második SQL szerverhez. Ily módon akár 8 szervert is felvehet.

  • Kezdeti szerep - A replika szerepe a csoport létrehozásának idején. Lehet elsődleges és másodlagos;
  • Automatikus feladatátvétel - Ha az adatbázis elérhetetlenné válik, a Mindig bekapcsolja az elsődleges szerepet egy másik replikára. Jelölje be a jelölőnégyzetet;
  • Rendelkezésre állás mód - talán választani Szinkron kötelezettségvállalás vagy Aszinkron elkötelezettség. Ha a szinkron módot választja, az elsődleges replikára érkező tranzakciókat szinkron módban az összes többi másodlagos replikához elküldi. Az elsődleges replika csak akkor fejezi be a tranzakciót, amikor a replikák a tranzakciót lemezre írják. Ez kiküszöböli az adatvesztés lehetőségét, ha az elsődleges replika meghibásodik. Aszinkron módban a fő replika azonnal rögzíti a változásokat, anélkül, hogy a másodlagos replikák válaszát várná;
  • Olvasható másodlagos - paraméter, amely meghatározza a másodlagos replikákhoz kiválasztott lekérdezések készítésének képességét. Ha igen, akkor az ügyfelek az ApplicationIntent = readonly nélküli kapcsolat nélkül is csak olvasási hozzáférést kaphatnak;
  • Szükséges szinkronizált másodlagos állomány a kötelezettségvállaláshoz - A tranzakció befejezéséhez szükséges szinkronizált másodlagos replikák száma. Be kell állítani a replikák számától függően, ezt megteszem 1. Ne feledje, hogy ha a másodlagos szinkronizált replikák kevesebbek lesznek, mint a megadott szám (például egy baleset során), akkor a rendelkezésre állási csoport adatbázisai elérhetetlenné válnak még olvasáshoz.

A végpontok nem érintkeznek.

lap Biztonsági mentési beállítások Kiválaszthatja, hogy hol készítsen biztonsági másolatot. Mindent hagyunk alapértelmezettként - Inkább a másodlagos.

Adja meg a hozzáférési csoport figyelőjének nevét, a portot és az IP címet.

lap Csak olvasható útvonal hagyja változatlanul.

Kiválasztjuk a replikák szinkronizálásának módját. Az első pontot hagyom - automatikus szinkronizálás (Automatikus vetés).

Ezt követően a beállításokat érvényesíteni kell. Ha nincs hiba, kattintson a Befejezés gombra a módosítások alkalmazásához..

Saját esetemben az összes teszt sikeres volt, de az Eredmények lépésben történő telepítés után a varázsló hibát jelentett a rendelkezésre állási csoportfigyelő létrehozásakor. A fürtnaplókban ez a hiba volt:

A fürthálózat-erőforrás nem hozta létre a társított számítógépes objektumot a tartományban.

Ez azt jelenti, hogy a fürtnek nincs elegendő joga a hallgató létrehozásához. A dokumentáció szerint elegendő engedély megadása a „számítógép” típusú objektumok létrehozásához a klaszter objektumához. Ennek legegyszerűbb módja az, ha felhatalmazást ad az AD-re (vagy egy gyors, de rossz lehetőség, ha ideiglenesen hozzáadja a CLUSTERAG $ objektumot a Domain Admins csoporthoz)..

Az állandó bekapcsolódással és az alacsony SQL teljesítménygel kapcsolatos problémák diagnosztizálásakor a rendelkezésre állási csoportban, a szokásos SQL Server diagnosztikai eszközök mellett, alaposan meg kell vizsgálnia a Windows fürtnaplóit.

Mivel az akadálymentesség-csoportot létrehoztam, de a hallgató nem, manuálisan adtam hozzá. Felhívjuk a rendelkezésre álló csoport helyi menüjét, és kattintsunk Add hallgató...

Adja meg a figyelő IP-címét, portját és DNS-nevét.

Ellenőrizze, hogy a Hallgató megjelenik-e a Mindig bekapcsolt csoport Elérhető hallgatók szakaszában..

Ez befejezi a Mindig rendelkezésre állás csoport alapbeállítását..

Mindig be: teljesítmény-ellenőrzés, automatikus feladatátvétel

Vessen egy pillantást az irányítópult irányítópultjára.

Minden rendben, a rendelkezésre állási csoport létrehozva és működik..

Próbáljuk meg átadni a fő szerepet a node2 példánynak kézi üzemmódban. Kattintson a jobb gombbal egy rendelkezésre állási csoportra, és válassza a lehetőséget Feladatátvevő.

Érdemes figyelni az elemre Feladatátvételi készség. érték Nincs adatvesztés azt jelenti, hogy az adatvesztés az átmenet során kizárt.

Csatlakozás a2-es csomóponthoz.

Kattintson a Befejezés gombra.

Ellenőrizze, hogy a node2 lett-e a rendelkezésre állási csoport elsődleges replikája (elsődleges példány).

Győződjön meg arról, hogy a hallgató a megfelelő módon működik. Az SSMS-ben adja meg a figyelő DNS nevét és a portot vesszővel elválasztva: AG1-hallgató-1,1445

Készítsünk egyszerű beszúrást, válasszuk ki és frissítsük a lekérdezéseket az SQL Server adatbázisunkban.

Most ellenőrizzük a fő replika automatikus feladatátvételét. Csak fejezze be az sqlservr.exe folyamatot a TESTNODE2 rendszeren.

A rendelkezésre álló csoport állapotának ellenőrzése a fennmaradó csomóponton - TESTNODE1 \ NODE1.

A fürt automatikusan átvitte a testnode1 \ node1 replika állapotát az elsődlegesre, mivel a testnode2 \ node2 elérhetetlenné vált.

Ellenőrizzük a hallgató állapotát, mert az ügyfélkapcsolatok ehhez mennek.

Saját esetemben sikeresen csatlakoztam a hallgatóhoz, de hiba történt az adatbázishoz való hozzáférés során

Nem érhető el a 'TestDatabase' adatbázis, mert hiányzik a magas rendelkezésre állású csomópontok kvóruma. Próbálkozzon újra később.

Ez a hiba az „Szükséges szinkronizált másodlagos állomány a kötelezettségvállaláshoz”. A beállítás óta ezt az értéket állítottuk be 1, A Mindig bekapcsolás megakadályozza a csatlakozást az adatbázishoz, mivel csak egy elsődleges replikánk van.

Állítsa ezt az értéket 0 és próbáld újra.

Kapcsolja be a testnode2-t, és ellenőrizze a csoport állapotát.

Az elsődleges replika állapota a testnode1-nél maradt, a testnode2 pedig másodlagos replikává vált. Azokat az adatokat, amelyeket testnode1-re változtatunk, amikor a testnode2 kikapcsolásra került, a gép bekapcsolása után a szinkronizálás sikeres volt.

Ez a tesztelés vége. Gondoskodtunk arról, hogy minden helyesen működjön, és kritikus hiba esetén az adatok elérhetőek lesznek az olvasás / íráshoz való hozzáféréshez.

Az Always On mellett az SQL Server számos más, magas rendelkezésre állású technológiával is rendelkezik..

A Mindig rendelkezésre állási csoportokat meglehetősen könnyű konfigurálni. Ha az SQL Server alapján hibatűrő megoldást kell felépíteni, akkor a rendelkezésre állási csoportok tökéletesen elvégzik ezt a feladatot.

Az SQL Server 2017 és az SQL Server 2019 kiadásával az SQL Server Management Studio 18.x bevezette a Mindig beállításokat, amelyek korábban csak a T-SQL-n keresztül voltak elérhetők, ezért javasolt az SSMS legújabb verziójának használata..