Ellenőrzőlista: Azure-beli virtuális gépeken futó SQL Serverrel kapcsolatos ajánlott eljárások

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

Ez a cikk egy gyors ellenőrzőlistát biztosít ajánlott eljárások és irányelvek sorozataként az AZURE-beli virtuális gépeken futó SQL Server teljesítményének optimalizálásához.

Az átfogó részletekért tekintse meg a sorozat többi cikkét: virtuális gép mérete, Tárolás, Biztonság, HADR-konfiguráció, Alapkonfiguráció összegyűjtése.

Az SQL Server azure-beli virtuális gépeken való engedélyezésének engedélyezése és az SQL Server az ismert ajánlott eljárások alapján lesz kiértékelve, és az eredmények az Azure Portal SQL virtuális gépek felügyeleti oldalán jelennek meg.

Az SQL Server virtuális gépek teljesítményének optimalizálását és a felügyelet automatizálását szolgáló legújabb funkciókkal kapcsolatos videókért tekintse át az alábbi, közzétett adatokkal kapcsolatos videókat:

Áttekintés

Az SQL Server Azure-beli virtuális gépeken való futtatása során továbbra is ugyanazokat az adatbázisteljesítmény-finomhangolási beállításokat használja, amelyek a helyszíni kiszolgálói környezetekben az SQL Serverre vonatkoznak. A nyilvános felhőben lévő relációs adatbázisok teljesítménye azonban számos tényezőtől függ, például a virtuális gép méretétől és az adatlemezek konfigurációjától.

Általában a költségek optimalizálása és a teljesítmény optimalizálása között van kompromisszum. Ez a teljesítménnyel kapcsolatos ajánlott eljárássorozat az AZURE-beli virtuális gépeken futó SQL Server legjobb teljesítményének megszerzésére összpontosít. Ha a számítási feladat kevésbé igényes, előfordulhat, hogy nem minden ajánlott optimalizálást igényel. A javaslatok kiértékelése során vegye figyelembe a teljesítményigényeket, a költségeket és a számítási feladat mintáit.

Virtuális gép mérete

Az ebben a szakaszban található ellenőrzőlista az Azure-beli virtuális gépeken futó SQL Server virtuális gépek méretével kapcsolatos ajánlott eljárásokat ismerteti.

  • Az új Ebdsv5 sorozat a legmagasabb I/O átviteli sebesség-vCore arányt biztosítja az Azure-ban, valamint 8 memória-vCore arányt. Ez a sorozat az Azure-beli virtuális gépeken futó SQL Server számítási feladatok legjobb ár-teljesítményét kínálja. Ezt a sorozatot a legtöbb SQL Server-számítási feladatnál érdemes először figyelembe venni.
  • Használjon 4 vagy több virtuálisgép-méretet, például a E4ds_v5 vagy annál nagyobb virtuálisgép-méretet.
  • Az SQL Server-alapú számítási feladatok lehető legjobb teljesítményének biztosításához használjon memóriaoptimalizált virtuálisgép-méreteket.
  • Az Edsv5 sorozat, az M és az Mv2 sorozat az OLTP számítási feladatokhoz szükséges optimális memória-vCore arányt kínálja.
  • Az M sorozatú virtuális gépek a legmagasabb memória és virtuális mag arányt kínálják az Azure-ban. Fontolja meg ezeket a virtuális gépeket kritikus fontosságú és adattárház-számítási feladatokhoz.
  • Azure Marketplace-rendszerképekkel üzembe helyezheti az SQL Server virtuális gépeket, mivel az SQL Server beállításai és tárolási beállításai az optimális teljesítmény érdekében vannak konfigurálva.
  • Gyűjtse össze a cél számítási feladat teljesítményjellemzőit, és használja őket a megfelelő virtuálisgép-méret meghatározásához a vállalat számára.
  • A Data Migration Assistant és az SKU javaslati eszközei segítségével megtalálhatja a meglévő SQL Server-számítási feladathoz megfelelő virtuálisgép-méretet.
  • Az Azure Data Studio használatával migrálhat az Azure-ba.

Tárolás

