Sítě
Při vytváření a správě clusterů Azure Service Fabric poskytujete síťové připojení pro uzly a aplikace. Mezi síťové prostředky patří rozsahy IP adres, virtuální sítě, nástroje pro vyrovnávání zatížení a skupiny zabezpečení sítě. V tomto článku se seznámíte s osvědčenými postupy pro tyto prostředky.
Projděte si vzory sítí Azure Service Fabric a zjistěte, jak vytvářet clustery, které používají následující funkce: existující virtuální síť nebo podsíť, statickou veřejnou IP adresu, interní nástroj pro vyrovnávání zatížení nebo interní a externí nástroj pro vyrovnávání zatížení.
Sítě infrastruktury
Maximalizace výkonu virtuálního počítače pomocí akcelerovaných síťových služeb deklarací vlastnosti EnableAcceleratedNetworking v šabloně Resource Manageru je následující fragment kódu networkInterfaceConfiguration škálovací sady virtuálních počítačů, které umožňují akcelerované síťové služby:
"networkInterfaceConfigurations": [
{
"name": "[concat(variables('nicName'), '-0')]",
"properties": {
"enableAcceleratedNetworking": true,
"ipConfigurations": [
{
<snip>
}
],
"primary": true
}
}
]
Cluster Service Fabric je možné zřídit v Linuxu s akcelerovanými síťovými službami a Windows s akcelerovanými síťovými službami.
Akcelerované síťové služby se podporují pro skladové položky řady virtuálních počítačů Azure: D/DSv2, D/DSv3, E/ESv3, F/FS, FSv2 a Ms/Mms. Akcelerované síťové služby byly úspěšně testovány pomocí skladové položky Standard_DS8_v3 23. 1. 2019 pro cluster Service Fabric s Windows a použití Standard_DS12_v2 29. 1. 2019 pro cluster Service Fabric s Linuxem. Upozorňujeme, že akcelerované síťové služby vyžadují alespoň 4 virtuální procesory.
Pokud chcete povolit akcelerované síťové služby v existujícím clusteru Service Fabric, musíte nejprve škálovat cluster Service Fabric přidáním škálovací sady virtuálních počítačů, abyste mohli provést následující kroky:
- Zřízení nodeType s povolenými akcelerovanými síťovými službami
- Migrace služeb a jejich stavu do zřízeného nodeType s povolenými akcelerovanými síťovými službami
Aby bylo možné povolit akcelerované síťové služby v existujícím clusteru, vyžaduje horizontální navýšení kapacity infrastruktury, protože povolení akcelerovaných síťových služeb by způsobilo výpadky, protože před povolením akcelerovaných síťových adaptérů musí být všechny virtuální počítače ve skupině dostupnosti zastaveny a uvolněny.
Sítě clusteru
Clustery Service Fabric je možné nasadit do existující virtuální sítě pomocí kroků popsaných v síťových vzorech Service Fabric.
Skupiny zabezpečení sítě (NSG) se doporučují pro typy uzlů, které omezují příchozí a odchozí provoz do svého clusteru. Ujistěte se, že jsou v NSG otevřené potřebné porty.
Primární typ uzlu, který obsahuje systémové služby Service Fabric, nemusí být vystaven prostřednictvím externího nástroje pro vyrovnávání zatížení a může ho zpřístupnit interní nástroj pro vyrovnávání zatížení.
Pro váš cluster použijte statickou veřejnou IP adresu .
Pravidla zabezpečení sítě
Níže popsaná pravidla jsou doporučená minimální pro typickou konfiguraci. Zahrneme také pravidla, která jsou povinná pro provozní cluster, pokud nepovinná pravidla nejsou požadovaná. Umožňuje kompletní uzamčení zabezpečení pomocí partnerských vztahů sítě a konceptů jumpboxu, jako je Azure Bastion. Nepovedlo se otevřít povinné porty nebo schválit IP adresu NEBO adresu URL, aby se zabránilo řádnému provozu clusteru a nemusí se podporovat.
Příchozí
Priorita | Název | Port | Protokol | Zdroj | Cíl | Akce | Povinné |
---|---|---|---|---|---|---|---|
3900 | portál Azure | 19080 | TCP | ServiceFabric | Všechny | Povolit | Ano |
3910 | Adresa API klienta | 19000 | TCP | Internet | Všechny | Povolit | No |
3920 | Rozhraní API klienta SFX + | 19080 | TCP | Internet | Všechny | Povolit | No |
3930 | Cluster | 1025-1027 | TCP | VirtualNetwork | Všechny | Povolit | Ano |
3940 | Prchavý | 49152-65534 | TCP | VirtualNetwork | Všechny | Povolit | Ano |
3950 | Aplikace | 20000-30000 | TCP | VirtualNetwork | Všechny | Povolit | Ano |
3960 | Protokol RDP | 3389 | TCP | Internet | Všechny | Odepřít | No |
3970 | SSH | 22 | TCP | Internet | Všechny | Odepřít | No |
3980 | Vlastní koncový bod | 443 | TCP | Internet | Všechny | Odepřít | No |
Další informace o příchozích pravidlech zabezpečení:
Azure Portal. Tento port používá poskytovatel prostředků Service Fabric k dotazování informací o vašem clusteru k zobrazení na portálu pro správu Azure. Pokud tento port není přístupný z poskytovatele prostředků Service Fabric, zobrazí se na webu Azure Portal zpráva Typu Uzly nenalezena nebo UpgradeServiceNotReachable a váš uzel a seznam aplikací je prázdný. To znamená, že pokud chcete mít přehled o clusteru na portálu pro správu Azure, musí váš nástroj pro vyrovnávání zatížení zveřejnit veřejnou IP adresu a skupina zabezpečení sítě musí povolit příchozí provoz 19080. Tento port se doporučuje pro rozšířené operace správy od poskytovatele prostředků Service Fabric, aby se zajistila vyšší spolehlivost.
Klientské rozhraní API. Koncový bod připojení klienta pro rozhraní API používaná prostředím PowerShell.
SFX + Client API. Tento port používá Service Fabric Explorer k procházení a správě clusteru. Používá se nejběžnějšími rozhraními API, jako je REST/PowerShell (Microsoft.ServiceFabric.PowerShell.Http)/CLI/.NET stejným způsobem.
Cluster. Používá se pro komunikaci mezi uzly.
Dočasný. Service Fabric používá část těchto portů jako aplikační porty a zbývající jsou k dispozici pro operační systém. Mapuje také tuto oblast na existující oblast v operačním systému, takže pro všechny účely můžete použít rozsahy uvedené v ukázce zde. Ujistěte se, že rozdíl mezi počátečním a koncovými porty je alespoň 255. Pokud je tento rozdíl příliš nízký, můžete narazit na konflikty, protože tento rozsah je sdílený s operačním systémem. Pokud chcete zobrazit nakonfigurovaný rozsah dynamických portů, spusťte příkaz netsh int ipv4 show dynamicport tcp. Tyto porty nejsou potřeba pro clustery s Linuxem.
Aplikace. Rozsah portů aplikace by měl být dostatečně velký, aby pokrývala požadavek na koncový bod vašich aplikací. Tento rozsah by měl být exkluzivní z dynamického rozsahu portů na počítači, tj. rozsah dočasnýchports nastavených v konfiguraci. Service Fabric tyto porty používá při každém vyžadování nových portů a postará se o otevření brány firewall pro tyto porty na uzlech.
RDP. Volitelné, pokud se vyžaduje protokol RDP z internetu nebo virtuální sítě pro scénáře jumpboxu.
SSH: Volitelné, pokud se pro scénáře jumpboxu vyžaduje protokol SSH z internetu nebo virtuální sítě.
Vlastní koncový bod Příkladem pro vaši aplikaci je povolení koncového bodu přístupného z internetu.
Poznámka:
U většiny pravidel s internetem jako zdrojem zvažte omezení na známou síť, ideálně definovanou blokem CIDR.
Odchozí
Priorita | Název | Port | Protokol | Zdroj | Cíl | Akce | Povinné |
---|---|---|---|---|---|---|---|
4010 | Poskytovatel prostředků | 443 | TCP | Všechny | ServiceFabric | Povolit | Ano |
4020 | Stažení binárních souborů | 443 | TCP | Všechny | AzureFrontDoor.FirstParty | Povolit | Ano |
Další informace o odchozích pravidlech zabezpečení:
Poskytovatel prostředků. Propojení mezi UpgradeService a poskytovatelem prostředků Service Fabric pro příjem operací správy, jako jsou nasazení ARM nebo povinné operace, jako je výběr počátečního uzlu nebo upgrade typu primárního uzlu.
Stáhněte binární soubory. Služba upgradu používá adresu download.microsoft.com k získání binárních souborů. Tento vztah je potřeba pro instalaci, opětovné imagi a upgrady modulu runtime. Ve scénáři "pouze interního" nástroje pro vyrovnávání zatížení je potřeba přidat další externí nástroj pro vyrovnávání zatížení s pravidlem, které povoluje odchozí provoz pro port 443. Volitelně je možné tento port zablokovat po úspěšném nastavení, ale v tomto případě se balíček upgradu musí distribuovat do uzlů nebo se port musí otevřít po krátkou dobu a potom je potřeba provést ruční upgrade.
Ke sledování problémů s připojením použijte Azure Firewall s protokolem toku NSG a analýzou provozu. Dobrým příkladem spuštění je šablona ARM Service Fabric se skupinou zabezpečení sítě.
Poznámka:
Výchozí pravidla zabezpečení sítě by se neměla přepsat, protože zajišťují komunikaci mezi uzly. Skupina zabezpečení sítě – jak to funguje Dalším příkladem je odchozí připojení na portu 80, aby bylo možné provést kontrolu seznamu odvolaných certifikátů.
Běžné scénáře vyžadující další pravidla
Všechny další scénáře můžou být pokryté značkami služeb Azure.
Azure DevOps
Klasické úlohy PowerShellu v Azure DevOps (značka služby: AzureCloud) potřebují klientský přístup k clusteru, příklady jsou nasazení aplikací nebo provozní úlohy. To se nevztahuje jenom na přístup k šabloně ARM, včetně prostředků aplikace ARM.
Priorita | Název | Port | Protokol | Zdroj | Cíl | Akce | Směr |
---|---|---|---|---|---|---|---|
3915 | Azure DevOps | 19000 | TCP | AzureCloud | Všechny | Povolit | Příchozí |
Aktualizace Windows
Osvědčeným postupem při opravě operačního systému Windows je nahrazení disku s operačním systémem automatickými upgrady imagí operačního systému, není potřeba žádné další pravidlo. Aplikace Orchestrace oprav spravuje upgrady v rámci virtuálních počítačů, kde služba Windows Update používá opravy operačního systému, potřebuje přístup ke službě Download Center (značka služby: AzureUpdateDelivery) ke stažení binárních souborů aktualizací.
Priorita | Název | Port | Protokol | Zdroj | Cíl | Akce | Směr |
---|---|---|---|---|---|---|---|
4015 | Aktualizace pro Windows | 443 | TCP | Všechny | AzureUpdateDelivery | Povolit | Odchozí |
API Management
Integrace služby Azure API Management (značka služby: ApiManagement) potřebuje klientský přístup k dotazování informací o koncových bodech z clusteru.
Priorita | Název | Port | Protokol | Zdroj | Cíl | Akce | Směr |
---|---|---|---|---|---|---|---|
3920 | API Management | 19080 | TCP | ApiManagement | Všechny | Povolit | Příchozí |
Sítě aplikací
Pokud chcete spouštět úlohy kontejnerů Windows, použijte otevřený síťový režim , který usnadňuje komunikaci mezi službami.
Pomocí reverzního proxy serveru, jako je Traefik nebo reverzní proxy server Service Fabric, zpřístupníte běžné aplikační porty, jako je 80 nebo 443.
U kontejnerů Windows hostovaných na počítačích, které nemůžou načítat základní vrstvy z cloudového úložiště Azure, přepište chování cizí vrstvy pomocí příznaku --allow-nondis artifacts v démonu Dockeru.
Další kroky
- Vytvoření clusteru na virtuálních počítačích nebo počítačích s Windows Serverem: Vytvoření clusteru Service Fabric pro Windows Server
- Vytvoření clusteru na virtuálních počítačích nebo počítačích s Linuxem: Vytvoření clusteru s Linuxem
- Informace o možnostech podpory pro Service Fabric