Architektura připojení pro službu Azure SQL Managed Instance
Platí pro:Azure SQL Managed Instance
Tento článek popisuje architekturu připojení ve službě Azure SQL Managed Instance a způsob, jakým komponenty směrují přenosy komunikace pro spravovanou instanci.
Přehled
Ve službě SQL Managed Instance se instance umístí do virtuální sítě Azure a do podsítě vyhrazené pro spravované instance. Nasazení poskytuje:
- Zabezpečená IP adresa místní virtuální sítě (VNet-local).
- Možnost připojit místní síť ke službě SQL Managed Instance.
- Možnost připojení služby SQL Managed Instance k propojenému serveru nebo k jinému místnímu úložišti dat.
- Možnost připojit službu SQL Managed Instance k prostředkům Azure.
Architektura připojení vysoké úrovně
SQL Managed Instance je tvořená komponentami služby hostovanými ve vyhrazené sadě izolovaných virtuálních počítačů, které jsou seskupené podle podobných atributů konfigurace a připojené k virtuálnímu clusteru. Některé komponenty služeb se nasazují uvnitř podsítě virtuální sítě zákazníka, zatímco jiné služby pracují v zabezpečeném síťovém prostředí, které spravuje Microsoft.
Zákaznické aplikace se můžou připojit ke službě SQL Managed Instance a můžou dotazovat a aktualizovat databáze v rámci virtuální sítě, partnerské virtuální sítě nebo sítě připojené pomocí sítě VPN nebo Azure ExpressRoute.
Následující diagram znázorňuje entity, které se připojují ke službě SQL Managed Instance. Zobrazuje také prostředky, které potřebují komunikovat se spravovanou instancí. Proces komunikace v dolní části diagramu představuje zákaznické aplikace a nástroje, které se připojují ke službě SQL Managed Instance jako zdroje dat.
SQL Managed Instance je nabídka platformy jako služby s jedním tenantem, která funguje ve dvou rovinách: v rovině dat a řídicí rovině.
Rovina dat se nasadí uvnitř podsítě zákazníka kvůli kompatibilitě, připojení a izolaci sítě. Rovina dat závisí na službách Azure, jako je Azure Storage, Microsoft Entra ID (dříve Azure Active Directory) pro ověřování a služby shromažďování telemetrie. Uvidíte provoz pocházející z podsítí, které obsahují službu SQL Managed Instance, do těchto služeb.
Řídicí rovina nese funkce údržby nasazení, správy a základní údržby prostřednictvím automatizovaných agentů. Tito agenti mají výhradní přístup k výpočetním prostředkům, které službu provozují. Pro přístup k těmto hostitelům nemůžete použít ssh
ani protokol Remote Desktop Protocol. Veškerá komunikace řídicí roviny je šifrovaná a podepsaná pomocí certifikátů. Pokud chcete zkontrolovat důvěryhodnost komunikujících stran, sql Managed Instance tyto certifikáty neustále ověřuje pomocí seznamů odvolaných certifikátů.
Přehled komunikace
Aplikace se můžou připojit ke službě SQL Managed Instance prostřednictvím tří typů koncových bodů: místního koncového bodu virtuální sítě, veřejného koncového bodua privátních koncových bodů. Tyto koncové body vykazují odlišné vlastnosti a chování vhodné pro různé scénáře.
Místní koncový bod virtuální sítě
Místní koncový bod virtuální sítě je výchozím způsobem připojení ke službě SQL Managed Instance. Jedná se o název domény ve formě <mi_name>.<dns_zone>.database.windows.net
. Tento název domény se přeloží na IP adresu z rozsahu adres podsítě. Místní koncový bod virtuální sítě se dá použít k připojení ke službě SQL Managed Instance ve všech standardních scénářích připojení. Port místního koncového bodu virtuální sítě je 1433.
Lokální koncový bod VNet podporuje typy připojení proxy a přesměrování .
Při připojování k místnímu koncovému bodu virtuální sítě vždy použijte jeho název domény a povolte příchozí provoz na požadovaných portech v celém rozsahu podsítě, protože základní IP adresa se může občas změnit.
Veřejný koncový bod
Veřejný koncový bod je název domény ve formě <mi_name>.public.<dns_zone>.database.windows.net
. Tento název domény se přeloží na veřejnou IP adresu dosažitelnou z internetu. Veřejný koncový bod je vhodný pro situace, kdy je potřeba, aby byla spravovaná instance přístupná přes veřejný internet. To je například nutné při připojování z jiné virtuální sítě, když není možný partnerský vztah nebo nejsou dostupné privátní koncové body. Veřejné koncové body přenášejí pouze klientský provoz a nedají se použít pro replikaci dat mezi dvěma instancemi, například u skupin pro převzetí služeb při selhání nebo propojení pomocí spravované instance. Port veřejného koncového bodu je 3342.
Veřejný koncový bod vždy používá typ připojení proxy bez ohledu na nastavení typu připojení.
Při připojování k veřejnému koncovému bodu vždy používejte jeho název domény a povolte příchozí provoz na portu 3342 v celém rozsahu podsítě, protože základní IP adresa se může občas změnit.
Zjistěte, jak nastavit veřejný koncový bod v části Konfigurace veřejného koncového bodu pro službu Azure SQL Managed Instance.
Privátní koncové body
Privátní koncový bod je volitelná pevná IP adresa v jiné virtuální síti, která provádí provoz do vaší spravované instance SQL. Jedna spravovaná instance Azure SQL může mít ve více virtuálních sítích několik privátních koncových bodů. Privátní koncové body přenášejí jenom klientský provoz a nedají se použít pro replikaci dat mezi dvěma instancemi, jako jsou skupiny převzetí služeb při selhání nebo propojení spravované instance. Port privátního koncového bodu je 1143.
Privátní koncové body vždy používají typ připojení proxy bez ohledu na nastavení typu připojení.
Při připojování k privátnímu koncovému bodu vždy použijte název domény, protože připojení ke službě Azure SQL Managed Instance přes jeho IP adresu se zatím nepodporuje. IP adresa privátního koncového bodu se ale nezmění.
Přečtěte si další informace o privátních koncových bodech a o tom, jak je nakonfigurovat ve službě Azure Private Link pro službu Azure SQL Managed Instance.
Architektura připojení virtuálního clusteru
Následující diagram znázorňuje koncepční rozložení architektury virtuálního clusteru:
Název domény místního koncového bodu virtuální sítě se přeloží na privátní IP adresu interního nástroje pro vyrovnávání zatížení. I když je tento název domény zaregistrovaný ve veřejné zóně DNS (Domain Name System) a je veřejně přeložitelný, jeho IP adresa patří do rozsahu adres podsítě a je ve výchozím nastavení přístupná pouze z její virtuální sítě.
Nástroj pro vyrovnávání zatížení směruje provoz do brány služby SQL Managed Instance. Vzhledem k tomu, že v rámci stejného clusteru může běžet více spravovaných instancí, používá brána název hostitele služby SQL Managed Instance, jak je vidět v připojovací řetězec, aby přesměrovává provoz do správné služby modulu SQL.
Hodnota pro dns-zone
se automaticky vygeneruje při vytváření clusteru. Pokud nově vytvořený cluster hostuje sekundární spravovanou instanci, sdílí ID zóny s primárním clusterem.
Síťové požadavky
Spravovaná instance Azure SQL vyžaduje, aby byly aspekty delegované podsítě nakonfigurované určitými způsoby, které můžete dosáhnout pomocí konfigurace podsítě podporované službou. Kromě toho, co služba vyžaduje, mají uživatelé úplnou kontrolu nad konfigurací sítě podsítě, například:
- Povolení nebo blokování provozu na některých nebo všech portech
- Přidání položek do směrovací tabulky pro směrování provozu přes zařízení virtuální sítě nebo bránu
- Konfigurace vlastního překladu DNS nebo
- Nastavení partnerského vztahu nebo sítě VPN
Aby bylo možné splnit kritéria "Konfigurace kompatibilní sítě" ve smlouvě o úrovni služeb pro online služby Microsoftu, musí virtuální síť a podsíť, ve které je nasazená spravovaná instance SQL, splňovat následující požadavky:
- Vyhrazená podsíť: Spravovaná instance SQL podsítě se dá delegovat jenom do služby SQL Managed Instance. Podsíť nemůže být podsíť brány a v podsíti můžete nasadit jenom prostředky služby SQL Managed Instance.
-
Delegování podsítě: Podsíť služby SQL Managed Instance musí být delegována poskytovateli
Microsoft.Sql/managedInstances
prostředků. - Skupina zabezpečení sítě: Skupina zabezpečení sítě musí být přidružená k podsíti služby SQL Managed Instance. Skupinu zabezpečení sítě můžete použít k řízení přístupu ke koncovému bodu dat služby SQL Managed Instance filtrováním provozu na portu 1433 a portech 11000–11999, když je spravovaná instance SQL nakonfigurovaná pro přesměrování připojení. Služba automaticky zřizuje pravidla a udržuje je aktuální podle potřeby, aby umožňovala nepřerušovaný tok provozu správy.
- Směrovací tabulka: Směrovací tabulka musí být přidružená k podsíti služby SQL Managed Instance. Do této směrovací tabulky můžete přidat položky, například směrování provozu do místního prostředí přes bránu virtuální sítě nebo přidání výchozí trasy 0.0.0.0/0 směrující veškerý provoz přes zařízení virtuální sítě, jako je brána firewall. Spravovaná instance Azure SQL automaticky zřizuje a spravuje požadované položky v směrovací tabulce.
- Dostatečná IP adresa: Podsíť služby SQL Managed Instance musí mít aspoň 32 IP adres. Další informace najdete v tématu Určení velikosti podsítě pro službu SQL Managed Instance. Spravované instance můžete nasadit v existující síti , jakmile ji nakonfigurujete tak, aby splňovaly požadavky na síť pro službu SQL Managed Instance. Jinak vytvořte novou síť a podsíť.
-
Povolené zásadami Azure: Pokud pomocí služby Azure Policy zabráníte vytváření nebo úpravám prostředků v oboru, který zahrnuje podsíť nebo virtuální síť služby SQL Managed Instance, nesmí vaše zásady bránit správě interních prostředků ve službě SQL Managed Instance. Z účinků zamítnutí zásad pro normální provoz je potřeba vyloučit následující prostředky:
- Zdroje typu
Microsoft.Network/serviceEndpointPolicies
, kdy název zdroje začíná na\_e41f87a2\_
- Všechny prostředky typu
Microsoft.Network/networkIntentPolicies
- Všechny prostředky typu
Microsoft.Network/virtualNetworks/subnets/contextualServiceEndpointPolicies
- Zdroje typu
- Zámky ve virtuální síti: Zámky ve virtuální síti vyhrazené podsítě, nadřazené skupině prostředků nebo předplatném můžou občas kolidovat s operacemi správy a údržby služby SQL Managed Instance. Při používání zámků prostředků je potřeba věnovat zvláštní pozornost.
- Přeložitelné veřejné záznamy DNS: Pokud je virtuální síť nakonfigurovaná tak, aby používala vlastní server DNS, musí být server DNS schopný přeložit veřejné záznamy DNS. Použití funkcí, jako je ověřování Microsoft Entra, může vyžadovat překlad plně kvalifikovaných názvů domén (FQDN). Další informace najdete v tématu Překlad privátních názvů DNS ve službě Azure SQL Managed Instance.
-
Požadované záznamy DNS: Spravované instance závisí na tom, že se určité názvy domén správně překládají. Tyto názvy domén nesmí být přepsány ve svých virtuálních sítích, a to buď prostřednictvím privátních zón Azure DNS nebo vlastním serverem DNS. V opačném případě se spravované instance nepodaří nasadit nebo se můžou stát nedostupnými. Následující domény nesmí být přepsány:
windows.net
,database.windows.net
,core.windows.net
,blob.core.windows.net
,table.core.windows.net
,management.core.windows.net
,monitoring.core.windows.net
,queue.core.windows.net
,graph.windows.net
,login.microsoftonline.com
,login.windows.net
,servicebus.windows.net
avault.azure.net
. Mějte ale na paměti, že privátní koncové body můžete vytvářet i ve virtuální síti spravované instance, a to i pro prostředky ve výše uvedených doménách. Privátní koncové body používají mechanismus DNS, který nevyžaduje, aby se místní server DNS stal autoritativním pro celou zónu. - Značka AzurePlatformDNS: Použití značky služby AzurePlatformDNS k blokování překladu DNS platformy může způsobit nedostupnost spravované instance SQL. I když SQL Managed Instance podporuje zákazníkem definované DNS pro rozlišení DNS v rámci instance, existuje závislost na Azure DNS pro operace platformy.
Konfigurace podsítě s podporou služeb
Ke zlepšení zabezpečení služeb, možností správy a dostupnosti používá služba SQL Managed Instance konfiguraci podsítě a zásady záměru sítě v infrastruktuře virtuální sítě Azure ke konfiguraci sítě, přidružených komponent a směrovací tabulky, aby se zajistilo splnění minimálních požadavků na službu SQL Managed Instance.
Automaticky nakonfigurovaná pravidla zabezpečení sítě a směrovací tabulky jsou viditelná pro zákazníka a jsou opatřena poznámkami s jednou z těchto předpon:
-
Microsoft.Sql-managedInstances_UseOnly_mi-
pro povinná pravidla a trasy -
Microsoft.Sql-managedInstances_UseOnly_mi-optional-
pro volitelná pravidla a trasy
Další podrobnosti najdete v konfiguraci podsítě podporované službou.
Další informace o architektuře připojení a provozu správy najdete v tématu Architektura připojení vysoké úrovně.
Omezení sítě
Platí následující omezení funkcí virtuální sítě a provozu:
- Privátní podsítě: Nasazení spravovaných instancí v privátních podsítích (kde je zakázaný výchozí odchozí přístup ) se v současné době nepodporuje.
- Databázová pošta do externích přenosů SMTP na portu 25: Odesílání databázové pošty přes port 25 do externích e-mailových služeb je dostupné jenom pro určité typy odběrů v Microsoft Azure. Instance jiných typů předplatného by měly používat jiný port (například 587) pro kontaktování externích přenosů SMTP. V opačném případě se instance nemusí podařit doručovat databázová pošta. Další informace najdete v tématu Řešení potíží s odchozím připojením SMTP v Azure.
- Partnerský vztah Microsoftu: Povolení partnerského vztahu Microsoftu v okruhech ExpressRoute, které jsou přímo nebo tranzitivně s virtuální sítí, ve které se nachází spravovaná instance SQL, ovlivňuje tok provozu mezi komponentami služby SQL Managed Instance uvnitř virtuální sítě a službami, na kterých závisí. Výsledek problémů s dostupností Očekává se, že nasazení služby SQL Managed Instance do virtuální sítě, která už má povolený partnerský vztah Microsoftu, selžou.
- globální propojení virtuálních sítí: propojení virtuálních sítí připojení napříč oblastmi Azure nefunguje pro instance služby SQL Managed Instance umístěné v podsítích vytvořených před 9. zářím 2020.
- Partnerský vztah virtuálních sítí – konfigurace: Při vytváření partnerského vztahu virtuálních sítí mezi virtuálními sítěmi, které obsahují podsítě se spravovanými instancemi SQL, musí takové podsítě používat různé směrovací tabulky a skupiny zabezpečení sítě (NSG). Opětovné použití směrovací tabulky a skupiny zabezpečení sítě ve dvou nebo více podsítích, které se účastní partnerského vztahu virtuálních sítí, způsobí problémy s připojením ve všech podsítích pomocí těchto směrovacích tabulek nebo skupin zabezpečení sítě a způsobí selhání operací správy spravované instance SQL.
- NAT Gateway: Použití překladu adres (NAT ) služby Azure Virtual Network k řízení odchozího připojení s konkrétní veřejnou IP adresou vykreslí službu SQL Managed Instance nedostupnou. Služba SQL Managed Instance je v současné době omezená na použití nástroje pro vyrovnávání zatížení úrovně Basic, který neposkytuje koexistence příchozích a odchozích toků s překladem adres (NAT) služby Azure Virtual Network.
- IPv6 pro virtuální síť Azure: Předpokládá se, že nasazení služby SQL Managed Instance do dvou virtuálních sítí IPv4/IPv6 selže. Přidružení skupiny zabezpečení sítě nebo směrovací tabulky k trasám definovaným uživatelem definovaným trasám (UDR), které obsahují předpony adres IPv6 k podsíti služby SQL Managed Instance, vykreslí službu SQL Managed Instance nedostupnou. Přidáním předpon adres IPv6 do skupiny zabezpečení sítě nebo trasy definované uživatelem, která už je přidružená k podsíti spravované instance, dojde k nedostupnosti spravované instance SQL. U nasazení služby SQL Managed Instance do podsítě se skupinou zabezpečení sítě a trasou definovanou uživatelem, u kterých se předpokládá selhání předpon IPv6.
- Protokol TLS 1.2 se vynucuje u odchozích připojení: Od ledna 2020 Microsoft vynucuje protokol TLS 1.2 pro provoz uvnitř služby ve všech službách Azure. U služby SQL Managed Instance to vedlo k vynucení protokolu TLS 1.2 u odchozích připojení, která se používají k replikaci a připojení k sql Serveru odkazovaného serveru. Pokud používáte verzi SQL Serveru starší než 2016 se službou SQL Managed Instance, ujistěte se, že používáte aktualizace specifické pro protokol TLS 1.2.
- Interní přechod na Azure DNS: Spravované instance závisí na funkčním překladu DNS ve svých virtuálních sítích. Pokud je virtuální síť spravované instance nakonfigurovaná tak, aby používala vlastní servery DNS a požadavek DNS vydaný pro vlastní servery DNS se během určitého intervalu (1–2 sekundy) nedokončí, spravovaná instance požadavek zopakuje proti azure DNS v této virtuální síti.
Související obsah
- Přehled najdete v tématu Co je Spravovaná instance Azure SQL?
- Další informace naleznete v tématu .
- Architektura virtuálního clusteru
- Konfigurace podsítě s podporou služeb
- Nastavte novou virtuální síť Azure nebo existující virtuální síť Azure, ve které můžete nasadit službu SQL Managed Instance.
- Vypočítat velikost podsítě , do které chcete nasadit službu SQL Managed Instance.
- Zjistěte, jak vytvořit spravovanou instanci:
- Na webu Azure Portal.
- Pomocí PowerShellu.
- Pomocí šablony Azure Resource Manageru.
- Pomocí šablony Azure Resource Manageru s jumpboxem a sadou SQL Server Management Studio.