Plánování, nasazení a ověření Azure SQL

Dokončeno

Po výběru úlohy, do které se má migrovat nebo vytvořit v Azure SQL, je potřeba naplánovat nasazení, odpovídajícím způsobem nasadit a ověřit, že nasazení proběhlo úspěšně. V této lekci se naučíte různé metody pro každý krok v procesu.

Plánování předběžného nasazení

Než začnete nasazovat věci v Azure, je důležité porozumět vašim požadavkům a tomu, jak se mapují na nabídky v Azure SQL. Pomocí toho, co jste se naučili v úvodním modulu Azure SQL, vytvořte plán. Ujasněte si tyto otázky:

  • Metoda nasazení: Azure Portal nebo rozhraní příkazového řádku?
  • Možnost nasazení: virtuální počítač, databáze, elastický fond, spravovaná instance nebo fond instancí?
  • Nákupní model (jenom Azure SQL Database): DTU nebo virtuální jádro?
  • Úroveň služby: Pro obecné účely, Pro důležité obchodní informace nebo Hyperscale?
  • Hardware: Gen5 nebo něco nového?
  • Určení velikosti: počet virtuálních jader a maximální velikost dat?

Možná než odpovíte na předchozí otázky, musíte také vybrat úlohu, která se buď migruje do Azure SQL, nebo se narodí v cloudu. Pokud se rozhodnete pro migraci, je k dispozici řada nástrojů a prostředků, které vám usnadní plánování, vyhodnocování, migraci a optimalizaci databází a aplikace. Prostředky najdete na konci tohoto modulu.

Omezení prostředků

Úvodní modul Azure SQL popisuje limity, sazby a možnosti, jako jsou IOPS nebo OLTP v paměti. Volba služby Azure SQL Managed Instance, Azure SQL Database nebo možností v rámci těchto možností má vliv na další omezení prostředků:

  • Memory (Paměť)
  • Maximální velikost protokolu
  • Rychlost transakčního protokolu
  • IOPS dat
  • Velikost databáze tempdb
  • Maximální počet souběžných pracovních procesů
  • Uchování záloh

Omezení služby Azure SQL Managed Instance a Azure SQL Database závisí na vašem výběru nákupního modelu, úrovně služeb a počtu virtuálních jader nebo jednotek DTU pouze ve službě Azure SQL Database.

Azure SQL Managed Instance a SQL Database jsou nabídky modelu PaaS (Platforma jako služba). Omezení těchto možností by nemělo bránit vaší schopnosti plně používat spravovanou službu SQL Serveru.

V rámci instance Azure SQL Database pro obecné účely ovlivňuje tato omezení také vaše volba zřízeného nebo bezserverového výpočetního prostředí. Než začnete nasazovat, zkontrolujte, co je součástí plánu nasazení, abyste měli jistotu, že začínáte s tím, co potřebujete.

Prostředky Azure SQL mají celkové limity prostředků na předplatné a každou oblast. Pokud potřebujete zvýšit limity, můžete požádat o navýšení kvóty na webu Azure Portal.

Nasazení

Po dokončení plánování předběžného nasazení je čas plán zavést do akce. V této fázi nasaďte Azure SQL pomocí webu Azure Portal nebo příkazového řádku, určete konfiguraci sítě a vytvořte počáteční připojení.

Pro Azure SQL Database a Azure SQL Managed Instance je v podstatě šest podoken na webu Azure Portal, která se během nasazení vyplní.

Diagram of the deployment panes for Azure SQL.

Server

Když vytvoříte spravovanou instanci Azure SQL, zadání názvu serveru je stejné jako na SQL Serveru. Pro databáze a elastické fondy se vyžaduje server Azure SQL Database. Server Azure SQL Database je logický server, který funguje jako centrální bod správy pro jednu databázi nebo databázi ve fondu. Obsahuje přihlašovací jména, pravidla brány firewall, pravidla auditování, zásady rozpoznávání hrozeb a skupiny převzetí služeb při selhání. Další informace o těchto prvčtech se dozvíte později.

Tento logický server nezpřístupňuje přístup na úrovni instance ani funkce jako u spravované instance Azure SQL. V případě serverů databází Azure SQL musí být název serveru v rámci služeb Azure jedinečný.

Výpočetní výkon a úložiště

V předchozím modulu tohoto studijního programu jste se seznámili s možnostmi a doporučeními pro výpočetní výkon a úložiště, včetně úrovní služeb, nákupních modelů a generací hardwaru. Během nasazování musíte vybrat požadovanou konfiguraci. Také je nutné určit počet virtuálních jader a maximální velikost dat.

