Set-AzLoadBalancerRuleConfig

Updates a rule configuration for a load balancer.

Syntax

Set-AzLoadBalancerRuleConfig
   -LoadBalancer <PSLoadBalancer>
   -Name <String>
   [-Protocol <String>]
   [-LoadDistribution <String>]
   [-FrontendPort <Int32>]
   [-BackendPort <Int32>]
   [-IdleTimeoutInMinutes <Int32>]
   [-EnableFloatingIP]
   [-EnableTcpReset]
   [-DisableOutboundSNAT]
   [-FrontendIpConfiguration <PSFrontendIPConfiguration>]
   [-BackendAddressPool <PSBackendAddressPool[]>]
   [-Probe <PSProbe>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzLoadBalancerRuleConfig
   -LoadBalancer <PSLoadBalancer>
   -Name <String>
   [-Protocol <String>]
   [-LoadDistribution <String>]
   [-FrontendPort <Int32>]
   [-BackendPort <Int32>]
   [-IdleTimeoutInMinutes <Int32>]
   [-EnableFloatingIP]
   [-EnableTcpReset]
   [-DisableOutboundSNAT]
   [-FrontendIpConfigurationId <String>]
   [-BackendAddressPoolId <String[]>]
   [-ProbeId <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The Set-AzLoadBalancerRuleConfig cmdlet updates a rule configuration for a load balancer.

Examples

Example 1: Modify a load balancing rule configuration

$slb = Get-AzLoadBalancer -Name "MyLoadBalancer" -ResourceGroupName "MyResourceGroup"
$slb | Add-AzLoadBalancerRuleConfig -Name "NewRule" -FrontendIPConfiguration $slb.FrontendIpConfigurations[0] -Protocol "Tcp" -FrontendPort 3350 -BackendPort 3350 -EnableFloatingIP
$slb | Set-AzLoadBalancerRuleConfig -Name "NewRule" -FrontendIPConfiguration $slb.FrontendIpConfigurations[0] -Protocol "Tcp" -FrontendPort 3350 -BackendPort 3350
$slb | Set-AzLoadBalancer

Example 2: Modify a load balancing rule configuration to have two backend address pools

$slb = Get-AzLoadBalancer -Name "MyLoadBalancer" -ResourceGroupName "MyResourceGroup"
$MyBackendPool1 = Get-AzLoadBalancerBackendAddressPool -ResourceGroupName $resourceGroup -LoadBalancerName $MyLoadBalancer -Name $backendPool1Name
$MyBackendPool2 = Get-AzLoadBalancerBackendAddressPool -ResourceGroupName $resourceGroup -LoadBalancerName $MyLoadBalancer -Name $backendPool2Name
$slb | Set-AzLoadBalancerRuleConfig -Name "NewRule" -FrontendIPConfiguration $slb.FrontendIpConfigurations[0] -Protocol "All" -FrontendPort 0 -BackendPort 0 -BackendAddressPool $MyBackendPool1, $MyBackendPool2
$slb | Set-AzLoadBalancer

The first command gets the load balancer named MyLoadBalancer, and then stores it in the $slb variable. The second command uses the pipeline operator to pass the load balancer in $slb to Add-AzLoadBalancerRuleConfig, which adds a rule named NewRule to it. The third command passes the load balancer to Set-AzLoadBalancerRuleConfig, which sets the new rule configuration. Note that the configuration does not enable a floating IP address, which had been enabled by the previous command.

Parameters

-BackendAddressPool

Specifies a BackendAddressPool object to associate with a load balancer rule.

Type:PSBackendAddressPool[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-BackendAddressPoolId

Specifies the ID of a BackendAddressPool object to associate with a load balancer rule configuration.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-BackendPort

Specifies the backend port for traffic that is matched by this rule configuration.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

The credentials, account, tenant, and subscription used for communication with azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisableOutboundSNAT

Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableFloatingIP

Indicates that this cmdlet enables a floating IP address for a rule configuration.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableTcpReset

Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FrontendIpConfiguration

Specifies a list of front-end IP addresses to associate with a load balancer rule configuration.

Type:PSFrontendIPConfiguration
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-FrontendIpConfigurationId

Specifies the ID for a front-end IP address configuration.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-FrontendPort

Specifies the front-end port that is matched by a load balancer rule configuration.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-IdleTimeoutInMinutes

Specifies the length of time, in minutes, for which the state of conversations is maintained in a load balancer.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-LoadBalancer

Specifies a load balancer. This cmdlet updates a rule configuration for the load balancer that this parameter specifies.

Type:PSLoadBalancer
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-LoadDistribution

Specifies a load distribution. The acceptable values for this parameter are: SourceIP and SourceIPProtocol.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Specifies the name of a load balancer.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Probe

Specifies a probe to associate with a load balancer rule configuration.

Type:PSProbe
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProbeId

Specifies the ID of the probe to associate with a load balancer rule configuration.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Protocol

Specifies the protocol that is matched by a load balancer rule. The acceptable values for this parameter are: Tcp or Udp.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

PSLoadBalancer

String

Int32

PSFrontendIPConfiguration

PSBackendAddressPool

PSProbe

Outputs

PSLoadBalancer