Az Azure rövid útmutatósablonjaival konfigurálhat egy rendelkezésre állási csoportot az AZURE-beli virtuális gépen futó SQL Serverhez

A következőre vonatkozik:SQL Server azure-beli virtuális gépen

Tipp

Egy rendelkezésre állási csoport üzembe helyezésének számos módja van. Egyszerűsítse az üzembe helyezést, és szükségtelenné teszi az Azure Load Balancer vagy az elosztott hálózatnév (DNN) használatát az Always On rendelkezésre állási csoport számára azáltal, hogy sql serveres virtuális gépeket (VM-eket) hoz létre több alhálózatban ugyanazon az Azure-beli virtuális hálózaton belül. Ha már létrehozta a rendelkezésre állási csoportot egyetlen alhálózatban, migrálhatja azt egy több alhálózatos környezetbe.

Ez a cikk azt ismerteti, hogyan automatizálhatja az Azure gyorsútmutató-sablonjait az Sql Server virtuális gépek (virtuális gépek) Always On rendelkezésre állási csoportkonfigurációjának üzembe helyezésének részleges automatizálására egyetlen Azure-alhálózaton belül. Ebben a folyamatban két Azure gyorsútmutató-sablont használunk:

Sablon Leírás
sql-vm-ag-setup Létrehozza a Windows feladatátvevő fürtöt, és csatlakozik az SQL Server virtuális gépekhez.
sql-vm-aglistener-setup Létrehozza a rendelkezésre állási csoport figyelőt, és konfigurálja a belső terheléselosztót. Ez a sablon csak akkor használható, ha a Windows feladatátvevő fürt a 101-sql-vm-ag-setup sablonnal lett létrehozva .

A rendelkezésre állási csoport konfigurációjának más részeit manuálisan kell elvégezni, például a rendelkezésre állási csoport létrehozását és a belső terheléselosztó létrehozását. Ez a cikk automatizált és manuális lépések sorozatát ismerteti.

Bár ez a cikk az Azure rövid útmutatósablonjait használja a rendelkezésre állási csoport környezetének konfigurálásához, ezt az Azure Portal, a PowerShell vagy az Azure CLI használatával, illetve manuálisan is megteheti.

Megjegyzés:

Mostantól az Azure Migrate használatával át lehet emelni és áthelyezni a rendelkezésre állási csoport megoldását az Azure-beli virtuális gépeken futó SQL Serverre. További információ: Migrálási rendelkezésre állási csoport .

Előfeltételek

Ha az Always On rendelkezésre állási csoport beállítását gyorsútmutató-sablonok használatával szeretné automatizálni, a következő előfeltételekkel kell rendelkeznie:

  • Egy Azure-előfizetés.
  • Egy tartományvezérlővel rendelkező erőforráscsoport.
  • Az Sql Server 2016 (vagy újabb) Enterprise kiadást futtató Azure-ban egy vagy több tartományhoz csatlakoztatott virtuális gép, amelyek ugyanabban a rendelkezésre állási csoportban vagy rendelkezésre állási zónában vannak, és amelyek regisztrálva vannak az SQL IaaS Agent bővítményben.
  • Egy belső Azure Load Balancer és egy elérhető (entitás által nem használt) IP-cím a rendelkezésre állási csoport figyelője számára az SQL Server virtuális gépével azonos alhálózaton belül.

Engedélyek

Az Always On rendelkezésre állási csoport Azure gyorsútmutató-sablonok használatával történő konfigurálásához a következő engedélyek szükségesek:

  • Egy meglévő tartományi felhasználói fiók, amely rendelkezik számítógépobjektum-létrehozási engedéllyel a tartományban. Például egy tartományi rendszergazdai fiók általában rendelkezik elegendő engedéllyel (például: account@domain.com). Ennek a fióknak az egyes virtuális gépek helyi rendszergazdai csoportjának is kell lennie a fürt létrehozásához.
  • Az SQL Servert vezérlő tartományi felhasználói fiók.

Fürt létrehozása