Az ebben a szakaszban található ellenőrzőlista az Azure-beli virtuális gépeken futó SQL Server tárolási ajánlott eljárásait ismerteti.

  • A lemeztípus kiválasztása előtt monitorozza az alkalmazást, és határozza meg az SQL Server-adatokra, naplókra és fájlokra vonatkozó tárolási sávszélességet és tempdb késési követelményeket.
  • Ha elérhető, konfigurálja az tempdbadatokat és naplófájlokat a D: helyi SSD-köteten. Az SQL IaaS Agent bővítmény kezeli az újrakiépítéshez szükséges mappát és engedélyeket.
  • A tárolási teljesítmény optimalizálása érdekében tervezze meg a legmagasabb rendelkezésre álló, nem gyorsítótárazott IOPS-t, és használja az adat-gyorsítótárazást teljesítményfunkcióként az adatolvasáshoz, miközben elkerüli a virtuális gépek és lemezek korlátozását.
  • Fontolja meg az Azure Elastic SAN sql serveres számítási feladatokhoz való használatát a jobb költséghatékonyság érdekében a tárolók konszolidálása, a megosztott dinamikus teljesítmény és a nagyobb tárolási teljesítmény növelése érdekében anélkül, hogy frissítenie kellene egy virtuális gépet.
  • Helyezzen el adatokat, naplókat és tempdb fájlokat külön meghajtókon.
    • Az adatmeghajtóhoz használjon prémium P30- és P40- vagy kisebb lemezeket a gyorsítótár-támogatás rendelkezésre állásának biztosításához. Az Ebdsv5 virtuálisgép-sorozat használatakor használja a Prémium SSD v2-t, amely jobb ár-teljesítményt nyújt a magas IOPS- és I/O-teljesítményt igénylő számítási feladatokhoz.
    • A kapacitásra és a teljesítmény és a költségek tesztelésére vonatkozó naplómeghajtó-csomag esetében a Prémium SSD v2 vagy a Prémium SSD P30 - P80 lemezek kiértékelése során
      • Ha ezredmásodperc alatti tárolási késésre van szükség, a tranzakciónaplóhoz prémium SSD v2 vagy Azure ultralemezeket használhat.
      • Az M sorozatú virtuális gépek üzembe helyezéséhez fontolja meg az írásgyorsító használatát az Azure ultralemezek használatával.
    • Helyezze a tempdb-t az ideiglenes lemezre (az ideiglenes lemez rövid élettartamú, és alapértelmezés szerint D:\) az optimális virtuálisgép-méret kiválasztása után a legtöbb olyan SQL Server-számítási feladathoz, amely nem része egy feladatátvevőfürt-példánynak (FCI).
    • FCI-hely tempdb esetén a megosztott tárolóban.
      • Ha az FCI számítási feladatai nagymértékben függenek a tempdb lemez teljesítményétől, akkor a helyi rövid élettartamú SSD-meghajtó (alapértelmezettD:\) speciális konfigurációs helyekénttempdb, amely nem része az FCI-tárolónak. Ehhez a konfigurációhoz egyéni monitorozásra és műveletre van szükség, hogy a helyi rövid élettartamú SSD-meghajtó (alapértelmezett D:\) mindig elérhető legyen, mivel a meghajtó hibái nem aktiválják a műveletet az FCI-ből.
  • Több Azure-adatlemez leválasztása Tárolóhelyek használatával az I/O sávszélességének növelése a cél virtuális gép IOPS- és átviteli sebességkorlátjaiig.
  • Állítsa a gazdagép gyorsítótárazásátírásvédettre adatfájllemezek esetében.
  • A naplófájllemezekhez állítsa a gazdagép gyorsítótárazásátegyikre sem .
    • Ne engedélyezze az írási/olvasási gyorsítótárazást az SQL Server-adatokat vagy naplófájlokat tartalmazó lemezeken.
    • A lemez gyorsítótár-beállításainak módosítása előtt mindig állítsa le az SQL Server szolgáltatást.
  • A fejlesztési és tesztelési feladatokhoz, valamint a hosszú távú biztonsági mentési archiváláshoz fontolja meg a standard tárterület használatát. Éles számítási feladatokhoz nem ajánlott a Standard HDD/SSD használata.
  • A kreditalapú lemezkitörést (P1-P20) csak kisebb fejlesztői/tesztelési számítási feladatokhoz és részlegrendszerekhez kell figyelembe venni.
  • A tárolási teljesítmény optimalizálása érdekében tervezze meg a legmagasabb rendelkezésre állású, nem gyorsítótárazott IOPS-t, és használja az adat-gyorsítótárazást teljesítményfunkcióként az adatolvasásokhoz, miközben elkerüli a virtuális gépek és lemezek korlátozását/szabályozását.
  • Formázza az adatlemezt úgy, hogy 64 KB-os foglalási egységméretet használjon az ideiglenes D:\ meghajtótól eltérő meghajtón elhelyezett összes adatfájlhoz (amelynek alapértelmezett értéke 4 KB). Az Azure Marketplace-en üzembe helyezett SQL Server virtuális gépek a foglalási egység méretével formázott adatlemezekkel és a tárolókészlet 64 KB-ra állított interleave-jával rendelkezik.
  • Konfigurálja a tárfiókot ugyanabban a régióban, mint az SQL Server virtuális gép.
  • Tiltsa le az Azure georedundáns tárolást (georeplikálás), és használja az LRS-t (helyi redundáns tárolás) a tárfiókon.
  • Engedélyezze az SQL ajánlott eljárásainak értékelését a lehetséges teljesítményproblémák azonosításához, és értékelje ki, hogy az SQL Server virtuális gépe az ajánlott eljárások követésére van-e konfigurálva.
  • Tekintse át és figyelje a lemez- és virtuálisgép-korlátokat a Storage IO-kihasználtsági metrikák használatával.
  • Zárja ki az SQL Server-fájlokat a víruskereső szoftverek vizsgálatából, beleértve az adatfájlokat, a naplófájlokat és a biztonsági mentési fájlokat.

