Öppna portar för ett Service Fabric-kluster
Lastbalanseraren som distribueras med ditt Azure Service Fabric-kluster dirigerar trafik till din app som körs på en nod. Om du ändrar appen så att den använder en annan port måste du exponera den porten (eller dirigera en annan port) i Azure Load Balancer.
När du distribuerade Service Fabric-klustret till Azure skapades automatiskt en lastbalanserare åt dig. Om du inte har någon lastbalanserare kan du läsa Konfigurera en Internetuppkopplad lastbalanserare.
Kommentar
Vi rekommenderar att du använder Azure Az PowerShell-modulen för att interagera med Azure. Information om hur du kommer igång finns i Installera Azure PowerShell. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.
Konfigurera Service Fabric
Ditt Service Fabric-program ServiceManifest.xml konfigurationsfil definierar de slutpunkter som programmet förväntar sig att använda. När konfigurationsfilen har uppdaterats för att definiera en slutpunkt måste lastbalanseraren uppdateras för att exponera den (eller en annan) port. Mer information om hur du skapar service fabric-slutpunkten finns i Konfigurera en slutpunkt.
Skapa en lastbalanseringsregel
En Load Balancer-regel öppnar en Internetuppkopplad port och vidarebefordrar trafik till den interna nodens port som används av ditt program. Om du inte har någon lastbalanserare kan du läsa Konfigurera en Internetuppkopplad lastbalanserare.
Om du vill skapa en Load Balancer-regel måste du samla in följande information:
- Lastbalanserarens namn.
- Resursgrupp för lastbalanseraren och Service Fabric-klustret.
- Extern port.
- Intern port.
Azure CLI
Det krävs bara ett enda kommando för att skapa en lastbalanseringsregel med Azure CLI. Du behöver bara känna till både namnet på lastbalanseraren och resursgruppen för att skapa en ny regel.
Kommentar
Om du behöver fastställa namnet på lastbalanseraren använder du det här kommandot för att snabbt hämta en lista över alla lastbalanserare och associerade resursgrupper.
az network lb list --query "[].{ResourceGroup: resourceGroup, Name: name}"
az network lb rule create --backend-port 40000 --frontend-port 39999 --protocol Tcp --lb-name LB-svcfab3 -g svcfab_cli -n my-app-rule
Azure CLI-kommandot har några parametrar som beskrivs i följande tabell:
Parameter | Description |
---|---|
--backend-port |
Porten som Service Fabric-programmet lyssnar på. |
--frontend-port |
Porten som lastbalanseraren exponerar för externa anslutningar. |
-lb-name |
Namnet på lastbalanseraren som ska ändras. |
-g |
Resursgruppen som har både lastbalanseraren och Service Fabric-klustret. |
-n |
Det önskade namnet på regeln. |
Kommentar
Mer information om hur du skapar en lastbalanserare med Azure CLI finns i Skapa en lastbalanserare med Azure CLI.
PowerShell
PowerShell är lite mer komplicerat än Azure CLI. Följ dessa konceptuella steg för att skapa en regel:
- Hämta lastbalanseraren från Azure.
- Skapa en regel.
- Lägg till regeln i lastbalanseraren.
- Uppdatera lastbalanseraren.
Kommentar
Om du behöver fastställa namnet på lastbalanseraren använder du det här kommandot för att snabbt hämta en lista över alla lastbalanserare och associerade resursgrupper.
Get-AzLoadBalancer | Select Name, ResourceGroupName
# Get the load balancer
$lb = Get-AzLoadBalancer -Name LB-svcfab3 -ResourceGroupName svcfab_cli
# Create the rule based on information from the load balancer.
$lbrule = New-AzLoadBalancerRuleConfig -Name my-app-rule7 -Protocol Tcp -FrontendPort 39990 -BackendPort 40009 `
-FrontendIpConfiguration $lb.FrontendIpConfigurations[0] `
-BackendAddressPool $lb.BackendAddressPools[0] `
-Probe $lb.Probes[0]
# Add the rule to the load balancer
$lb.LoadBalancingRules.Add($lbrule)
# Update the load balancer on Azure
$lb | Set-AzLoadBalancer
New-AzLoadBalancerRuleConfig
När det gäller kommandot -FrontendPort
representerar den port som lastbalanseraren exponerar för externa anslutningar och -BackendPort
representerar porten som service fabric-appen lyssnar på.
Kommentar
Mer information om hur du skapar en lastbalanserare med PowerShell finns i Skapa en lastbalanserare med PowerShell.
Nästa steg
Läs mer om nätverk i Service Fabric.