Miután az SQL Server virtuális gépeit regisztrálták az SQL IaaS Agent bővítményben, csatlakozhat az SQL Server virtuális gépeihez az SqlVirtualMachineGroups szolgáltatáshoz. Ez az erőforrás határozza meg a Windows feladatátvevő fürt metaadatait. A metaadatok tartalmazzák a verziót, a kiadást, a teljes tartománynevet, az Active Directory-fiókokat a fürt és az SQL Server kezeléséhez, valamint a tárfiókot felhőbeli tanúsítóként.

Sql Server virtuális gépek hozzáadása az SqlVirtualMachineGroups erőforráscsoporthoz bootstraps a Windows feladatátvevő fürtszolgáltatáshoz a fürt létrehozásához, majd összekapcsolja az SQL Server virtuális gépeket a fürthöz. Ez a lépés a 101-sql-vm-ag-setup gyorsútmutató-sablonnal van automatizálva. Implementálhatja a következő lépésekkel:

  1. Nyissa meg az sql-vm-ag-setup rövid útmutatósablont. Ezután az Üzembe helyezés az Azure-ban lehetőséget választva nyissa meg a rövid útmutatósablont az Azure Portalon.

  2. Töltse ki a windowsos feladatátvevő fürt metaadatainak konfigurálásához szükséges mezőket. Az opcionális mezőket üresen hagyhatja.

    Az alábbi táblázat a sablonhoz szükséges értékeket mutatja be:

    Mező Value
    Előfizetés Az az előfizetés, amelyben az SQL Server virtuális gépei léteznek.
    Erőforráscsoport Az az erőforráscsoport, amelyben az SQL Server virtuális gépek találhatók.
    Feladatátvevő fürt neve Az új Windows-feladatátvevő fürthöz használni kívánt név.
    Meglévő virtuálisgép-lista Azok az SQL Server-virtuális gépek, amelyekben részt kíván venni a rendelkezésre állási csoportban, és az új fürt része. Ezeket az értékeket vesszővel és szóközzel (például SQLVM1, SQLVM2) kell elválasztania.
    SQL Server-verzió Az SQL Server virtuális gépek SQL Server-verziója. Válassza ki a legördülő listából. Jelenleg csak az SQL Server 2016 és az SQL Server 2017 rendszerképek támogatottak.
    Meglévő teljes tartománynév Annak a tartománynak a meglévő teljes tartománynévje, amelyben az SQL Server virtuális gépek találhatók.
    Meglévő tartományi fiók Egy meglévő tartományi felhasználói fiók, amely a CNO létrehozásakor számítógépobjektum-létrehozási engedéllyel rendelkezik a tartományban a sablon üzembe helyezése során. Például egy tartományi rendszergazdai fiók általában rendelkezik elegendő engedéllyel (például: account@domain.com). Ennek a fióknak az egyes virtuális gépek helyi rendszergazdai csoportjának is kell lennie a fürt létrehozásához.
    Tartományi fiók jelszava A korábban említett tartományi felhasználói fiók jelszava.
    Meglévő SQL Service-fiók Az SQL Server szolgáltatást a rendelkezésre állási csoport üzembe helyezése során vezérlő tartományi felhasználói fiók (például: account@domain.com).
    Sql Service-jelszó Az SQL Servert vezérlő tartományi felhasználói fiók által használt jelszó.
    Felhőbeli tanúsító neve Egy új Azure Storage-fiók, amelyet a rendszer létrehoz és használ a felhőbeli tanúsító számára. Ezt a nevet módosíthatja.
    _artifacts hely Ez a mező alapértelmezés szerint be van állítva, és nem módosítható.
    _artifacts Location SaS-jogkivonat Ez a mező szándékosan üres marad.
  3. Ha elfogadja a kikötéseket és feltételeket, jelölje be az I Agree to the terms and conditions (Elfogadom a fenti feltételeket) jelölőnégyzetet. Ezután válassza a Vásárlás lehetőséget a gyorsútmutató-sablon üzembe helyezésének befejezéséhez.

  4. Az üzembe helyezés figyeléséhez válassza ki az üzembe helyezést a felső navigációs sáv Értesítési harang ikonján, vagy lépjen az Azure Portal erőforráscsoportjához. Válassza a Beállítások területen az Üzemelő példányok lehetőséget, és válassza a Microsoft.Template üzembe helyezését.