Biztonság

Az ebben a szakaszban található ellenőrzőlista az Azure-beli virtuális gépeken futó SQL Server biztonsági ajánlott eljárásait ismerteti.

Az SQL Server funkciói és képességei adatszinten biztosítják a biztonsági módszereket, és így érheti el az infrastruktúra szintjén a felhőalapú és hibrid megoldások részletes védelmét . Emellett az Azure biztonsági intézkedésekkel titkosíthatja bizalmas adatait, megvédheti a virtuális gépeket a vírusoktól és kártevőktől, biztonságossá teheti a hálózati forgalmat, azonosíthatja és észlelheti a fenyegetéseket, megfelelhet a megfelelőségi követelményeknek, és egyetlen módszert kínál a hibrid felhőben található biztonsági igények kezelésére és jelentésére.

  • A Felhőhöz készült Microsoft Defender használatával kiértékelheti és végrehajthatja az adatkörnyezet biztonsági helyzetének javítását. Az olyan képességek, mint az Azure Advanced Threat Protection (ATP) a hibrid számítási feladatokra is felhasználhatók a biztonsági értékelés javítása és a kockázatokra való reagálás képessége érdekében. Az SQL Server virtuális gép regisztrálása az SQL IaaS-ügynök bővítményével Felhőhöz készült Microsoft Defender értékeléseket az Azure Portal SQL virtuálisgép-erőforrásán belül.
  • Az SQL-hez készült Microsoft Defender használatával felderítheti és elháríthatja az adatbázis esetleges biztonsági réseit, valamint észlelheti az SQL Server-példányt és az adatbázisréteget fenyegető rendellenes tevékenységeket.
  • A sebezhetőségi felmérés az SQL-hez készült Microsoft Defender része, amely képes felderíteni és elhárítani az SQL Server-környezet lehetséges kockázatait. Betekintést nyújt a biztonsági állapotba, és végrehajtható lépéseket tartalmaz a biztonsági problémák megoldásához.
  • Az Azure-beli bizalmas virtuális gépek használatával megerősítheti a használatban lévő adatok és a inaktív adatok védelmét a gazdagépek hozzáférése ellen. Az Azure-beli bizalmas virtuális gépek lehetővé teszik a bizalmas adatok biztonságos tárolását a felhőben, és megfelelnek a szigorú megfelelőségi követelményeknek.
  • Ha SQL Server 2022-en dolgozik, fontolja meg a Microsoft Entra-hitelesítés használatát az SQL Server-példányhoz való csatlakozáshoz.
  • Az Azure Advisor elemzi az erőforráskonfigurációt és a használati telemetriát, majd olyan megoldásokat javasol, amelyek segíthetnek az Azure-erőforrások költséghatékonyságának, teljesítményének, magas rendelkezésre állásának és biztonságának javításában. Használja az Azure Advisort a virtuális gép, az erőforráscsoport vagy az előfizetés szintjén az Azure-üzemelő példányok optimalizálása érdekében ajánlott eljárások azonosításához és alkalmazásához.
  • Az Azure Disk Encryptiont akkor használja, ha a megfelelőség és a biztonság megköveteli az adatok végpontok közötti titkosítását a titkosítási kulcsokkal, beleértve a rövid élettartamú (helyileg csatlakoztatott ideiglenes) lemez titkosítását is.
  • A felügyelt lemezek alapértelmezés szerint inaktív állapotban vannak titkosítva az Azure Storage Service Encryption használatával, ahol a titkosítási kulcsok Az Azure-ban tárolt Microsoft által felügyelt kulcsok.
  • A felügyelt lemeztitkosítási beállítások összehasonlításához tekintse át a felügyelt lemeztitkosítás összehasonlító diagramját
  • A felügyeleti portokat le kell zárni a virtuális gépeken – A távoli felügyeleti portok megnyitása magas szintű kockázatot jelent a virtuális gép számára az internetes támadások miatt. Ezek a támadások megpróbálják találgatással kényszeríteni a hitelesítő adatokat, hogy rendszergazdai hozzáférést szerezzenek a géphez.
  • Igény szerinti (JIT) hozzáférés bekapcsolása Azure-beli virtuális gépekhez
  • Használja az Azure Bastiont távoli asztali protokollon (RDP) keresztül.
  • Zárolja a portokat, és csak a szükséges alkalmazásforgalmat engedélyezze az Azure Firewall használatával, amely egy felügyelt tűzfal, mint szolgáltatás (FaaS), amely a kiszolgálói hozzáférést a forrás IP-cím alapján engedélyezi vagy tagadja meg.
  • Hálózati biztonsági csoportok (NSG-k) használatával szűrheti az Azure-erőforrások felé és onnan érkező hálózati forgalmat az Azure-beli virtuális hálózatokon
  • Az alkalmazásbiztonsági csoportok használatával csoportosíthatja a kiszolgálókat hasonló portszűrési követelményekkel, hasonló funkciókkal, például webkiszolgálókkal és adatbázis-kiszolgálókkal.
  • A web- és alkalmazáskiszolgálók az Azure Distributed Denial of Service (DDoS) védelmét használják. A DDoS-támadások a hálózati erőforrások túlterhelésére és kimerítésére szolgálnak, így az alkalmazások lassúak vagy nem válaszolnak. Gyakori, hogy a DDos-támadások célja a felhasználói felületek. Az Azure DDoS Protection megtisztítja a nem kívánt hálózati forgalmat, mielőtt hatással lenne a szolgáltatás rendelkezésre állására
  • A virtuálisgép-bővítmények segítségével elháríthatja a kártevőirtókat, a kívánt állapotot, a fenyegetésészlelést, a megelőzést és a szervizelést az operációs rendszer, a gép és a hálózati szintek fenyegetéseinek kezeléséhez:
    • A Vendégkonfiguráció bővítmény naplózási és konfigurációs műveleteket hajt végre a virtuális gépeken.
    • A Windows és Linux rendszerhez készült Network Watcher Agent virtuálisgép-bővítmény figyeli a hálózati teljesítményt, a diagnosztikai és az elemzési szolgáltatást, amely lehetővé teszi az Azure-hálózatok monitorozását.
    • A WindowsHoz készült Microsoft Antimalware bővítmény segít azonosítani és eltávolítani a vírusokat, kémprogramokat és egyéb rosszindulatú szoftvereket konfigurálható riasztásokkal.
    • Külső bővítmények kiértékelése, például Symantec Endpoint Protection Windows rendszerű virtuális gépekhez (/azure/virtual-machines/extensions/symantec)
  • Az Azure Policy használatával olyan üzleti szabályokat hozhat létre, amelyek alkalmazhatók a környezetére. Az Azure Policies úgy értékeli ki az Azure-erőforrásokat, hogy összehasonlítja ezeknek az erőforrásoknak a tulajdonságait a JSON-formátumban definiált szabályokkal.
  • Az Azure Blueprints segítségével a felhőmérnökök és központi informatikai csoportok meghatározhatnak egy megismételhető Azure-erőforráskészletet, amely megvalósítja és betartja a vállalat szabványait, mintázatait és követelményeit. Az Azure Blueprints eltér az Azure-szabályzatoktól.

AZ SQL Server szolgáltatásai

Az alábbiakban áttekintjük az SQL Server konfigurációs beállításainak ajánlott eljárásait az SQL Server-példányok éles környezetben futó Azure-beli virtuális gépen való futtatásakor:

Azure-szolgáltatások

Az alábbi gyors ellenőrzőlista az Azure-specifikus útmutatáshoz ajánlott eljárásokat ismerteti az SQL Server Azure-beli virtuális gépen való futtatásakor:

HADR-konfiguráció

Az ebben a szakaszban található ellenőrzőlista az Azure-beli virtuális gépeken futó SQL Server hadr ajánlott eljárásait ismerteti.

A magas rendelkezésre állási és vészhelyreállítási (HADR) funkciók, például az Always On rendelkezésre állási csoport és a feladatátvevő fürtpéldány a Windows Server feladatátvételi fürt technológiájára támaszkodnak. Tekintse át a HADR-beállítások módosításának ajánlott eljárásait a felhőkörnyezet jobb támogatása érdekében.

A Windows-fürt esetében vegye figyelembe az alábbi ajánlott eljárásokat:

  • Ha lehetséges, helyezze üzembe az SQL Server virtuális gépeket több alhálózaton, hogy elkerülje az Azure Load Balancer vagy egy elosztott hálózati név (DNN) függőségét, hogy a forgalmat a HADR-megoldáshoz irányíthassa.
  • Módosítsa a fürtöt kevésbé agresszív paraméterekre, hogy elkerülje az átmeneti hálózati hibák vagy az Azure platformkarbantartás váratlan kimaradását. További információkért tekintse meg a szívverési és küszöbérték-beállításokat. Windows Server 2012 és újabb verziók esetén használja a következő ajánlott értékeket:
    • SameSubnetDelay: 1 másodperc
    • SameSubnetThreshold: 40 szívverés
    • CrossSubnetDelay: 1 másodperc
    • CrossSubnetThreshold: 40 szívverés
  • Helyezze a virtuális gépeket egy rendelkezésre állási csoportba vagy különböző rendelkezésre állási zónákba. További információkért tekintse meg a virtuális gépek rendelkezésre állási beállításait.
  • Fürtcsomópontonként egyetlen hálózati adaptert használjon.
  • Konfigurálja a fürt kvórumszavazását úgy, hogy 3 vagy több páratlan számú szavazatot használjon. Ne rendeljen szavazatokat dr. régiókhoz.
  • Gondosan monitorozza az erőforráskorlátokat , hogy elkerülje az erőforrás-korlátozások miatti váratlan újraindításokat vagy feladatátvételeket.
    • Győződjön meg róla, hogy az operációs rendszer, az illesztőprogramok és az SQL Server a legfrissebb verziókkal rendelkezik.
    • Optimalizálja az SQL Server teljesítményét Azure-beli virtuális gépeken. További információért tekintse át a cikk többi szakaszát.
    • Csökkentse vagy elosztsa a számítási feladatokat az erőforráskorlátok elkerülése érdekében.
    • Lépjen egy olyan virtuális gépre vagy lemezre, amelyet a korlátozások elkerülése érdekében a nagyobb korlátok szabnak meg.

Az SQL Server rendelkezésre állási csoportjához vagy feladatátvevő fürtpéldányához vegye figyelembe az alábbi ajánlott eljárásokat:

  • Ha gyakran tapasztal váratlan hibákat, kövesse a cikk további részében ismertetett ajánlott teljesítmény-ajánlott eljárásokat.
  • Ha az SQL Server virtuális gép teljesítményének optimalizálása nem oldja meg a váratlan feladatátvételeket, fontolja meg a rendelkezésre állási csoport vagy a feladatátvevő fürtpéldány figyelését . Ez azonban nem feltétlenül oldja meg a probléma forrását, és a hibák valószínűségének csökkentésével elfedheti a tüneteket. Előfordulhat, hogy továbbra is meg kell vizsgálnia és kezelnie kell a mögöttes kiváltó okot. Windows Server 2012 vagy újabb verziók esetén használja a következő ajánlott értékeket:
    • Bérlet időtúllépése: Ezzel az egyenletel kiszámíthatja a bérlet maximális időtúllépési értékét:
      Lease timeout < (2 * SameSubnetThreshold * SameSubnetDelay).
      Kezdje 40 másodperccel. Ha a korábban javasolt nyugodt SameSubnetThreshold és SameSubnetDelay értékeket használja, a bérlet időtúllépési értéke ne haladja meg a 80 másodpercet.
    • Hibák maximális értéke egy megadott időszakban: Állítsa ezt az értéket 6-ra.
  • Ha a virtuális hálózat nevét (VNN) és egy Azure Load Balancert használ a HADR-megoldáshoz való csatlakozáshoz, akkor is adja meg MultiSubnetFailover = true a kapcsolati sztring, ha a fürt csak egy alhálózatra terjed ki.
    • Ha az ügyfél nem támogatja MultiSubnetFailover = True , előfordulhat, hogy rövidebb ideig kell beállítania RegisterAllProvidersIP = 0 és HostRecordTTL = 300 gyorsítótárazza az ügyfél hitelesítő adatait. Ez azonban további lekérdezéseket okozhat a DNS-kiszolgálónak.
  • Ha az elosztott hálózati névvel (DNN) szeretne csatlakozni a HADR-megoldáshoz, vegye figyelembe a következőket:
    • Olyan ügyfélillesztőt kell használnia, amely támogatjaMultiSubnetFailover = True, és ennek a paraméternek a kapcsolati sztring kell lennie.
    • A rendelkezésre állási csoport DNN-figyelőjéhez való csatlakozáskor használjon egy egyedi DNN-portot a kapcsolati sztring.
  • Egy alapszintű rendelkezésre állási csoport adatbázis-tükrözési kapcsolati sztring használatával megkerülheti a terheléselosztó vagy a DNN szükségességét.
  • A magas rendelkezésre állású megoldás üzembe helyezése előtt ellenőrizze a virtuális merevlemezek szektorméretét, hogy elkerülje a hibás I/OS-t. További információ: KB3009974 .
  • Ha az SQL Server adatbázismotorja, az Always On rendelkezésre állási csoport figyelője vagy a feladatátvevő fürtpéldány állapottesztje úgy van konfigurálva, hogy 49 152 és 65 536 közötti portot használjon (a TCP/IP alapértelmezett dinamikus porttartománya), adjon hozzá kivételt minden porthoz. Ez megakadályozza, hogy más rendszerek dinamikusan hozzárendelje ugyanazt a portot. Az alábbi példa egy kizárást hoz létre az 59999-s porton:
    netsh int ipv4 add excludedportrange tcp startport=59999 numberofports=1 store=persistent

Teljesítménnyel kapcsolatos hibaelhárítás

Az alábbiakban felsoroljuk azokat az erőforrásokat, amelyek segítenek az SQL Server teljesítményproblémáinak további elhárításában.

Fontolja meg az SQL Assessment engedélyezését azure-beli virtuális gépeken futó SQL Serverhez.

Tekintse át az AZURE-beli virtuális gépeken futó SQL Server egyéb virtuálisgép-cikkeit. Ha kérdése van az SQL Servert futtató virtuális gépek használatával kapcsolatban, tekintse meg a gyakori kérdéseket.