Ouvrir des ports pour un cluster Service Fabric
L’équilibreur de charge déployé avec votre cluster Azure Service Fabric dirige le trafic vers votre application en cours d’exécution sur un nœud. Si vous modifiez votre application pour utiliser un autre port, vous devez exposer ce port (ou acheminer un port différent) dans Azure Load Balancer.
Une fois votre cluster Service Fabric déployé vers Azure, un équilibreur de charge est créé automatiquement pour vous. Si vous ne disposez pas d’un équilibrage de charge, consultez Configurer un équilibreur de charge connecté à Internet.
Notes
Nous vous recommandons d’utiliser le module Azure Az PowerShell pour interagir avec Azure. Pour bien démarrer, consultez Installer Azure PowerShell. Pour savoir comment migrer vers le module Az PowerShell, consultez Migrer Azure PowerShell depuis AzureRM vers Az.
Configurer Service Fabric
Le fichier de configuration de votre application Service Fabric ServiceManifest.xml définit les points de terminaison que votre application s’attend à utiliser. Une fois le fichier de configuration mis à jour pour définir un point de terminaison, l’équilibreur de charge doit être mis à jour pour exposer ce port (ou un autre). Pour plus d’informations sur la façon de créer le point de terminaison Service Fabric, consultez Configurer un point de terminaison.
Créer une règle d’équilibreur de charge
Une règle Load Balancer ouvre un port connecté à internet et transfère le trafic vers le port du nœud interne utilisé par votre application. Si vous ne disposez pas d’un équilibrage de charge, consultez Configurer un équilibreur de charge connecté à Internet.
Pour créer une règle Load Balancer, vous devez collecter les informations suivantes :
- Nom de l’équilibreur de charge.
- Groupe de ressources de l’équilibreur de charge et du cluster Service Fabric.
- Port externe.
- Port interne.
Azure CLI
Il suffit d’une seule commande pour créer une règle d’équilibreur de charge avec l’interface Azure CLI. Vous devez simplement connaître le nom de l’équilibreur de charge et du groupe de ressources pour créer une nouvelle règle.
Notes
Si vous avez besoin déterminer le nom de l’équilibreur de charge, utilisez cette commande pour obtenir rapidement une liste de tous les équilibreurs de charge et des groupes de ressources associés.
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
La commande Azure CLI dispose de quelques paramètres décrits dans le tableau suivant :
Paramètre | Description |
---|---|
--backend-port |
Le port que l’application Service Fabric écoute. |
--frontend-port |
Le port que l’équilibreur de charge expose aux connexions externes. |
-lb-name |
Le nom de l’équilibreur de charge à modifier. |
-g |
Le groupe de ressources qui dispose de l’équilibreur de charge et du cluster Service Fabric. |
-n |
Le nom voulu pour la règle. |
Notes
Pour plus d’informations sur la création d’un équilibreur de charge avec l’interface Azure CLI, consultez Créer un équilibreur de charge avec l’interface Azure CLI.
PowerShell
PowerShell est un peu plus compliqué que l’interface Azure CLI. Suivez ces étapes conceptuels pour créer une règle :
- Récupérez l’équilibreur de charge d’Azure.
- Créez une règle.
- Ajoutez la règle pour l'équilibreur de charge.
- Mettez à jour l’équilibreur de charge.
Notes
Si vous devez déterminer le nom de l’équilibreur de charge, utilisez cette commande pour obtenir rapidement une liste de tous les équilibreurs de charge et des groupes de ressources associés.
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
En ce qui concerne la commande New-AzLoadBalancerRuleConfig
, le -FrontendPort
représente le port que l’équilibrage de charge expose aux connexions externes, et le -BackendPort
représente le port d’écoute de l’application Service Fabric.
Notes
Pour plus d’informations sur la création d’un équilibreur de charge avec l’interface PowerShellI, consultez Créer un équilibreur de charge avec PowerShell.
Étapes suivantes
En savoir plus sur la mise en réseau dans Service Fabric.