Megjegyzés:

A sablon üzembe helyezése során megadott hitelesítő adatok csak az üzembe helyezés időtartamára vannak tárolva. Az üzembe helyezés befejezése után a rendszer eltávolítja ezeket a jelszavakat. Ha további SQL Server-virtuális gépeket ad hozzá a fürthöz, a rendszer kérni fogja, hogy adja meg őket újra.

Kvórum konfigurálása

Bár a lemeztanúsítás a legrugalmasabb kvórumlehetőség, egy Azure-beli megosztott lemezre van szükség, amely bizonyos korlátozásokat ró a rendelkezésre állási csoportra. Ezért a felhőbeli tanúsító a rendelkezésre állási csoportokat üzemeltető fürtök ajánlott kvórummegoldása az Azure-beli virtuális gépeken futó SQL Serverhez.

Ha páros számú szavazattal rendelkezik a fürtön, konfigurálja az üzleti igényeinek leginkább megfelelő kvórummegoldást . További információ: Kvórum SQL Server virtuális gépekkel.

Fürt ellenőrzése

Ahhoz, hogy egy feladatátvevő fürtöt a Microsoft támogassa, át kell adnia a fürtérvényesítést. Csatlakozzon a virtuális géphez az előnyben részesített módszerrel, például a Távoli asztali protokoll (RDP) használatával, és ellenőrizze, hogy a fürt megfelel-e az ellenőrzésnek, mielőtt továbblép. Ennek elmulasztása nem támogatja a fürtöt.

A fürtöt a Feladatátvevőfürt-kezelő (FCM) vagy a következő PowerShell-paranccsal ellenőrizheti:

Test-Cluster –Node ("<node1>","<node2>") –Include "Inventory", "Network", "System Configuration"

Rendelkezésre állási csoport létrehozása

Hozza létre manuálisan a rendelkezésre állási csoportot a szokásos módon az SQL Server Management Studio, a PowerShell vagy a Transact-SQL használatával.

Fontos

Jelenleg ne hozzon létre figyelőt, mert a 101-sql-vm-aglistener-setup gyorsútmutató-sablon ezt automatikusan elvégzi a 4. lépésben.

Terheléselosztó létrehozása

Megjegyzés:

A rendelkezésre állási csoport több alhálózaton történő üzembe helyezéséhez nincs szükség terheléselosztóra. Egy alhálózati környezetben az SQL Server 2019 CU8-at és újabb verziót Windows 2016-on és újabb verziókban használó ügyfelek lecserélhetik a hagyományos virtuális hálózat figyelőt (VNN) és az Azure Load Balancert egy elosztott hálózati név (DNN) figyelőre. Ha DNN-t szeretne használni, hagyja ki az Azure Load Balancert a rendelkezésre állási csoporthoz konfiguráló oktatóanyag lépéseit.

Az Always On rendelkezésre állási csoport figyelőjének belső Azure Load Balancer-példányra van szüksége. A belső terheléselosztó egy "lebegő" IP-címet biztosít a rendelkezésre állási csoport figyelőjének, amely lehetővé teszi a gyorsabb feladatátvételt és újracsatlakozást. Ha egy rendelkezésre állási csoport SQL Server virtuális gépei ugyanahhoz a rendelkezésre állási csoporthoz tartoznak, használhat alapszintű terheléselosztót. Ellenkező esetben standard terheléselosztót kell használnia.

Fontos

A belső terheléselosztónak ugyanabban a virtuális hálózaton kell lennie, mint az SQL Server virtuálisgép-példányok.

