Víceklientská architektura a Azure Private Link
Azure Private Link poskytuje privátní IP adresy pro služby platformy Azure a pro vlastní aplikace hostované na virtuálních počítačích Azure. Službu Private Link můžete použít k povolení privátního připojení z prostředí Azure vašich tenantů. Tenanti můžou také k přístupu k řešení z místních prostředí použít službu Private Link, když jsou připojení prostřednictvím bran virtuální privátní sítě (VPN Gateway) nebo ExpressRoute.
Azure Private Link používá mnoho velkých poskytovatelů SaaS, včetně Snowflake, Confluent Cloud a MongoDB Atlas.
V tomto článku si projdeme, jak nakonfigurovat Službu Private Link pro víceklientové řešení hostované v Azure.
Klíčové aspekty
Překrývající se adresní prostory IP adres
Private Link poskytuje výkonné funkce pro víceklientských řešení, kde mají tenanti přístup ke službě prostřednictvím privátních adresních prostorů.
Různí tenanti často používají stejné nebo překrývající se prostory privátních IP adres. Například vaše víceklientové řešení může použít adresní prostor 10.1.0.0/16
IP adresy . Předpokládejme, že tenant A používá svou vlastní místní síť se stejným adresním prostorem IP adres a shodou okolností tenant B používá stejný adresní prostor IP adres. Nemůžete se přímo připojit nebo propojit své sítě, protože se rozsahy IP adres překrývají.
Když pomocí služby Private Link povolíte připojení z každého tenanta k víceklientské řešení, provoz každého tenanta se automaticky použije překlad síťových adres (NAT). Každý tenant může používat privátní IP adresu ve své vlastní síti a provoz toky do víceklientských řešení transparentně. Private Link provádí překlad adres (NAT) provozu, i když tenanti a poskytovatel služeb používají překrývající se rozsahy IP adres:
Když provoz dorazí do víceklientských řešení, už byl přeložen. To znamená, že provoz vypadá tak, že pochází z vlastního adresního prostoru IP adres virtuální sítě ve víceklientské službě. Private Link poskytuje funkci TCP Proxy Protocol v2 , která umožňuje víceklientové službě znát tenanta, který odeslal požadavek, a dokonce i původní IP adresu ze zdrojové sítě.
Výběr služby
Při použití služby Private Link je důležité zvážit službu, ke které chcete povolit příchozí připojení.
Služba Azure Private Link se používá s virtuálními počítači za standardním nástrojem pro vyrovnávání zatížení.
Službu Private Link můžete použít také s dalšími službami Azure. Mezi tyto služby patří hostitelské platformy aplikací, jako je Aplikace Azure Service. Zahrnují také Aplikace Azure lication Gateway nebo Azure API Management, což jsou síťové brány a brány rozhraní API.
Aplikační platforma, kterou používáte, určuje mnoho aspektů konfigurace služby Private Link a omezení, která platí. Některé služby navíc nepodporují službu Private Link pro příchozí provoz. Projděte si dokumentaci ke službám Azure, které používáte, a seznamte se s jejich podporou služby Private Link.
Omezení
Pečlivě zvažte počet privátních koncových bodů, které můžete vytvořit na základě architektury vašeho řešení. Pokud používáte aplikační platformu paaS (platforma jako služba), je důležité vědět o maximálním počtu privátních koncových bodů, které může jeden prostředek podporovat. Pokud spouštíte virtuální počítače, můžete připojit instanci služby Private Link ke standardnímu nástroji pro vyrovnávání zatížení (SLB). V této konfiguraci můžete obecně připojit vyšší počet privátních koncových bodů, ale stále platí limity. Tato omezení můžou určovat, kolik tenantů se můžete připojit k vašim prostředkům pomocí služby Private Link. Projděte si limity, kvóty a omezení předplatného a služeb Azure a seznamte se s omezeními počtu koncových bodů a připojení.
Některé služby navíc vyžadují speciální konfiguraci sítě pro použití služby Private Link. Pokud například používáte službu Private Link se službou Aplikace Azure lication Gateway, musíte kromě standardní podsítě pro prostředek služby Application Gateway zřídit vyhrazenou podsíť.
Pečlivě otestujte řešení, včetně konfigurace nasazení a diagnostiky, s povolenou konfigurací služby Private Link. Pokud jsou u některých služeb Azure povolené privátní koncové body, je veřejný internetový provoz zablokovaný. Toto chování může vyžadovat změnu procesů nasazení a správy.
Private Link v kombinaci s veřejnými službami
Můžete se rozhodnout, že řešení nasadíte tak, aby bylo přístupné z internetu i prostřednictvím privátních koncových bodů. Někteří z vašich tenantů můžou například vyžadovat privátní připojení, zatímco ostatní spoléhají na připojení k veřejnému internetu. Zvažte celkovou topologii sítě a cesty, které sleduje provoz každého tenanta.
Pokud je vaše řešení založené na virtuálních počítačích, které jsou za standardním nástrojem pro vyrovnávání zatížení, můžete koncový bod zveřejnit prostřednictvím služby Private Link. V tomto případě už je brána firewall webových aplikací a směrování aplikací pravděpodobně součástí vaší úlohy založené na virtuálních počítačích.
Řada služeb Azure PaaS podporuje Private Link pro příchozí připojení, a to i napříč různými předplatnými Azure a tenanty Microsoft Entra. Ke zveřejnění koncového bodu můžete použít možnosti služby Private Link.
Pokud používáte jiné internetové služby, jako je Azure Front Door, je důležité zvážit, jestli podporují službu Private Link pro příchozí provoz. Pokud ne, zvažte, jak váš provoz prochází jednotlivými cestami k vašemu řešení.
Předpokládejme například, že vytvoříte internetovou aplikaci, která běží ve škálovací sadě virtuálních počítačů. Azure Front Door, včetně firewallu webových aplikací (WAF), použijete ke zrychlení zabezpečení a provozu a službu Front Door nakonfigurujete tak, aby odesílala provoz přes privátní koncový bod do back-endové služby (origin). Tenant A se připojí k vašemu řešení pomocí veřejného koncového bodu a tenant B se připojí pomocí privátního koncového bodu. Protože služba Front Door nepodporuje službu Private Link pro příchozí připojení, provoz tenanta B obchází vaši službu Front Door a její WAF:
Modely izolace
Služba Private Link je navržená tak, aby podporovala scénáře, ve kterých je možné používat jednu aplikační vrstvu několika samostatnými klienty, například tenanty. Když uvažujete o izolaci služby Private Link, hlavním problémem je počet prostředků, které je potřeba nasadit pro podporu vašich požadavků. Modely izolace tenanta, které můžete použít pro Službu Private Link, závisí na používané službě.
Modely izolace pro službu Private Link
Pokud používáte službu Private Link s virtuálními počítači za standardním nástrojem pro vyrovnávání zatížení, můžete zvážit několik modelů izolace.
Situace | Sdílená služba Private Link a sdílený nástroj pro vyrovnávání zatížení | Vyhrazená služba Private Link a vyhrazený nástroj pro vyrovnávání zatížení | Vyhrazená služba Private Link a sdílený nástroj pro vyrovnávání zatížení |
---|---|---|---|
Složitost nasazení | Nízká | Střední-vysoká v závislosti na počtu tenantů | Střední-vysoká v závislosti na počtu tenantů |
Provozní složitost | Nízká | Střední-vysoká v závislosti na počtu prostředků | Střední-vysoká v závislosti na počtu prostředků |
Omezení, která je potřeba vzít v úvahu | Počet privátních koncových bodů ve stejné službě Private Link | Počet služeb Private Link na předplatné | Počet služeb Private Link na standardní nástroj pro vyrovnávání zatížení |
Ukázkový scénář | Velké víceklientové řešení se sdílenou aplikační vrstvou | Samostatné razítka nasazení pro každého tenanta | Sdílená aplikační vrstva v jednom razítku s velkým počtem tenantů |
Ve všech třech modelech závisí úroveň izolace a výkonu dat na ostatních prvcích vašeho řešení a nasazení služby Private Link tyto faktory podstatně neovlivní.
Sdílená služba Private Link a sdílený load balancer úrovně Standard
Můžete zvážit nasazení sdílené služby Private Link, která je připojená ke standardnímu nástroji pro vyrovnávání zatížení. Každý z vašich tenantů může vytvořit privátní koncový bod a použít ho k připojení k vašemu řešení.
Jedna instance služby Private Link podporuje velký počet privátních koncových bodů. Pokud limit vyčerpáte, můžete nasadit více instancí služby Private Link, i když existuje také omezení počtu služeb Private Link, které můžete nasadit v jednom nástroji pro vyrovnávání zatížení. Pokud očekáváte, že se k těmto limitům dostanete, zvažte použití přístupu založeného na razítkech nasazení a nasaďte do každého kolku sdílené nástroje pro vyrovnávání zatížení a instance služby Private Link.
Vyhrazená služba Private Link a vyhrazený nástroj pro vyrovnávání zatížení úrovně Standard na tenanta
Pro každého tenanta můžete nasadit vyhrazenou službu Private Link a vyhrazený nástroj pro vyrovnávání zatížení. Tento přístup dává smysl, když máte vyhrazenou sadu virtuálních počítačů pro každého tenanta, například když mají tenanti přísné požadavky na dodržování předpisů.
Vyhrazená služba Private Link na tenanta a sdílený nástroj pro vyrovnávání zatížení úrovně Standard
Pro každého tenanta můžete také nasadit vyhrazené instance služby Private Link se sdíleným nástrojem pro vyrovnávání zatížení úrovně Standard. Tento model ale pravděpodobně neposkytuje velkou výhodu. Vzhledem k tomu, že existuje omezení počtu služeb Private Link, které můžete nasadit na jeden standardní nástroj pro vyrovnávání zatížení, tento model pravděpodobně nebude škálovat nad rámec malého víceklientského řešení.
Častěji můžete nasadit více sdílených služeb Private Link. Tento přístup umožňuje rozšířit počet privátních koncových bodů, které vaše řešení může podporovat v jednom sdíleném nástroji pro vyrovnávání zatížení.
Modely izolace pro služby Azure PaaS s privátními koncovými body
Když nasadíte služby PaaS (Platforma jako služba) Azure a chcete klientům umožnit přístup k těmto službám pomocí privátních koncových bodů, zvažte možnosti a omezení konkrétní služby. Zvažte také, jestli jsou prostředky vrstvy vaší aplikace vyhrazené pro konkrétního tenanta nebo jestli jsou sdílené mezi tenanty.
Pokud pro každého tenanta nasadíte vyhrazenou sadu prostředků aplikační vrstvy, je pravděpodobné, že pro tohoto tenanta můžete nasadit jeden privátní koncový bod, který bude používat pro přístup k prostředkům. Je nepravděpodobné, že vyčerpáte limity služby související se službou Private Link, protože každý tenant má své vlastní prostředky vyhrazené pro ně.
Při sdílení prostředků aplikační vrstvy mezi tenanty můžete zvážit nasazení privátního koncového bodu pro každého tenanta. Existuje omezení počtu privátních koncových bodů, které je možné připojit k jednomu prostředku, a tyto limity se pro každou službu liší.
Funkce služby Azure Private Link, které podporují víceklientské prostředí
Private Link má několik funkcí, které jsou užitečné ve víceklientských prostředích. Konkrétní funkce, které máte k dispozici, ale závisí na používané službě. Základní služba Azure Private Link pro virtuální počítače a nástroje pro vyrovnávání zatížení podporuje všechny funkce popsané níže. Jiné služby s podporou služby Private Link můžou poskytovat pouze podmnožinu těchto funkcí.
Aliasy služeb
Když tenant nakonfiguruje přístup k vaší službě pomocí služby Private Link, musí být schopný vaši službu identifikovat, aby azure mohla navázat připojení.
Služba Private Link a některé další služby Azure kompatibilní se službou Private Link umožňují nakonfigurovat alias , který poskytnete svým tenantům. Pomocí aliasu se vyhněte zveřejnění ID předplatného Azure a názvů skupin prostředků.
Viditelnost služeb
Služba Private Link umožňuje řídit viditelnost vašeho privátního koncového bodu. Pokud znáte jeho alias nebo ID prostředku, můžete všem zákazníkům Azure povolit připojení k vaší službě. Případně můžete omezit přístup jenom na sadu známých zákazníků Azure.
Můžete také zadat sadu předem schválených ID předplatných Azure, která se můžou připojit k vašemu privátnímu koncovému bodu. Pokud se rozhodnete tento přístup použít, zvažte, jak budete shromažďovat a autorizovat ID předplatných. Můžete například ve své aplikaci poskytnout uživatelské rozhraní pro správu, které bude shromažďovat ID předplatného tenanta. Potom můžete dynamicky překonfigurovat instanci služby Private Link tak, aby předem schválila ID předplatného pro připojení.
Schválení připojení
Po vyžádání připojení mezi klientem (například tenantem) a privátním koncovým bodem vyžaduje služba Private Link schválení připojení. Dokud se připojení neschválila, provoz nemůže protékat přes připojení privátního koncového bodu.
Služba Private Link podporuje několik typů toků schválení, mezi které patří:
- Ruční schválení, kde váš tým explicitně schválí každé připojení. Tento přístup je realizovatelný, pokud máte pouze několik tenantů, kteří vaši službu používají prostřednictvím služby Private Link.
- Schválení založené na rozhraní API, kdy služba Private Link považuje připojení za povinné ruční schválení, a vaše aplikace ke schválení připojení používá rozhraní API pro připojení privátního koncového bodu aktualizace, Azure CLI nebo Azure PowerShell. Tento přístup může být užitečný, pokud máte seznam tenantů, kteří mají oprávnění používat privátní koncové body.
- Automatické schválení, kdy samotná služba Private Link udržuje seznam ID předplatného, která by měla mít svá připojení automaticky schválená.
Další informace naleznete v tématu Řízení přístupu ke službě.
Proxy Protokol v2
Když používáte službu Private Link, ve výchozím nastavení má vaše aplikace viditelnost pouze IP adresy, která byla prostřednictvím překladu síťových adres (NAT). Toto chování znamená, že se provoz zdá být tok z vaší vlastní virtuální sítě.
Private Link umožňuje získat přístup k původní IP adrese klienta ve virtuální síti tenanta. Tato funkce používá protokol TCP Proxy Protocol v2.
Předpokládejme například, že správci tenantů potřebují přidat omezení přístupu na základě IP adres, jako je hostitel 10.0.0.10, může přistupovat ke službě, ale hostitel 10.0.0.20 nemůže. Pokud používáte proxy protokol v2, můžete svým tenantům povolit konfiguraci těchto typů omezení přístupu ve vaší aplikaci. Kód aplikace ale musí zkontrolovat původní IP adresu klienta a vynutit omezení.
Související prostředky
- Vysvětlení a ukázky služby Azure Private Link od poskytovatelů (SAAS ISV) a příjemců: Video, které se zabývá funkcí služby Azure Private Link, která umožňuje poskytovatelům víceklientských služeb (jako jsou nezávislí dodavatelé softwaru vytvářející produkty SaaS). Toto řešení umožňuje uživatelům přistupovat ke službě poskytovatele pomocí privátních IP adres z vlastních virtuálních sítí Azure uživatele.
- Protokol TCP proxy v2 se službou Azure Private Link – podrobné informace: Video, které obsahuje podrobné informace o protokolu TCP Proxy Protocol v2, což je pokročilá funkce služby Azure Private Link. Je užitečná ve scénářích s více tenanty a SaaS. Video ukazuje, jak povolit proxy protokol v2 ve službě Azure Private Link. Ukazuje také, jak nakonfigurovat službu NGINX tak, aby četla zdrojovou privátní IP adresu původního klienta, a ne IP adresu překladu adres (NAT) pro přístup ke službě prostřednictvím privátního koncového bodu.
- Použití NGINX Plus k dekódování protokolu TLV
linkIdentifier
proxy ze služby Azure Private Link: Video, které ukazuje, jak použít NGINX Plus k získání protokolu TCP Proxy Protocol v2 TLV ze služby Azure Private Link. Video ukazuje, jak pak extrahovat a dekódovat číselnoulinkIdentifier
, také označovanouLINKID
, připojení privátního koncového bodu. Toto řešení je užitečné pro poskytovatele s více tenanty, kteří potřebují identifikovat konkrétního tenanta příjemce, ze kterého bylo připojení provedeno. - Model privátního připojení SaaS: Ukázkové řešení, které znázorňuje jeden přístup k automatizaci schvalování připojení privátních koncových bodů pomocí spravovaných aplikací Azure.
Přispěvatelé
Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.
Hlavní autoři:
- John Downs | Hlavní softwarový inženýr
- Vladimirskij Vladimirskij | Hlavní zákaznický inženýr, FastTrack pro Azure
Další přispěvatel:
- Sumeet Mittal | Hlavní produktový manažer, Azure Private Link
Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se na LinkedIn.
Další kroky
Projděte si přístupy k sítím pro víceklientské prostředí.