Konfigurace nastavení sítě pro spravované clustery Service Fabric
Spravované clustery Service Fabric se vytvářejí s výchozí konfigurací sítě. Tato konfigurace se skládá z Azure Load Balanceru s veřejnou IP adresou, virtuální sítí s jednou přidělenou podsítí a skupinou zabezpečení sítě nakonfigurovanou pro základní funkce clusteru. Existují také volitelná pravidla NSG, například povolení veškerého odchozího provozu ve výchozím nastavení, které má usnadnit konfiguraci zákazníka. Tento dokument vás provede úpravou následujících možností konfigurace sítě a dalších možností:
- Správa pravidel NSG
- Správa přístupu RDP
- Správa konfigurace Load Balanceru
- Povolení veřejné IP adresy
- Povolení protokolu IPv6
- Používání vlastní virtuální sítě
- Používání vlastního nástroje pro vyrovnávání zatížení
- Povolení akcelerovaných síťových služeb
- Konfigurace pomocných podsítí
Správa pravidel NSG
Pokyny k pravidlům NSG
Mějte na paměti tyto aspekty při vytváření nových pravidel NSG pro spravovaný cluster.
- Spravované clustery Service Fabric si pro základní funkce vyhrazuje rozsah priority pravidel NSG 0 až 999. Nemůžete vytvořit vlastní pravidla NSG s hodnotou priority menší než 1 000.
- Spravované clustery Service Fabric si vyhraďte rozsah priority 3001 až 4000 pro vytváření volitelných pravidel NSG. Tato pravidla se přidávají automaticky, aby byly konfigurace rychlé a snadné. Tato pravidla můžete přepsat přidáním vlastních pravidel NSG v rozsahu priority 1000 až 3000.
- Vlastní pravidla NSG by měla mít prioritu v rozsahu 1000 až 3000.
Použití pravidel NSG
Spravované clustery Service Fabric umožňují přiřadit pravidla NSG přímo v rámci prostředku clusteru šablony nasazení.
K přiřazení pravidel NSG použijte vlastnost networkSecurityRules prostředku Microsoft.ServiceFabric/managedclusters (verze 2021-05-01
nebo novější). Příklad:
{
"apiVersion": "2021-05-01",
"type": "Microsoft.ServiceFabric/managedclusters",
"properties": {
"networkSecurityRules": [
{
"name": "AllowCustomers",
"protocol": "*",
"sourcePortRange": "*",
"sourceAddressPrefix": "Internet",
"destinationAddressPrefix": "*",
"destinationPortRange": "33000-33499",
"access": "Allow",
"priority": 2001,
"direction": "Inbound"
},
{
"name": "AllowARM",
"protocol": "*",
"sourcePortRange": "*",
"sourceAddressPrefix": "AzureResourceManager",
"destinationAddressPrefix": "*",
"destinationPortRange": "33500-33699",
"access": "Allow",
"priority": 2002,
"direction": "Inbound"
},
{
"name": "DenyCustomers",
"protocol": "*",
"sourcePortRange": "*",
"sourceAddressPrefix": "Internet",
"destinationAddressPrefix": "*",
"destinationPortRange": "33700-33799",
"access": "Deny",
"priority": 2003,
"direction": "Outbound"
},
{
"name": "DenyRDP",
"protocol": "*",
"sourcePortRange": "*",
"sourceAddressPrefix": "*",
"destinationAddressPrefix": "VirtualNetwork",
"destinationPortRange": "3389",
"access": "Deny",
"priority": 2004,
"direction": "Inbound",
"description": "Override for optional SFMC_AllowRdpPort rule. This is required in tests to avoid Sev2 incident for security policy violation."
}
],
"fabricSettings": [
"..."
]
}
}
Výchozí a volitelná pravidla ClientConnection a HttpGatewayConnection
Pravidlo NSG: SFMC_AllowServiceFabricGatewayToSFRP
Přidá se výchozí pravidlo NSG, které poskytovateli prostředků Service Fabric umožní přístup ke klientovi clientConnectionPort clusteru a httpGatewayConnectionPort. Toto pravidlo umožňuje přístup k portům prostřednictvím značky služby ServiceFabric.
Poznámka:
Toto pravidlo se vždy přidá a nedá se přepsat.
{
"name": "SFMC_AllowServiceFabricGatewayToSFRP",
"type": "Microsoft.Network/networkSecurityGroups/securityRules",
"properties": {
"description": "This is required rule to allow SFRP to connect to the cluster. This rule can't be overridden.",
"protocol": "TCP",
"sourcePortRange": "*",
"sourceAddressPrefix": "ServiceFabric",
"destinationAddressPrefix": "VirtualNetwork",
"access": "Allow",
"priority": 500,
"direction": "Inbound",
"sourcePortRanges": [],
"destinationPortRanges": [
"19000",
"19080"
]
}
}
Pravidlo NSG: SFMC_AllowServiceFabricGatewayPorts
Toto volitelné pravidlo umožňuje zákazníkům přistupovat k SFX, připojovat se ke clusteru pomocí PowerShellu a používat koncové body rozhraní API clusteru Service Fabric z internetu otevřením portů nástroje pro vyrovnávání zatížení pro clientConnectionPort a httpGatewayPort.
Poznámka:
Toto pravidlo se nepřidá, pokud pro stejný port existuje vlastní pravidlo se stejnými hodnotami přístupu, směru a protokolu. Toto pravidlo můžete přepsat vlastními pravidly NSG.
{
"name": "SFMC_AllowServiceFabricGatewayPorts",
"type": "Microsoft.Network/networkSecurityGroups/securityRules",
"properties": {
"description": "Optional rule to open SF cluster gateway ports. To override add a custom NSG rule for gateway ports in priority range 1000-3000.",
"protocol": "tcp",
"sourcePortRange": "*",
"sourceAddressPrefix": "*",
"destinationAddressPrefix": "VirtualNetwork",
"access": "Allow",
"priority": 3001,
"direction": "Inbound",
"sourcePortRanges": [],
"destinationPortRanges": [
"19000",
"19080"
]
}
}
Povolení přístupu k portům RDP z internetu
Spravované clustery Service Fabric ve výchozím nastavení neumožňují příchozí přístup k portům RDP z internetu. Příchozí přístup k portům RDP z internetu můžete otevřít nastavením následující vlastnosti prostředku spravovaného clusteru Service Fabric.
"allowRDPAccess": true
Pokud je vlastnost allowRDPAccess nastavená na true, přidá se do nasazení clusteru následující pravidlo NSG.
{
"name": "SFMC_AllowRdpPort",
"type": "Microsoft.Network/networkSecurityGroups/securityRules",
"properties": {
"description": "Optional rule to open RDP ports.",
"protocol": "tcp",
"sourcePortRange": "*",
"sourceAddressPrefix": "*",
"destinationAddressPrefix": "VirtualNetwork",
"access": "Allow",
"priority": 3002,
"direction": "Inbound",
"sourcePortRanges": [],
"destinationPortRange": "3389"
}
}
Spravované clustery Service Fabric automaticky vytvoří příchozí pravidla překladu adres (NAT) pro každou instanci typu uzlu. Pokud chcete najít mapování portů pro přístup ke konkrétním instancím (uzlům clusteru), postupujte následovně:
Pomocí webu Azure Portal vyhledejte spravovaná clusterová rozhraní vytvořená příchozími pravidly překladu adres (NAT) pro protokol RDP (Remote Desktop Protocol).
Přejděte do skupiny prostředků spravovaného clusteru ve vašem předplatném s názvem s následujícím formátem: SFC_{id-clusteru}
Vyberte nástroj pro vyrovnávání zatížení pro cluster s následujícím formátem: LB-{název_clusteru}.
Na stránce vašeho nástroje pro vyrovnávání zatížení vyberte příchozí pravidla překladu adres (NAT). Zkontrolujte pravidla příchozího překladu adres (NAT), abyste potvrdili příchozí front-endový port na mapování cílových portů pro uzel.
Následující snímek obrazovky ukazuje pravidla příchozího překladu adres (NAT) pro tři různé typy uzlů:
Ve výchozím nastavení je front-endový port v rozsahu 50000 a vyšší a cílový port je port 3389, který se mapuje na službu RDP na cílovém uzlu.
Poznámka:
Pokud používáte funkci BYOLB a chcete použít protokol RDP, musíte pro to nakonfigurovat fond PŘEKLADU adres samostatně. Tím se automaticky nevytvoří žádná pravidla překladu adres (NAT) pro tyto typy uzlů.
Vzdáleně se připojte ke konkrétnímu uzlu (instance škálovací sady). Můžete použít uživatelské jméno a heslo, které jste nastavili při vytváření clusteru nebo jakékoli jiné přihlašovací údaje, které jste nakonfigurovali.
Následující snímek obrazovky ukazuje připojení ke vzdálené ploše pro připojení k uzlu aplikace (instance 0) v clusteru s Windows:
Úprava výchozí konfigurace nástroje pro vyrovnávání zatížení
Porty nástroje pro vyrovnávání zatížení
Spravované clustery Service Fabric vytvoří pravidlo NSG ve výchozím rozsahu priority pro všechny porty nástroje pro vyrovnávání zatížení nakonfigurované v části LoadBalancingRules ve vlastnostech ManagedCluster . Toto pravidlo otevře porty nástroje pro vyrovnávání zatížení pro příchozí provoz z internetu.
Poznámka:
Toto pravidlo se přidá do volitelného rozsahu priority a dá se přepsat přidáním vlastních pravidel NSG.
{
"name": "SFMC_AllowLoadBalancedPorts",
"type": "Microsoft.Network/networkSecurityGroups/securityRules",
"properties": {
"description": "Optional rule to open LB ports",
"protocol": "*",
"sourcePortRange": "*",
"sourceAddressPrefix": "*",
"destinationAddressPrefix": "VirtualNetwork",
"access": "Allow",
"priority": 3003,
"direction": "Inbound",
"sourcePortRanges": [],
"destinationPortRanges": [
"80", "8080", "4343"
]
}
}
Sondy nástroje pro vyrovnávání zatížení
Spravované clustery Service Fabric automaticky vytvoří sondy nástroje pro vyrovnávání zatížení pro porty brány infrastruktury a všechny porty nakonfigurované v loadBalancingRules
části vlastností spravovaného clusteru.
{
"value": [
{
"name": "FabricTcpGateway",
"properties": {
"provisioningState": "Succeeded",
"protocol": "Tcp",
"port": 19000,
"intervalInSeconds": 5,
"numberOfProbes": 2,
"loadBalancingRules": [
{
"id": "<>"
}
]
},
"type": "Microsoft.Network/loadBalancers/probes"
},
{
"name": "FabricHttpGateway",
"properties": {
"provisioningState": "Succeeded",
"protocol": "Tcp",
"port": 19080,
"intervalInSeconds": 5,
"numberOfProbes": 2,
"loadBalancingRules": [
{
"id": "<>"
}
]
},
"type": "Microsoft.Network/loadBalancers/probes"
},
{
"name": "probe1_tcp_8080",
"properties": {
"provisioningState": "Succeeded",
"protocol": "Tcp",
"port": 8080,
"intervalInSeconds": 5,
"numberOfProbes": 2,
"loadBalancingRules": [
{
"id": "<>"
}
]
},
"type": "Microsoft.Network/loadBalancers/probes"
}
]
}
Povolení veřejné IP adresy
Poznámka:
V současné době se podporuje pouze veřejné IPv4.
Uzly spravovaného clusteru Service Fabric nevyžadují pro komunikaci vlastní veřejné IP adresy. Některé scénáře ale můžou vyžadovat, aby uzel měl vlastní veřejnou IP adresu pro komunikaci s internetem a veřejnými službami Azure. Příklad:
- Hraní, kdy konzola potřebuje přímé připojení ke cloudovému virtuálnímu počítači, který provádí zpracování herní fyziky.
- Virtuální počítače, které potřebují provádět externí připojení mezi sebou napříč oblastmi v distribuované databázi.
Další informace o odchozích připojeních v Azure najdete v tématu Principy odchozích připojení.
Veřejnou IP adresu je možné povolit jenom u sekundárních typů uzlů, protože primární typy uzlů jsou vyhrazené pro systémové služby Service Fabric. Postupujte podle kroků v části Používání vlastního nástroje pro vyrovnávání zatížení tohoto článku a vytvořte typ sekundárního uzlu pro spravovaný cluster.
Azure dynamicky přiřazuje dostupné IP adresy.
Poznámka:
Povolení veřejné IP adresy se podporuje jenom prostřednictvím šablony ARM.
Následující kroky popisují povolení veřejné IP adresy na vašem uzlu.
Stáhněte si šablonu ARM.
Pro každý typ uzlu v šabloně přidejte
enableNodePublicIP
do šablony ARM:{ "name": "<secondary_node_type_name>", "apiVersion": "2023-02-01-preview", "properties": { "isPrimary" : false, "vmImageResourceId": "/subscriptions/<your_subscription_id>/resourceGroups/<your_resource_group>/providers/Microsoft.Compute/images/<your_custom_image>", "vmSize": "Standard_D2", "vmInstanceCount": 5, "dataDiskSizeGB": 100, "enableNodePublicIP": true } }
Deloy šablony ARM.
Spuštěním následujícího příkazu PowerShellu ověřte, že máte na uzlech veřejnou IP adresu:
az vmss list-instance-public-ips -g MC_MyResourceGroup2_MyManagedCluster_eastus -n YourVirtualMachineScaleSetName
Výstup příkazu ve formátu JSON.
[ { "etag": "etag_0", "id": "<id_0/name>", "idleTimeoutInMinutes": 15, "ipAddress": "<ip_address_0>", "ipConfiguration": { "id": "<configuration_id_0>", "resourceGroup": "<your_resource_group>" }, "ipTags": [], "name": "<name>", "provisioningState": "Succeeded", "publicIPAddressVersion": "IPv4", "publicIPAllocationMethod": "Static", "resourceGroup": "<your_resource_group>", "resourceGuid": "resource_guid_0", "sku": { "name": "Standard" } }, { "etag": "etag_1", "id": "/<id_1/name>", "idleTimeoutInMinutes": 15, "ipAddress": "<ip_address_1>", "ipConfiguration": { "id": "<configuration_id_1>", "resourceGroup": "<your_resource_group>" }, "ipTags": [], "name": "<name>", "provisioningState": "Succeeded", "publicIPAddressVersion": "IPv4", "publicIPAllocationMethod": "Static", "resourceGroup": "<your_resource_group>", "resourceGuid": "resource_guid_1", "sku": { "name": "Standard" } }, { "etag": "etag_2", "id": "<id_2/name>", "idleTimeoutInMinutes": 15, "ipAddress": "<ip_address_2>", "ipConfiguration": { "id": "<configuration_id_2>", "resourceGroup": "<your_resource_group>" }, "ipTags": [], "name": "<name>", "provisioningState": "Succeeded", "publicIPAddressVersion": "IPv4", "publicIPAllocationMethod": "Static", "resourceGroup": "<your_resource_group>", "resourceGuid": "resource_guid_2", "sku": { "name": "Standard" } } ]
Povolení protokolu IPv6
Spravované clustery ve výchozím nastavení neumožňují protokol IPv6. Tato funkce povolí plnou funkci IPv4/IPv6 s duálním zásobníkem z front-endu Load Balanceru do back-endových prostředků. Všechny změny konfigurace nástroje pro vyrovnávání zatížení spravovaného clusteru nebo pravidel skupiny zabezpečení sítě ovlivní směrování IPv4 i IPv6.
Poznámka:
Toto nastavení není dostupné na portálu a po vytvoření clusteru ho nejde změnit.
- Verze prostředku spravovaného clusteru Service Fabric by měla být verze 2022-01-01 nebo novější.
Nastavte následující vlastnost pro prostředek spravovaného clusteru Service Fabric.
"resources": [ { "apiVersion": "[variables('sfApiVersion')]", "type": "Microsoft.ServiceFabric/managedclusters", ... "properties": { "enableIpv6": true }, } ]
Nasaďte spravovaný cluster s podporou protokolu IPv6. Přizpůsobte si ukázkovou šablonu podle potřeby nebo si vytvořte vlastní. V následujícím příkladu vytvoříme skupinu prostředků s názvem
MyResourceGroup
westus
a nasadíme cluster s povolenou funkcí.New-AzResourceGroup -Name MyResourceGroup -Location westus New-AzResourceGroupDeployment -Name deployment -ResourceGroupName MyResourceGroup -TemplateFile AzureDeploy.json
Po nasazení budou vaše clustery virtuální síť a prostředky se dvěma zásobníky. V důsledku toho bude mít front-endový nástroj pro vyrovnávání zatížení clusterů jedinečnou adresu DNS vytvořenou například
mycluster-ipv6.southcentralus.cloudapp.azure.com
k veřejné adrese IPv6 na azure Load Balanceru a privátních IPv6 adresách na virtuálních počítačích.
Používání vlastní virtuální sítě
Tato funkce umožňuje zákazníkům používat existující virtuální síť zadáním vyhrazené podsítě, do které bude spravovaný cluster nasazovat své prostředky. To může být užitečné, pokud už máte nakonfigurovanou virtuální síť a podsíť se souvisejícími zásadami zabezpečení a směrováním provozu, které chcete použít. Po nasazení do existující virtuální sítě je snadné použít nebo začlenit další síťové funkce, jako jsou Azure ExpressRoute, Azure VPN Gateway, skupina zabezpečení sítě a partnerský vztah virtuálních sítí. Kromě toho můžete v případě potřeby použít vlastní nástroj pro vyrovnávání zatížení Azure.
Poznámka:
Při použití byOVNET se prostředky spravovaného clusteru nasadí do jedné podsítě.
Poznámka:
Toto nastavení nelze po vytvoření clusteru změnit a spravovaný cluster přiřadí skupině zabezpečení sítě k poskytnuté podsíti. Nepřepsat přiřazení skupiny zabezpečení sítě nebo provoz může dojít k přerušení.
Přineste si vlastní virtuální síť:
Získejte službu
Id
z vašeho předplatného pro aplikaci Service Fabric Resource Provider.Login-AzAccount Select-AzSubscription -SubscriptionId <SubId> Get-AzADServicePrincipal -DisplayName "Azure Service Fabric Resource Provider"
Poznámka:
Ujistěte se, že jste ve správném předplatném, ID objektu zabezpečení se změní, pokud je předplatné v jiném tenantovi.
ServicePrincipalNames : {74cb6831-0dbb-4be1-8206-fd4df301cdc2} ApplicationId : 74cb6831-0dbb-4be1-8206-fd4df301cdc2 ObjectType : ServicePrincipal DisplayName : Azure Service Fabric Resource Provider Id : 00000000-0000-0000-0000-000000000000
Poznamenejte si ID předchozího výstupu jako principalId pro použití v pozdějším kroku.
Název definice role ID definice role Přispěvatel sítě 4d97b98b-1d4f-4787-a291-c67834d212e7 Role definition name
Poznamenejte si hodnoty vlastnostíRole definition ID
pro použití v pozdějším kroku.Přidejte přiřazení role do aplikace Poskytovatele prostředků Service Fabric. Přidání přiřazení role je jednorázová akce. Roli přidáte spuštěním následujících příkazů PowerShellu nebo konfigurací šablony Azure Resource Manageru (ARM), jak je podrobně popsáno níže.
V následujících krocích začneme s existující virtuální sítí s názvem ExistingRG-vnet ve skupině prostředků ExistingRG. Podsíť má výchozí název.
Získejte požadované informace z existující virtuální sítě.
Login-AzAccount Select-AzSubscription -SubscriptionId <SubId> Get-AzVirtualNetwork -Name ExistingRG-vnet -ResourceGroupName ExistingRG
Poznamenejte si následující název podsítě a
Id
hodnotu vlastnosti vrácenou z oddíluSubnets
v odpovědi, kterou použijete v pozdějších krocích.Subnets:[ { ... "Id": "/subscriptions/<subscriptionId>/resourceGroups/Existing-RG/providers/Microsoft.Network/virtualNetworks/ExistingRG-vnet/subnets/default" }]
Spusťte následující příkaz PowerShellu s použitím ID objektu zabezpečení, názvu definice role z kroku 2 a oboru
Id
přiřazení získaného výše:New-AzRoleAssignment -PrincipalId 00000000-0000-0000-0000-000000000000 -RoleDefinitionName "Network Contributor" -Scope "/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/virtualNetworks/<vnetName>/subnets/<subnetName>"
Nebo můžete přiřazení role přidat pomocí šablony Azure Resource Manageru (ARM) nakonfigurované se správnými hodnotami pro
principalId
,roleDefinitionId
,vnetName
asubnetName
:"type": "Microsoft.Authorization/roleAssignments", "apiVersion": "2020-04-01-preview", "name": "[parameters('VNetRoleAssignmentID')]", "scope": "[concat('Microsoft.Network/virtualNetworks/', parameters('vnetName'), '/subnets/', parameters('subnetName'))]", "dependsOn": [ "[concat('Microsoft.Network/virtualNetworks/', parameters('vnetName'))]" ], "properties": { "roleDefinitionId": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Authorization/roleDefinitions/4d97b98b-1d4f-4787-a291-c67834d212e7')]", "principalId": "00000000-0000-0000-0000-000000000000" }
Poznámka:
VNetRoleAssignmentID musí být identifikátor GUID. Pokud šablonu nasadíte znovu, včetně tohoto přiřazení role, ujistěte se, že identifikátor GUID je stejný jako identifikátor GUID, který byl původně použit. Doporučujeme spustit tento izolovaný nebo odebrat tento prostředek ze šablony clusteru po nasazení, protože je potřeba ho vytvořit jen jednou.
Tady je úplná ukázková šablona Azure Resource Manageru (ARM), která vytvoří podsíť virtuální sítě a provede přiřazení rolí, které můžete použít pro tento krok.
subnetId
Po nastavení role nakonfigurujte vlastnost pro nasazení clusteru, jak je znázorněno níže:
Verze prostředku spravovaného clusteru Service Fabric by měla být verze 2022-01-01 nebo novější.
"resources": [ { "apiVersion": "[variables('sfApiVersion')]", "type": "Microsoft.ServiceFabric/managedclusters", ... }, "properties": { "subnetId": "subnetId", ... } ]
Podívejte se na ukázkovou šablonu přineste si vlastní cluster virtuální sítě nebo si přizpůsobte vlastní.
Nasaďte nakonfigurovanou šablonu Azure Resource Manageru (ARM) spravovaného clusteru.
V následujícím příkladu vytvoříme skupinu prostředků s názvem
MyResourceGroup
westus
a nasadíme cluster s povolenou funkcí.New-AzResourceGroup -Name MyResourceGroup -Location westus New-AzResourceGroupDeployment -Name deployment -ResourceGroupName MyResourceGroup -TemplateFile AzureDeploy.json
Při použití vlastní podsítě virtuální sítě se veřejný koncový bod stále vytvoří a spravuje poskytovatelem prostředků, ale v nakonfigurované podsíti. Tato funkce neumožňuje zadat veřejnou IP adresu nebo znovu použít statickou IP adresu v Azure Load Balanceru. S touto funkcí nebo sama o sobě můžete využít vlastní službu Azure Load Balancer , pokud potřebujete tyto nebo jiné scénáře nástroje pro vyrovnávání zatížení, které nejsou nativně podporované.
Používání vlastního Nástroje pro vyrovnávání zatížení Azure
Spravované clustery vytvářejí veřejný Load Balancer úrovně Azure Standard a plně kvalifikovaný název domény se statickou veřejnou IP adresou pro primární i sekundární typy uzlů. Použití vlastního nástroje pro vyrovnávání zatížení umožňuje použít existující Azure Load Balancer pro typy sekundárních uzlů pro příchozí i odchozí provoz. Při používání vlastního Nástroje pro vyrovnávání zatížení Azure můžete:
- Použití předem nakonfigurované statické IP adresy Load Balanceru pro privátní nebo veřejný provoz
- Mapování Load Balanceru na konkrétní typ uzlu
- Konfigurace pravidel skupin zabezpečení sítě na typ uzlu, protože každý typ uzlu je nasazený ve vlastní podsíti
- Udržování existujících zásad a ovládacích prvků, které můžete mít na místě
- Konfigurace interního nástroje pro vyrovnávání zatížení a použití výchozího nástroje pro vyrovnávání zatížení pro externí provoz
Poznámka:
Při použití byOVNET se spravované prostředky clusteru nasadí do jedné podsítě s jednou skupinou zabezpečení sítě bez ohledu na další nakonfigurované nástroje pro vyrovnávání zatížení.
Poznámka:
Po nasazení typu uzlu nemůžete přepnout z výchozího nástroje pro vyrovnávání zatížení na vlastní, ale pokud je tato možnost povolená, můžete upravit vlastní konfiguraci nástroje pro vyrovnávání zatížení.
Požadavky na funkce
- Podporují se typy SKU Basic a Standard Azure Load Balancer.
- V Azure Load Balanceru musíte mít nakonfigurované back-endové fondy a fondy NAT.
- Odchozí připojení musíte povolit buď pomocí poskytnutého veřejného nástroje pro vyrovnávání zatížení, nebo výchozího veřejného nástroje pro vyrovnávání zatížení.
Tady je několik ukázkových scénářů, pro které můžou zákazníci použít následující:
V tomto příkladu chce zákazník směrovat provoz přes existující azure Load Balancer nakonfigurovaný s existující statickou IP adresou na dva typy uzlů.
V tomto příkladu chce zákazník směrovat provoz přes stávající nástroje Azure Load Balancers, aby jim pomohl spravovat tok provozu do svých aplikací nezávisle na tom, které žijí na samostatných typech uzlů. Při nastavování podobného příkladu bude každý typ uzlu za vlastní spravovanou skupinou zabezpečení sítě.
V tomto příkladu chce zákazník směrovat provoz přes stávající interní nástroje pro vyrovnávání zatížení Azure. To jim pomáhá spravovat tok provozu do svých aplikací nezávisle na tom, které žijí na samostatných typech uzlů. Když nastavíte podobný příklad, každý typ uzlu bude za vlastní spravovanou skupinou zabezpečení sítě a použije výchozí nástroj pro vyrovnávání zatížení pro externí provoz.
Konfigurace s vlastním nástrojem pro vyrovnávání zatížení:
Získejte službu
Id
z vašeho předplatného pro aplikaci Service Fabric Resource Provider:Login-AzAccount Select-AzSubscription -SubscriptionId <SubId> Get-AzADServicePrincipal -DisplayName "Azure Service Fabric Resource Provider"
Poznámka:
Ujistěte se, že jste ve správném předplatném, ID objektu zabezpečení se změní, pokud je předplatné v jiném tenantovi.
ServicePrincipalNames : {74cb6831-0dbb-4be1-8206-fd4df301cdc2} ApplicationId : 74cb6831-0dbb-4be1-8206-fd4df301cdc2 ObjectType : ServicePrincipal DisplayName : Azure Service Fabric Resource Provider Id : 00000000-0000-0000-0000-000000000000
Poznamenejte si ID předchozího výstupu jako principalId pro použití v pozdějším kroku.
Název definice role ID definice role Přispěvatel sítě 4d97b98b-1d4f-4787-a291-c67834d212e7 Role definition name
Poznamenejte si hodnoty vlastnostíRole definition ID
pro použití v pozdějším kroku.Přidejte přiřazení role do aplikace Poskytovatele prostředků Service Fabric. Přidání přiřazení role je jednorázová akce. Roli přidáte spuštěním následujících příkazů PowerShellu nebo konfigurací šablony Azure Resource Manageru (ARM), jak je podrobně popsáno níže.
V následujících krocích začneme s existujícím nástrojem pro vyrovnávání zatížení s názvem Existing-LoadBalancer1 ve skupině prostředků Existing-RG.
Získejte požadované
Id
informace o vlastnosti z existujícího Nástroje pro vyrovnávání zatížení Azure.Login-AzAccount Select-AzSubscription -SubscriptionId <SubId> Get-AzLoadBalancer -Name "Existing-LoadBalancer1" -ResourceGroupName "Existing-RG"
Všimněte si následujících
Id
možností, které použijete v dalším kroku:{ ... "Id": "/subscriptions/<subscriptionId>/resourceGroups/Existing-RG/providers/Microsoft.Network/loadBalancers/Existing-LoadBalancer1" }
Spusťte následující příkaz PowerShellu s použitím ID objektu zabezpečení, názvu definice role z kroku 2 a oboru
Id
přiřazení, který jste právě získali:New-AzRoleAssignment -PrincipalId 00000000-0000-0000-0000-000000000000 -RoleDefinitionName "Network Contributor" -Scope "/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/loadBalancers/<LoadBalancerName>"
Nebo můžete přiřazení role přidat pomocí šablony Azure Resource Manageru (ARM) nakonfigurované se správnými hodnotami pro
principalId
:roleDefinitionId
"type": "Microsoft.Authorization/roleAssignments", "apiVersion": "2020-04-01-preview", "name": "[parameters('loadBalancerRoleAssignmentID')]", "scope": "[concat('Microsoft.Network/loadBalancers/', variables('lbName'))]", "dependsOn": [ "[concat('Microsoft.Network/loadBalancers/', variables('lbName'))]" ], "properties": { "roleDefinitionId": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Authorization/roleDefinitions/4d97b98b-1d4f-4787-a291-c67834d212e7')]", "principalId": "00000000-0000-0000-0000-000000000000" }
Poznámka:
loadBalancerRoleAssignmentID musí být identifikátor GUID. Pokud šablonu nasadíte znovu, včetně tohoto přiřazení role, ujistěte se, že identifikátor GUID je stejný jako identifikátor GUID, který byl původně použit. Doporučujeme spustit tento izolovaný nebo odebrat tento prostředek ze šablony clusteru po nasazení, protože je potřeba ho vytvořit jen jednou.
Podívejte se na tuto ukázkovou šablonu pro vytvoření veřejného nástroje pro vyrovnávání zatížení a přiřazení role.
Nakonfigurujte požadované odchozí připojení pro typ uzlu. Musíte nakonfigurovat veřejný nástroj pro vyrovnávání zatížení tak, aby poskytoval odchozí připojení nebo používal výchozí veřejný nástroj pro vyrovnávání zatížení.
Konfigurace
outboundRules
konfigurace veřejného nástroje pro vyrovnávání zatížení tak, aby poskytovala odchozí připojení, podívejte se na vytvoření nástroje pro vyrovnávání zatížení a přiřazení ukázkové šablony Azure Resource Manageru (ARM).NEBO
Pokud chcete nakonfigurovat typ uzlu tak, aby používal výchozí nástroj pro vyrovnávání zatížení, nastavte v šabloně následující:
- Verze prostředku spravovaného clusteru Service Fabric by měla být verze 2022-01-01 nebo novější.
"resources": [ { "apiVersion": "[variables('sfApiVersion')]", "type": "Microsoft.ServiceFabric/managedclusters/nodetypes", "properties": { "isPrimary": false, "useDefaultPublicLoadBalancer": true } } ]
Volitelně můžete nakonfigurovat port příchozí aplikace a související sondu ve vašem stávajícím Nástroji pro vyrovnávání zatížení Azure. Příklad najdete v ukázkové šabloně Azure Resource Manageru (ARM) s využitím vlastního nástroje pro vyrovnávání zatížení.
Volitelně můžete nakonfigurovat pravidla NSG spravovaného clusteru použitá na typ uzlu, aby se zablokoval veškerý požadovaný provoz nakonfigurovaný v Azure Load Balanceru nebo provozu. Příklad konfigurace příchozích pravidel NSG najdete v ukázkové šabloně Azure Resource Manageru (ARM) s využitím vlastního nástroje pro vyrovnávání zatížení. V šabloně vyhledejte
networkSecurityRules
vlastnost.Nasazení nakonfigurované šablony ARM spravovaného clusteru pro tento krok použijeme ukázkovou šablonu Nástroje pro vyrovnávání zatížení Azure Resource Manageru (ARM).
Následující příkaz vytvoří skupinu prostředků volanou volanou
MyResourceGroup
westus
a nasadí cluster pomocí existujícího nástroje pro vyrovnávání zatížení.New-AzResourceGroup -Name MyResourceGroup -Location westus New-AzResourceGroupDeployment -Name deployment -ResourceGroupName MyResourceGroup -TemplateFile AzureDeploy.json
Po nasazení je sekundární typ uzlu nakonfigurovaný tak, aby pro příchozí a odchozí provoz používal zadaný nástroj pro vyrovnávání zatížení. Připojení klienta Service Fabric a koncové body brány budou stále odkazovat na veřejnou DNS primárního uzlu spravovaného clusteru typu statické IP adresy.
Povolení akcelerovaných síťových služeb
Akcelerované síťové služby umožňují virtualizaci rozhraní SR-IOV (Single Root I/O Virtualization) virtuálnímu počítači škálovací sady virtuálních počítačů, který je základním prostředkem pro typy uzlů. Tato vysoce výkonná cesta obchází hostitele z cesty k datům, což snižuje latenci, zpoždění a využití procesoru u nejnáročnějších síťových úloh. Typy uzlů spravovaného clusteru Service Fabric je možné zřídit s akcelerovanými síťovými službami na podporovaných skladových posílaných virtuálních počítačích. Další důležité informace najdete v těchto omezeních a omezeních .
- Upozorňujeme, že akcelerované síťové služby se podporují u většiny obecných a výpočetních instancí s 2 nebo více virtuálními procesory. U instancí, které podporují hyperthreading, se akcelerované síťové služby podporují u instancí virtuálních počítačů se 4 nebo více virtuálními procesory.
Povolte akcelerované síťové služby deklarací enableAcceleratedNetworking
vlastnosti v šabloně Resource Manageru následujícím způsobem:
- Verze prostředku spravovaného clusteru Service Fabric by měla být verze 2022-01-01 nebo novější.
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
...
"properties": {
...
"enableAcceleratedNetworking": true,
...
}
Pokud chcete povolit akcelerované síťové služby v existujícím clusteru Service Fabric, musíte nejprve škálovat cluster Service Fabric tak, že přidáte nový typ uzlu a provedete následující akce:
- Zřízení typu uzlu s povolenými akcelerovanými síťovými službami
- Migrace služeb a jejich stavu na typ zřízeného uzlu 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.
Konfigurace pomocných podsítí
Pomocné podsítě poskytují možnost vytvářet další spravované podsítě bez typu uzlu pro podpůrné scénáře, jako jsou služba Private Link a hostitelé bastionu.
Nakonfigurujte pomocné podsítě deklarováním auxiliarySubnets
vlastnosti a požadovaných parametrů v šabloně Resource Manageru následujícím způsobem:
- Verze prostředku spravovaného clusteru Service Fabric by měla být verze 2022-01-01 nebo novější.
"resources": [
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters",
"properties": {
"auxiliarySubnets": [
{
"name" : "mysubnet",
"enableIpv6" : "true"
}
]
}
}
]
Zobrazit úplný seznam dostupných parametrů
Další kroky
Přehled možnostíkonfigurace spravovaného clusteru Service Fabric pro spravované clustery Service Fabric