Csak létre kell hoznia a belső terheléselosztót. A 4. lépésben a 101-sql-vm-aglistener-setup gyorsútmutató-sablon kezeli a konfiguráció többi részét (például a háttérkészletet, az állapotmintát és a terheléselosztási szabályokat).

  1. Az Azure Portalon nyissa meg az SQL Server virtuális gépeket tartalmazó erőforráscsoportot.

  2. Az erőforráscsoportban válassza a Hozzáadás lehetőséget.

  3. Terheléselosztó keresése. A keresési eredmények között válassza a Microsoft által közzétett Load Balancer elemet.

  4. A Load Balancer panelen válassza a Létrehozás lehetőséget.

  5. A Terheléselosztó létrehozása párbeszédpanelen konfigurálja a terheléselosztót az alábbiak szerint:

    Beállítás Value
    Név Adjon meg egy szövegnevet, amely a terheléselosztót jelöli. Írja be például az sqlLB-t.
    Típus Belső: A legtöbb implementáció belső terheléselosztót használ, amely lehetővé teszi, hogy az ugyanazon a virtuális hálózaton belüli alkalmazások csatlakozzanak a rendelkezésre állási csoporthoz.
    Külső: Lehetővé teszi, hogy az alkalmazások nyilvános internetkapcsolaton keresztül csatlakozzanak a rendelkezésre állási csoporthoz.
    Virtuális hálózat Válassza ki azt a virtuális hálózatot, amelyben az SQL Server-példányok találhatók.
    Alhálózat Válassza ki azt az alhálózatot, amelyben az SQL Server-példányok találhatók.
    IP-cím hozzárendelése Statikus
    Privát IP-cím Adjon meg egy elérhető IP-címet az alhálózatról.
    Előfizetés Ha több előfizetéssel rendelkezik, ez a mező jelenhet meg. Válassza ki az erőforráshoz társítani kívánt előfizetést. Általában ugyanaz az előfizetés, mint a rendelkezésre állási csoport összes erőforrása.
    Erőforráscsoport Válassza ki azt az erőforráscsoportot, amelyben az SQL Server-példányok találhatók.
    Hely Válassza ki azt az Azure-helyet, ahol az SQL Server-példányok találhatók.
  6. Válassza a Létrehozás lehetőséget.

Fontos

Az egyes SQL Server virtuális gépek nyilvános IP-erőforrásának standard termékváltozattal kell rendelkeznie, hogy kompatibilis legyen a Standard terheléselosztóval. A virtuális gép nyilvános IP-erőforrásának termékváltozatának meghatározásához nyissa meg az Erőforráscsoportot, válassza ki az SQL Server virtuális gép nyilvános IP-cím erőforrását, és keresse meg az értéket a termékváltozat alatt az Áttekintés panelen.

Figyelő létrehozása

Hozza létre a rendelkezésre állási csoport figyelőjét, és konfigurálja automatikusan a belső terheléselosztót a 101-sql-vm-aglistener-setup rövid útmutatósablon használatával. A sablon kiépíti a Microsoft.SqlVirtualMachine/SqlVirtualMachineGroups/AvailabilityGroupListener erőforrást. A 101-sql-vm-aglistener-setup rövid útmutatósablon az SQL IaaS Agent bővítményen keresztül a következő műveleteket hajtja végre:

  • Létrehoz egy új előtérbeli IP-erőforrást (az üzembe helyezés során megadott IP-cím alapján) a figyelő számára.
  • Konfigurálja a fürt és a belső terheléselosztó hálózati beállításait.
  • Konfigurálja a háttérkészletet a belső terheléselosztóhoz, az állapotadat-mintavételhez és a terheléselosztási szabályokhoz.
  • Létrehozza a rendelkezésre állási csoport figyelőt a megadott IP-címmel és névvel.

Megjegyzés:

A 101-sql-vm-aglistener-setup parancsot csak akkor használhatja, ha a Windows feladatátvevő fürt a 101-sql-vm-ag-setup sablonnal lett létrehozva.