Obecně platí, že pokud migrujete, použijte velikost, která se podobá tomu, co používáte místně. K odhadu počtu virtuálních jader a maximální velikosti dat v závislosti na vaší aktuální úloze můžete použít také nástroje, jako je doporučovací nástroj Data Pomocník s migrací SKU.

Maximální velikost dat nemusí nutně odpovídat velikosti vašich dat. Jedná se o maximální objem datového prostoru, který lze databázi přidělit. Pomůže vám také pochopit přidělení prostoru protokolu, který se škáluje s maximální velikostí dat.

Konfigurace sítě

Síťové možnosti pro databázi Azure SQL a spravovanou instanci Azure SQL se liší. Když nasadíte službu Azure SQL Database, aktuální výchozí hodnota není přístup.

Můžete vybrat veřejný koncový bod nebo privátní koncový bod. Ve cvičení, které následuje po této lekci, použijte veřejný koncový bod a nastavte možnost Povolit službám a prostředkům Azure přístup k tomuto serveru na ano. Jiné služby Azure, například Azure Data Factory nebo Azure Virtual Machines, mají přístup k databázi, pokud ji nakonfigurujete. Pokud se chcete připojit z IP adresy klientského počítače, kterou jste použili k nasazení služby Azure SQL Database, můžete také vybrat Možnost Přidat aktuální IP adresu klienta.

Se službou Azure SQL Managed Instance nasadíte do virtuální sítě Azure a podsítě vyhrazené pro spravované instance, které vám umožní mít zabezpečenou privátní IP adresu. Spravovaná instance Azure SQL může připojit místní síť ke spravované instanci, připojit spravovanou instanci k propojenému serveru nebo jinému místnímu úložišti dat a připojit spravovanou instanci k jiným prostředkům.

Můžete také povolit veřejný koncový bod, abyste se mohli ke spravované instanci připojovat z internetu bez virtuální privátní sítě (VPN). Tento přístup je ve výchozím nastavení zakázaný.

Zdroj dat

Ve službě Azure SQL Database můžete databázi vybrat AdventureWorksLT jako ukázku při nasazení na webu Azure Portal. Ve službě Azure SQL Managed Instance nasadíte nejprve instanci a pak do ní databáze. Při nasazení nemůžete mít ukázkovou databázi, podobně jako u SQL Serveru. Další informace o AdventureWorks ukázkových databázích najdete na GitHubu.

Můžete ale také nasadit prázdnou databázi nebo vytvořit databázi založenou na obnovení z geograficky replikované zálohy.

Kolace databází

Kolace na SQL Serveru a v Azure SQL říkají databázovému stroji, jak nakládat s určitými znaky a jazyky. Kolace poskytuje vašim datům pravidla řazení a vlastnosti rozlišování diakritiky a velkých/malých písmen.

Při vytváření nové databáze SQL nebo spravované instance vezměte v úvahu požadavky národního prostředí na data, se kterými pracujete. Sada kolací ovlivňuje charakteristiky mnoha operací v databázi. V produktu SQL Server box obvykle národní prostředí operačního systému určuje výchozí kolaci.

Ve službě Azure SQL Managed Instance nastavte kolaci serveru po vytvoření instance. Potom už ji nelze změnit. Serverová kolace nastaví výchozí hodnoty pro všechny databáze v dané instanci Azure SQL Managed Instance. Kolace můžete upravovat na úrovni databází a sloupců.

Ve službě Azure SQL Database není nastavení serverové kolace možné. Je nastavena na výchozí a nejběžnější kolaci SQL_Latin1_General_CP1_CI_AS, ale můžete nastavit kolaci databáze. Rozdělení této hodnoty na bloky dat:

  • SQL znamená, že se jedná o kolaci SQL Serveru na rozdíl od kolace systému Windows nebo binární kolace.
  • Latin1_General určuje abecedu nebo jazyk, který se má použít při řazení.
  • CP1 odkazuje na znakovou stránku, kterou kolace využívá.
  • CI znamená, že nerozlišuje malá a velká písmena. CS znamená rozlišovat malá a velká písmena.
  • AS znamená, že je citlivá na zvýraznění. AI znamená nerozlišující zvýraznění.

K dispozici jsou další možnosti, například možnosti pro šířku znaků a kódování UTF-8. Další podrobnosti o tom, co můžete a nemůžete s Azure SQL dělat, najdete v dokumentaci.

Výslovný souhlas s programem Microsoft Defender for Cloud

