kontrolní seznam: osvědčené postupy pro SQL Server na virtuálních počítačích Azure

PLATÍ PRO: SQL Server na virtuálním počítači Azure

tento článek poskytuje rychlý kontrolní seznam jako řadu osvědčených postupů a pokynů k optimalizaci výkonu SQL Server v Azure Virtual Machines (virtuálních počítačích).

podrobné informace najdete v dalších článcích v této sérii: kontrolní seznam, velikost VM, Storage, zabezpečení, konfigurace HADR, shromáždění standardních hodnot.

povolte SQL Assessment pro SQL Server na virtuálních počítačích Azure a vaše SQL Server se vyhodnotí SQL na základě známých osvědčených postupů a výsledků na stránce Azure Portal správy virtuálních počítačů .

Přehled

při spouštění SQL Server v Azure Virtual Machines dál používejte stejné možnosti ladění výkonu databáze, které platí pro SQL Server v místních serverových prostředích. Výkon relační databáze ve veřejném cloudu je ale závislý na mnoha faktorech, třeba na velikosti virtuálního počítače a na konfiguraci datových disků.

Mezi optimalizací a optimalizací výkonu je typicky kompromis. tato řada osvědčených postupů pro výkon se zaměřuje na získání nejlepšího výkonu pro SQL Server v Azure Virtual Machines. Pokud je vaše úloha méně náročná, možná nebudete potřebovat při každé doporučené optimalizaci. Při hodnocení těchto doporučení Vezměte v úvahu požadavky na výkon, náklady a vzory úloh.

Velikost virtuálního počítače

následuje rychlý kontrolní seznam osvědčených postupů pro velikost virtuálního počítače pro spuštění SQL Server na virtuálním počítači Azure:

  • Používejte velikosti virtuálních počítačů 4 nebo více vCPU, jako je Standard_M8-4ms, E4ds_v4nebo DS12_v2 nebo vyšší.
  • Úlohy SQL Serveru budou dosahovat nejlepšího výkonu, když použijete virtuální počítač optimalizovaný pro paměť.
  • DSv2 11-15, Edsv4 Series, M-a Mv2- Series nabízejí optimální poměr mezi pamětí a Vcore potřebný pro úlohy OLTP. Oba virtuální počítače řady M nabízejí nejvyšší poměr paměti k vCore, který je potřeba pro důležité úlohy, a je taky ideální pro úlohy datového skladu.
  • Zvažte vyšší poměr paměti k vCore pro důležité úlohy a úlohy datového skladu.
  • použijte image Azure Virtual Machine marketplace jako nastavení SQL Server a možnosti úložiště jsou nakonfigurovány pro optimální výkon SQL Server.
  • Shromážděte charakteristiky výkonu cílového zatížení a použijte je k určení vhodné velikosti virtuálních počítačů pro vaši firmu.
  • použijte nástroj pro doporučení Data Pomocník s migrací SKU k vyhledání správné velikosti virtuálního počítače pro stávající úlohy SQL Server.

Další informace najdete v tématu komplexní osvědčené postupy pro velikost virtuálního počítače.

Storage