A belső terheléselosztó konfigurálásához és a rendelkezésre állási csoport figyelőjének létrehozásához tegye a következőket:

  1. Nyissa meg az sql-vm-aglistener-setup rövid útmutatósablont, és válassza az Üzembe helyezés az Azure-ban lehetőséget a gyorsútmutató-sablon Azure Portalon való elindításához.

  2. Töltse ki a belső terheléselosztó konfigurálásához és a rendelkezésre állási csoport figyelőjének létrehozásához szükséges mezőket. Az opcionális mezőket üresen hagyhatja.

    Az alábbi táblázat a sablonhoz szükséges értékeket mutatja be:

    Mező Value
    Erőforráscsoport Az az erőforráscsoport, amelyben az SQL Server virtuális gépek és a rendelkezésre állási csoport létezik.
    Meglévő feladatátvevő fürt neve Annak a fürtnek a neve, amelyhez az SQL Server virtuális gépei csatlakoznak.
    Meglévő SQL rendelkezésre állási csoport Annak a rendelkezésre állási csoportnak a neve, amelybe az SQL Server virtuális gépei tartoznak.
    Meglévő virtuálisgép-lista A korábban említett rendelkezésre állási csoport részét képező SQL Server virtuális gépek nevei. A neveket vesszővel és szóközzel kell elválasztania (például: SQLVM1, SQLVM2).
    Hallgató A figyelőhöz hozzárendelni kívánt DNS-név. Ez a sablon alapértelmezés szerint az "aglistener" nevet adja meg, de módosíthatja. A név nem haladhatja meg a 15 karaktert.
    Figyelőport A figyelő által használni kívánt port. Ennek a portnak általában az alapértelmezett 1433-nak kell lennie. Ez a sablon által megadott portszám. Ha azonban az alapértelmezett port módosult, a figyelőportnak ezt az értéket kell használnia.
    Figyelő IP-címe A figyelő által használni kívánt IP-cím. Ez a cím a sablon üzembe helyezése során jön létre, ezért adjon meg egyet, amely még nincs használatban.
    Meglévő alhálózat Az SQL Server virtuális gépek belső alhálózatának neve (például: alapértelmezett). Ezt az értéket úgy határozhatja meg, hogy az Erőforráscsoportra lép, kiválasztja a virtuális hálózatot, kiválasztja az Alhálózatokat a Beállítások panelen, és másolja az értéket a Név területen.
    Meglévő belső Load Balancer A 3. lépésben létrehozott belső terheléselosztó neve.
    Mintavételi port A belső terheléselosztó által használni kívánt mintavételi port. A sablon alapértelmezés szerint 59999-et használ, de ezt az értéket módosíthatja.
  3. Ha elfogadja a kikötéseket és feltételeket, jelölje be az I Agree to the terms and conditions (Elfogadom a fenti feltételeket) jelölőnégyzetet. Válassza a Vásárlás lehetőséget a gyorsútmutató-sablon üzembe helyezésének befejezéséhez.

  4. Az üzembe helyezés figyeléséhez válassza ki az üzembe helyezést a felső navigációs sáv Értesítési harang ikonján, vagy lépjen az Azure Portal erőforráscsoportjához. Válassza a Beállítások területen az Üzemelő példányok lehetőséget, és válassza a Microsoft.Template üzembe helyezését.

Megjegyzés:

Ha az üzembe helyezés félúton meghiúsul, manuálisan kell eltávolítania az újonnan létrehozott figyelőt a PowerShell használatával, mielőtt újra üzembe helyezné a 101-sql-vm-aglistener-setup rövid útmutatósablont.

Figyelő eltávolítása

Ha később el kell távolítania a sablon által konfigurált rendelkezésre állási csoport figyelőt, az SQL IaaS-ügynök bővítményén kell végighaladnia. Mivel a figyelő az SQL IaaS Agent bővítményen keresztül van regisztrálva, az SQL Server Management Studióval való törlés nem elegendő.

A legjobb módszer az, ha az SQL IaaS Agent bővítményen keresztül törli a következő kódrészletet a PowerShellben. Ezzel eltávolítja a rendelkezésre állási csoport figyelőjének metaadatait az SQL IaaS Agent bővítményből. Fizikailag is törli a figyelőt a rendelkezésre állási csoportból.

# Remove the availability group listener
# example: Remove-AzResource -ResourceId '/subscriptions/a1a11a11-1a1a-aa11-aa11-1aa1a11aa11a/resourceGroups/SQLAG-RG/providers/Microsoft.SqlVirtualMachine/SqlVirtualMachineGroups/Cluster/availabilitygrouplisteners/aglistener' -Force
Remove-AzResource -ResourceId '/subscriptions/<SubscriptionID>/resourceGroups/<resource-group-name>/providers/Microsoft.SqlVirtualMachine/SqlVirtualMachineGroups/<cluster-name>/availabilitygrouplisteners/<listener-name>' -Force