Když službu Azure SQL Database nasadíte na webu Azure Portal, zobrazí se výzva, jestli chcete povolit Microsoft Defender for Cloud v bezplatné zkušební verzi. Vyberte Zahájit bezplatnou zkušební verzi. Po bezplatné zkušební verzi se defender for Cloud účtuje podle cen úrovně Standard v programu Microsoft Defender for Cloud.

Po povolení získáte funkce související s identifikací a zmírněním potenciálních ohrožení zabezpečení databáze a detekce hrozeb. Další informace o těchto možnostech najdete v dalším modulu zabezpečení tohoto studijního programu.

Ve službě Azure SQL Managed Instance můžete v instanci po nasazení povolit Microsoft Defender for Cloud.

Kontrola vybraných položek

V podokně Kontrola a vytvoření zkontrolujte výběry nasazení a podmínky Azure Marketplace.

Tip

Další možností je také Stáhnout šablonu pro automatizaci. Této metodě se v této lekci nevěnujeme. Pokud vás zajímá, jsou v Microsoft Learn k dispozici další moduly související se šablonami Azure Resource Manageru (šablony ARM).

Hlavní podrobnosti implementace nasazení

I když se Azure postará o nasazení za vás, existuje několik podrobností implementace nasazení, o nichž byste měli vědět. Všechny služby jsou postavené na páteři Azure zvané Azure Service Fabric. Když porozumíte tomu, jak se některé z těchto služeb nasazují a škálují v Azure Service Fabric, pomůže vám pochopit různé chování, které se může zobrazit.

Azure SQL Managed Instance

Azure na pozadí pro azure SQL Managed Instance nasadí pro vaši službu vyhrazený okruh, který se někdy označuje jako virtuální cluster. Tato architektura pomáhá poskytovat podporu zabezpečení a nativní virtuální sítě.

V důsledku použití této architektury ale mohou operace nasazení a škálování trvat déle. Pokud například vertikálně navýšíte nebo snížíte kapacitu, Azure pro vás nasadí nový virtuální cluster a potom ho naplní daty. Můžete si představit, že každá instance běží na jednom virtuálním počítači.

V reakci na dlouhé nasazování vznikly fondy instancí Azure SQL, které mají za úkol tento proces zkracovat. Předem můžete vytvořit fond vyhrazených prostředků. Nasazení do fondu a škálování v něm probíhá v porovnání s tradičním nasazováním mnohem rychleji. Získáte také vyšší hustotu balení, protože můžete nasadit více instancí v rámci jednoho virtuálního počítače.

Azure SQL Database

Služba Azure SQL Database je obsažená v logickém databázovém serveru. Ve většině případů je vyhrazená instance SQL Serveru hostitelem databáze SQL, ale nemusíte se starat o správu instance.

Pro připojování se používá logický databázový server. Umožňuje ale také seskupovat a spravovat určitá oprávnění a konfigurace. V rámci každého logického databázového serveru je logická primární databáze, která může poskytovat diagnostiku na úrovni instance.

Azure SQL Database – úroveň Hyperscale

Úroveň Hyperscale ve službě Azure SQL Database, která není dostupná ve službě Azure SQL Managed Instance, má jedinečnou architekturu pro Azure SQL. Tým Azure SQL mění architekturu Hyperscale pro cloud. Tato architektura zahrnuje vícevrstní systém ukládání do mezipaměti, který může pomoct s rychlostí i škálováním. Škálování a další operace už nesouvisely s velikostí dat a je možné je dokončit v konstantním čase, a to v řádu minut. Díky vzdálenému úložišti je také možné provádět zálohy snímků.

V dalším modulu studijního programu o základech Azure SQL se dozvíte více o architektuře a o tom, jak ovlivňuje výkon a dostupnost. Jednou z aspektů během fáze nasazení je, že po přesunutí databáze na úroveň Hyperscale se nemůžete vrátit na úroveň Pro obecné účely ani Pro důležité obchodní informace.

Zásady správného řízení prostředků

Při zvýšení nebo snížení prostředků na úrovni služby se limity pro dimenze, jako jsou procesor, úložiště a paměť, můžou změnit až na určitou prahovou hodnotu. Přístup k zásadám správného řízení má v Azure SQL více faktorů, ale ke správě využití vašich prostředků v Azure SQL se primárně používají následující tři technologie:

  • Objekty úloh Windows zajišťují, aby bylo možné spravovat a řídit skupinu procesů jako jeden celek. Využívají se k řízení potvrzené virtuální paměti souborů, stropu pracovních sad, spřažení procesorů a stropu rychlostí. Tyto limity můžete zobrazit pomocí zobrazení dynamické správy sys.dm_os_job_object.
  • Správce prostředků je funkce SQL Serveru, která pomáhá uživatelům a v tomto případě Azure řídí prostředky, jako jsou procesor, fyzické vstupně-výstupní operace a paměť. Služba Azure SQL Managed Instance také umožňuje využívat uživatelem definované skupiny a fondy úloh pro Správce prostředků.
  • Správce prostředků souborového serveru je k dispozici ve Windows Serveru. Řídí kvóty adresářů souborů, které se používají ke správě maximální velikosti dat.

Další implementace pro řízení rychlosti transakčních protokolů jsou integrované do databázového stroje pro Azure prostřednictvím zásad správného řízení rychlosti transakčních protokolů. Tento proces omezuje vysokou rychlost ingestování dat pro úlohy, jako jsou BULK INSERT, SELECT INTO a sestavení indexu. Sledují a vynucují se ve zlomcích sekundy. V současné době se škálují lineárně s úrovní služby.

Ověření

Po dokončení nasazení je čas toto nasazení ověřit. V této fázi obvykle zkontrolujete výsledky na webu Azure Portal nebo v Azure CLI, spustíte některé dotazy, které ověří konfiguraci nasazení, a podle potřeby upravíte.

V případě spravované instance Azure SQL a databáze Azure SQL může být vaším prvním krokem kontrola stavu databáze nebo instance na webu Azure Portal nebo v Azure CLI. Dále si můžete projít podrobnosti o nasazení a protokol aktivit, abyste měli jistotu, že nedošlo k žádným selháním nebo aktivním problémům.

V případě služby Azure SQL Managed Instance pak můžete zkontrolovat protokol chyb, což je běžná věc v místním SQL Serveru nebo na virtuálním počítači Azure. Tato funkce není dostupná ve službě Azure SQL Database.

Nakonec je potřeba si ověřit, že je síť správně nakonfigurovaná, získat název serveru a připojit se například k sadě nástrojů SQL Server Management Studio nebo k nástroji Azure Data Studio. Spuštěním následujících dotazů můžete lépe pochopit, co jste nasadili, a ověřit, zda to bylo nasazeno správně:

SELECT @@VERSION
SELECT * FROM sys.databases
SELECT * FROM sys.objects
SELECT * FROM sys.dm_os_schedulers
SELECT * FROM sys.dm_os_sys_info
SELECT * FROM sys.dm_os_process_memory --Not supported in Azure SQL Database
SELECT * FROM sys.dm_exec_requests
SELECT SERVERPROPERTY('EngineEdition')
SELECT * FROM sys.dm_user_db_resource_governance -- Available only in Azure SQL Database and SQL Managed Instance
SELECT * FROM sys.dm_instance_resource_governance -- Available only in Azure SQL Managed Instance
SELECT * FROM sys.dm_os_job_object -- Available only in Azure SQL Database and SQL Managed Instance

Jeden dotaz související s pamětí procesu operačního systému není ve službě Azure SQL Database podporovaný, i když se může zdát, že funguje. Tento dotaz není podporovaný, protože se službou Azure SQL Database se od vás abstrahují některé věci související s operačním systémem, takže se můžete soustředit na databázi.

Poslední tři dotazy jsou k dispozici pouze ve službě Azure SQL Database a azure SQL Managed Instance. Nejprve sys.dm_user_db_resource_governancevrátí nastavení konfigurace a kapacity používané mechanismy zásad správného řízení prostředků v aktuální databázi nebo elastickém fondu. Pomocí druhého z nich (sys.dm_instance_resource_governance) můžete získat podobné informace pro službu Azure SQL Managed Instance. Třetí, sys.dm_os_job_objectvrátí jeden řádek, který popisuje konfiguraci objektu úlohy, který spravuje proces SQL Serveru a statistiku spotřeby prostředků.

Následující dvě cvičení projdou všemi podrobnostmi, které jsou součástí nasazení služby Azure SQL Database nebo Azure SQL Managed Instance. K nasazení služby Azure SQL Database použijte své předplatné Azure. Po nasazení použijete různé ověřovací dotazy a předem spustíte poznámkové bloky SQL v nástroji Azure Data Studio k porovnání SQL Database, SQL Managed Instance a SQL Serveru 2019.

Prověrka znalostí

1.

Ke které z následujících možností se vztahují omezení v závislosti na vámi zvoleném nasazení a úrovni služby?

2.

Pro ověřování nasazení jsou některé nové dotazy specifické pro služby Azure SQL Database a Azure SQL Managed Instance. Které z následujících dotazů jsou k dispozici pouze pro platformu Azure SQL jako službu (PaaS)?