následuje rychlý kontrolní seznam osvědčených postupů konfigurace úložiště pro spuštění SQL Server na virtuálním počítači Azure:

  • před volbou typu disku sledujte aplikaci a určete požadavky na šířku pásma a latenci úložiště pro SQL Server dat, protokolů a souborů tempdb.
  • Pokud chcete optimalizovat výkon úložiště, naplánujte si nejvyšší dostupný počet vstupně-výstupních operací a používejte ukládání dat do mezipaměti jako funkci výkonu pro čtení dat, zatímco se vyhnete virtuálnímu počítači a diskům capping/omezování.
  • Data, protokoly a soubory tempdb umístěte na samostatné jednotky.
    • Pro datovou jednotku používejte jenom disky Premium P30 a P40 , abyste zajistili dostupnost podpory mezipaměti.
    • Pro plán jednotky protokolů pro kapacitu a výkon testování oproti nákladům při vyhodnocování P30 disků úrovně Premium P80.
      • Pokud se vyžaduje latence úložiště v milisekundách, použijte pro protokol transakcí Azure Ultra disks .
      • Pro nasazení virtuálních počítačů řady M-Series zvažte použití akcelerátor zápisu přes disky Azure Ultra.
    • po výběru optimální velikosti virtuálního počítače umístěte databázi tempdb na místní dočasný disk SSD (výchozí D:\ ) pro většinu SQL Server úloh.
  • proložení více datových disků Azure pomocí Prostory úložiště pro zvýšení šířky pásma vstupně-výstupních operací v cílovém virtuálním počítači a omezení propustnosti.
  • Nastavte ukládání hostitelů do mezipaměti pro disky datových souborů jen pro čtení.
  • Nastavte mezipaměť hostitele na hodnotu žádné pro soubory protokolu.
    • nepovolujte ukládání do mezipaměti pro čtení a zápis na discích, které obsahují soubory SQL Server.
    • před změnou nastavení mezipaměti disku vždycky zastavte službu SQL Server.
  • Pro úlohy vývoje a testování zvažte použití služby Storage úrovně Standard. Pro produkční úlohy se nedoporučuje používat HDD úrovně Standard/SDD.
  • Diskové shlukování na základě kreditu (P1-P20) by se mělo považovat jenom za úlohy pro vývoj a testování a systémy oddělení.
  • zřídí účet úložiště ve stejné oblasti jako virtuální počítač SQL Server.
  • Zakažte geograficky redundantní úložiště Azure (geografickou replikaci) a použijte LRS (místní redundantní úložiště) v účtu úložiště.
  • Naformátujte datový disk tak, aby používal velikost alokační jednotky 64-KB pro všechny datové soubory umístěné na jiné jednotce než na dočasném D:\ disku (ve výchozím nastavení je 4 KB). SQL Server virtuální počítače nasazené prostřednictvím Azure Marketplace se dodávají s datovými disky formátovanými velikostí alokační jednotky a prokládání pro fond úložiště s nastavením 64 KB.

další informace najdete v tématu věnovaném kompletním osvědčeným postupům Storage.

SQL Server funkce

následuje rychlý kontrolní seznam osvědčených postupů pro SQL Server nastavení konfigurace při spuštění instancí SQL Server na virtuálním počítači Azure v produkčním prostředí:

Funkce Azure

toto je rychlý kontrolní seznam osvědčených postupů pro konkrétní pokyny pro azure při spuštění SQL Server na virtuálním počítači Azure:

Konfigurace HADR

funkce pro vysokou dostupnost a zotavení po havárii (HADR), jako je skupina dostupnosti Always On a instance clusteru s podporou převzetí služeb při selhání , spoléhají na Windows základní technologii clusteru s podporou převzetí služeb při selhání . Projděte si osvědčené postupy pro úpravu nastavení HADR pro lepší podporu cloudového prostředí.

pro Windows cluster zvažte tyto osvědčené postupy:

  • nasaďte SQL Server virtuální počítače do několika podsítí, kdykoli je to možné, abyste se vyhnuli závislosti na Azure Load Balancer nebo názvu distribuované sítě (DNN) ke směrování provozu do vašeho řešení HADR.
  • Změňte cluster na méně agresivní parametry, aby nedocházelo k neočekávaným výpadkům při přechodných chybách sítě nebo údržbě platforem Azure. Další informace najdete v tématu Nastavení prezenčního signálu a prahové hodnoty. pro Windows Server 2012 a novější použijte následující doporučené hodnoty:
    • SameSubnetDelay: 1 sekunda
    • SameSubnetThreshold: 40 prezenční signály
    • CrossSubnetDelay: 1 sekunda
    • CrossSubnetThreshold: 40 prezenční signály
  • Umístěte virtuální počítače do skupiny dostupnosti nebo do různých zón dostupnosti. Další informace najdete v tématu Nastavení dostupnosti virtuálního počítače.
  • Použijte jednu síťovou kartu na jeden uzel clusteru a jednu podsíť.
  • Nakonfigurujte hlasovací funkce kvora clusteru tak, aby používala 3 nebo více lichých hlasů. Nepřiřazujte hlasy do oblastí DR.
  • Pečlivě Sledujte omezení prostředků , aby se předešlo neočekávanému restartování nebo převzetí služeb při selhání kvůli omezením prostředků.
    • ujistěte se, že operační systém, ovladače a SQL Server jsou na nejnovějších sestaveních.
    • optimalizujte výkon pro SQL Server na virtuálních počítačích Azure. Další informace najdete v dalších částech tohoto článku.
    • Snižte nebo rozprostřete zatížení, aby se předešlo omezením prostředků.
    • Přejděte na virtuální počítač nebo disk, který má vyšší omezení, aby nedocházelo k omezením.

pro vaši SQL Server skupinu dostupnosti nebo instanci clusteru s podporou převzetí služeb při selhání zvažte tyto osvědčené postupy:

  • Pokud se setkáváte s častými neočekávanými chybami, postupujte podle osvědčených postupů pro výkon popsaných ve zbývající části tohoto článku.
  • pokud optimalizace výkonu virtuálního počítače SQL Server nevyřeší vaše neočekávané převzetí služeb při selhání, zvažte požadavků monitorování skupiny dostupnosti nebo instance clusteru s podporou převzetí služeb při selhání. Nicméně to nemusí řešit podkladový zdroj problému a může maskovat příznaky tím, že snižuje pravděpodobnost selhání. Je možné, že stále budete muset prozkoumat základní hlavní příčinu a vyřešit ji. pro Windows Server 2012 nebo vyšší použijte následující doporučené hodnoty:
    • Časový limit zapůjčení: pomocí této rovnice můžete vypočítat maximální hodnotu doby zapůjčení:
      Lease timeout < (2 * SameSubnetThreshold * SameSubnetDelay).
      Začněte od 40 sekund. Pokud jste používali odlehčené SameSubnetThreshold a SameSubnetDelay výše Doporučené hodnoty, nepřekračuje 80 sekund hodnotu časového limitu zapůjčení.
    • Maximální počet selhání v zadaném období: tuto hodnotu můžete nastavit na 6.
    • Healthcheck časový limit: tuto hodnotu můžete zpočátku nastavit na 60000, podle potřeby ji upravit.
  • při použití názvu virtuální sítě (VNN) a Azure Load Balancer pro připojení k řešení HADR zadejte MultiSubnetFailover = true v připojovacím řetězci i v případě, že cluster pokrývá jenom jednu podsíť.
    • Pokud klient nástroje nepodporuje, MultiSubnetFailover = True možná budete muset nastavit RegisterAllProvidersIP = 0 a HostRecordTTL = 300 uložit přihlašovací údaje klienta do mezipaměti pro kratší dobu trvání. Nicméně to může způsobit další dotazy na server DNS.
  • Pokud se chcete připojit k řešení HADR pomocí názvu distribuované sítě (DNN), vezměte v úvahu následující skutečnosti:
    • Je nutné použít ovladač klienta, který podporuje MultiSubnetFailover = True , a tento parametr musí být v připojovacím řetězci.
    • Při připojování ke službě DNN Listener pro skupinu dostupnosti použijte jedinečný DNN port v připojovacím řetězci.
  • Použijte připojovací řetězec zrcadlení databáze pro základní skupinu dostupnosti, abyste mohli obejít nutnost vyrovnávání zatížení nebo DNN.
  • Před nasazením řešení s vysokou dostupností ověřte velikost sektoru virtuálních pevných disků, abyste se vyhnuli nezarovnanému v/v operačním systému. Další informace najdete v tématu KB3009974 .

Další informace najdete v tématu komplexní osvědčené postupy pro hadr.

Další kroky

Další informace najdete v dalších článcích v této sérii:

osvědčené postupy zabezpečení najdete v tématu požadavky na zabezpečení pro SQL Server v Azure Virtual Machines.

zvažte povolení SQL Assessment pro SQL Server na virtuálních počítačích Azure.

další informace o SQL Server článcích o virtuálních počítačích najdete v článku SQL Server na Azure Virtual Machines přehled. Pokud máte dotazy k virtuálním počítačům s SQL Serverem, přečtěte si Nejčastější dotazy.