Gyakori hibák

Ez a szakasz néhány ismert problémát és azok lehetséges megoldását ismerteti.

Az "<AG-Name>" rendelkezésre állási csoport rendelkezésre állási csoport figyelője már létezik A rendelkezésre állási csoport figyelőjének Azure gyorsútmutató-sablonjában használt kijelölt rendelkezésre állási csoport már tartalmaz figyelőt. Vagy fizikailag a rendelkezésre állási csoportban van, vagy a metaadatai az SQL IaaS-ügynök bővítményében maradnak. Távolítsa el a figyelőt a PowerShell használatával, mielőtt újra üzembe helyezi a 101-sql-vm-aglistener-setup rövid útmutatósablont.

A kapcsolat csak az elsődleges replikából működik Ez a viselkedés valószínűleg egy sikertelen 101-sql-vm-aglistener-setup sablon üzembe helyezéséből származik, amely inkonzisztens állapotban hagyta a belső terheléselosztó konfigurációját. Ellenőrizze, hogy a háttérkészlet felsorolja-e a rendelkezésre állási csoportot, és hogy léteznek-e szabályok az állapotadat-mintavételhez és a terheléselosztási szabályokhoz. Ha valami hiányzik, a belső terheléselosztó konfigurálása inkonzisztens állapot.

A probléma megoldásához távolítsa el a figyelőt a PowerShell használatával, törölje a belső terheléselosztót az Azure Portalon keresztül, és kezdje újra a 3. lépésben.

BadRequest – Csak az SQL virtuálisgép-lista frissíthető Ez a hiba akkor fordulhat elő, ha a 101-sql-vm-aglistener-setup sablont telepíti, ha a figyelőt az SQL Server Management Studióval (SSMS) törölték, de nem törölték az SQL IaaS Agent bővítményből. A figyelő SSMS-en keresztül történő törlése nem távolítja el a figyelő metaadatait az SQL IaaS Agent bővítményből. A figyelőt a PowerShell-lel törölni kell az erőforrás-szolgáltatóból.

A tartományi fiók nem létezik . Ennek a hibának két oka lehet. Vagy a megadott tartományi fiók nem létezik, vagy hiányzik a felhasználónév (UPN) adatai. A 101-sql-vm-ag-setup sablon tartományi fiókot vár az UPN-űrlapon (azaz), de előfordulhat, user@domain.comhogy egyes tartományi fiókok hiányoznak. Ez általában akkor fordul elő, ha egy helyi felhasználót migráltak az első tartományi rendszergazdai fiókként, amikor a kiszolgálót előléptették egy tartományvezérlőre, vagy amikor egy felhasználót a PowerShell-lel hoztak létre.

Ellenőrizze, hogy létezik-e a fiók. Ha igen, akkor lehet, hogy a második helyzet. A probléma megoldásához tegye a következőket:

  1. A tartományvezérlőn nyissa meg az Active Directory – Felhasználók és számítógépek ablakot a Kiszolgálókezelő Eszközök lehetőségéből.

  2. Lépjen a fiókra a bal oldali panel Felhasználók elemének kiválasztásával.

  3. Kattintson a jobb gombbal a fiókra, és válassza a Tulajdonságok lehetőséget.

  4. Válassza a Fiók lapot. Ha a felhasználói bejelentkezési név mező üres, ez okozza a hibát.

    Blank user account indicates missing UPN

  5. Töltse ki a Felhasználó bejelentkezési név mezőjét a felhasználó nevének megfelelően, és válassza ki a megfelelő tartományt a legördülő listából.

  6. A módosítások mentéséhez kattintson az Alkalmaz gombra, majd zárja be a párbeszédpanelt az OK gombra kattintva.

A módosítások elvégzése után próbálja meg még egyszer üzembe helyezni az Azure gyorsútmutató-sablont.

További lépések

További tudnivalókért lásd: