Set-RemoteAccessLoadBalancer
Set-RemoteAccessLoadBalancer
Configures load balancing on the Remote Access (RA) server or the cluster server.
Syntax
Parameter Set: EnableLoadBalancing
Set-RemoteAccessLoadBalancer [-InternetDedicatedIPAddress] <String[]> [-AsJob] [-CimSession <CimSession[]> ] [-ComputerName <String> ] [-InternalDedicatedIPAddress <String[]> ] [-InternalVirtualIPAddress <String[]> ] [-InternetVirtualIPAddress <String[]> ] [-PassThru] [-ThrottleLimit <Int32> ] [-UseThirdPartyLoadBalancer] [-Confirm] [-WhatIf] [ <CommonParameters>]
Parameter Set: DisableLoadBalancing
Set-RemoteAccessLoadBalancer -Disable [-AsJob] [-CimSession <CimSession[]> ] [-ComputerName <String> ] [-Force] [-PassThru] [-ThrottleLimit <Int32> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
Parameter Set: ThirdPartyLoadBalancer
Set-RemoteAccessLoadBalancer -ThirdPartyLoadBalancer <String> [-AsJob] [-CimSession <CimSession[]> ] [-ComputerName <String> ] [-PassThru] [-ThrottleLimit <Int32> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
Detailed Description
The Set-RemoteAccessLoadBalancer cmdlet configures load balancing for a Remote Access (RA) deployment.
-- The InternalDedicatedIPAddress and InternalVirtualIPAddress parameters must be specified unless the server is configured with a single network adapter only.
-- If the use of a third-party external load balancer is Enabled, then Windows network load balancing (NLB) is automatically Disabled, otherwise NLB is Enabled.
-- When load balancing is enabled the IP-HTTPS prefix and the IPv6 prefix for VPN must be of length 59 bits. The IP-HTTPS prefix can be configured using the ClientIPv6Prefix parameter in the Set-DAServer cmdlet.
-- All servers in the cluster share the same RA configuration.
Note: If Windows load balancing is used then the Network Load Balancing role (NLB) needs to be installed prior to using this cmdlet.
Parameters
-AsJob
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-CimSession<CimSession[]>
Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.
Aliases |
Session |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-ComputerName<String>
Specifies the IPv4 or IPv6 address, or host name, of the server on which the cmdlet runs. If this parameter is specified, then the server is added to the load balanced cluster.
Aliases |
Cn |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Disable
Disables load balancing.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Force
Forces the command to run without asking for user confirmation.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-InternalDedicatedIPAddress<String[]>
Specifies one or more IP addresses with subnet masks that will be used as the dedicated IP addresses (DIPs) for load balancing on the internal network adapter.
Specify the IPv4 address and subnet in the format IP_ADDR/SUBNET. For IPv6 specify the prefix length along with the IP address.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-InternalVirtualIPAddress<String[]>
Specifies one or more IP addresses with subnet masks that will be used as the virtual IP addresses (VIPs) for load balancing on the internal network adapter. These are usually the current IP addresses on the internal adapter of the server on which the cmdlet is run.
Specify the IPv4 address and subnet in the format IP_ADDR/SUBNET. For IPv6 specify the prefix length along with the IP address.
If ISATAP is deployed in the internal network, then at least one of the IP addresses specified in this parameter should be present in the ISATAP name entry in DNS.
The NLS should resolve to at least one of the VIPs.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-InternetDedicatedIPAddress<String[]>
Specifies one or more IPv4 or IPv6 addresses with subnet masks that will be used as the DIPs for load balancing on the external network adapter.
Specify the IPv4 address and subnet in the format IP_ADDR/SUBNET. For IPv6 specify the prefix length along with the IP address.
Aliases |
none |
Required? |
true |
Position? |
2 |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-InternetVirtualIPAddress<String[]>
Specifies one or more IP addresses with subnet masks that will be used as the VIPs for load balancing on the external network adapter and should include the IPsec tunnel endpoint IP addresses on the external adapter.
Specify the IPv4 address and subnet in the format IP_ADDR/SUBNET. For IPv6 specify the prefix length along with the IP address. If ISATAP is deployed in the internal network, then at least one of the IP addresses specified in the parameter should be present in the ISATAP name entry in DNS. If the external adapter VIP addresses are not specified, then by default the IPsec tunnel endpoint IP addresses on the external adapter are used.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-PassThru
Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-ThirdPartyLoadBalancer<String>
Specifie the enabled state of a third-party external load balancer. The acceptable values for this parameter are:
-- Enabled.
-- Disabled.
Note: If external load balancing is Enabled and Teredo has been deployed, then all the external DIPs must be consecutive addresses.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-ThrottleLimit<Int32>
Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0
is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-UseThirdPartyLoadBalancer
Enables use of a third-party external load balancer for cluster traffic.
Note: If external load balancing is enabled and Teredo has been deployed, then all the external DIPs must be consecutive addresses.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Confirm
Prompts you for confirmation before running the cmdlet.
Required? |
false |
Position? |
named |
Default Value |
false |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Required? |
false |
Position? |
named |
Default Value |
false |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
<CommonParameters>
This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
Inputs
The input type is the type of the objects that you can pipe to the cmdlet.
- None
Outputs
The output type is the type of the objects that the cmdlet emits.
Microsoft.Management.Infrastructure.CimInstance#RemoteAccessLoadBalancer
The
Microsoft.Management.Infrastructure.CimInstance
object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The path after the pound sign (#
) provides the namespace and class name for the underlying WMI object.
The RemoteAccessLoadBalancer object consists of the following properties:
The list of nodes in the cluster and the following properties for each node:
-- IPv4 or IPv6 address or host name of the node.
-- The load balancing status of each node.
-- IPv4 address ranges configured on each node for the VPN static pool address assignment.
-- Status of third party load balancer: Enabled or Disabled.
-- The list of internet virtual IP addresses.
-- The list of internal virtual IP addresses.
Examples
EXAMPLE 1
This example sets the NLB settings with Windows load balancer in edge topology. Therefore the Internet address of the existing DA server located at 131.107.0.2 is promoted to be the internet virtual IP address of the load balanced cluster. In this way, clients can still connect to the same external IP that they connected to without bothering about load balancing.
PS C:\> Set-RemoteAccessLoadBalancer -InternetDedicatedIPAddress "131.107.0.20/255.255.255.0" -InternalDedicatedIPAddress @("3ffe::2/64","10.0.0.2/255.255.255.0") -InternetVirtualIPAddress @("131.107.0.5/255.255.255.0","131.107.0.15/255.255.255.0") -InternalVirtualIPAddress @("3ffe::5/64","10.0.0.5/255.255.255.0") -PassThru
EXAMPLE 2
This example sets the NLB settings with Windows load balancer in single network adapter topology. The corporate network is IPv4 and IPv6 enabled and therefore an array containing the IPv4 and IPv6 addresses for internet VIP and DIP is specified. Since the DA server is behind an edge device, the internet VIPs and DIPs contain corporate network addresses.
PS C:\> Set-RemoteAccessLoadBalancer –InternetDedicatedIPAddress @("10.0.0.2/255.255.255.0","3ffe::2/64") –InternetVirtualIPAddress @("10.0.0.5/255.255.255.0", "3ffe::5/64") –PassThru
EXAMPLE 3
This example sets the NLB settings using third party load balancer. The administrator will still have to manually configure the NLB device.
PS C:\> Set-RemoteAccessLoadBalancer -InternetDedicatedIPAddress "131.107.0.20/255.255.255.0" -InternalDedicatedIPAddress @("3ffe::2/64","10.0.0.2/255.255.255.0") -InternetVirtualIPAddress @("131.107.0.5/255.255.255.0","131.107.0.15/255.255.255.0") -InternalVirtualIPAddress @("3ffe::5/64","10.0.0.5/255.255.255.0") -PassThru -UseThirdPartyLoadBalancer
EXAMPLE 4
This example disables the external load balancer for a Windows load balanced cluster. The computer will now use the Windows load balancer to balance the load between servers.
PS C:\> Set-RemoteAccessLoadBalancer -ThirdPartyLoadBalancer Disabled –PassThru
EXAMPLE 5
This example enables the external load balancer for a Windows load balanced cluster. The computer will now use the external load balancer to balance the load between servers.
PS C:\> Set-RemoteAccessLoadBalancer –ThirdPartyLoadBalancer Enabled -PassThru
EXAMPLE 6
This example removes the NLB configuration. DA configuration is also removed from all the servers except the one on which the cmdlet is run.
PS C:\> Set-RemoteAccessLoadBalancer –Disable
Related topics
Add-RemoteAccessLoadBalancerNode