Add-RemoteAccessLoadBalancerNode

Add-RemoteAccessLoadBalancerNode

Adds a server to the load balancing cluster.

Syntax

Parameter Set: Add0
Add-RemoteAccessLoadBalancerNode [-RemoteAccessServer] <String> [-AsJob] [-CimSession <CimSession[]> ] [-ComputerName <String> ] [-Force] [-InternalInterface <String> ] [-InternetInterface <String> ] [-PassThru] [-ThrottleLimit <Int32> ] [-VpnIPAddressRange <String[]> ] [-Confirm] [-WhatIf] [ <CommonParameters>]

Detailed Description

The Add-RemoteAccessLoadBalancerNode cmdlet adds a server to the load balanced cluster:
-- The server is added to the cluster to which the server on which the cmdlet is run, or to the server specified in the ComputerName parameter.
-- When a server is added to cluster, Remote Access settings are replicated on the server to match the other servers in the cluster. The Remote Access role and the Network Load Balancing (NLB) role should be installed on the server before adding it to the cluster.
-- The internal and external adapters can be specified manually. If no parameters are specified, then the cmdlet will attempt to detect settings automatically.
-- The IPv6 prefix for IP-HTTPS should be 59 bits. If IPv6 addressing is used for VPN, then the IPv6 prefix should be 59 bits.
-- All the designed IPs on the server being added to the cluster must be in the same subnet as other servers in the cluster.
-- If self-signed certificates are not being used, then certificates for IP-HTTPS and network location server (NLS) (if NLS is on DirectAccess (DA) Server) must be present on the new server. Note: The subject name of certificate must be same as the respective certificates on the other computers in the cluster.

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

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ComputerName<String>

Specifies the IPv4or IPv6 address, or host name of the computer, on which the Remote Access server computer specific tasks should be run. If this parameter is specified, then it represents the cluster to which the server is added.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Force

Forces the command to run without asking for user confirmation.
When suppressed the cmdlet assumes user confirmation for the below mentioned changes.
-- If self-signed NLS certificate is found on all other nodes in the cluster, then a self-signed certificate is created for this node.
-- If self-signed SSL (IP-HTTPS) certificate is found on all other nodes in the cluster, then a self-signed certificate is created for this node.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-InternalInterface<String>

Specifies the name of the corporate network facing interface of the specified server. If a name is not specified, then this cmdlet attempts to find the internal interface automatically. For a single-network adapter configuration the same name is specified for both the internal and internet interfaces.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

true (ByPropertyName)

Accept Wildcard Characters?

false

-InternetInterface<String>

Specifies the name of the internet facing interface of the specified server. If a name is not specified, then this cmdlet attempts to find the internet interface automatically. For a single-network adapter configuration the same name is specified for both the internal and internet interfaces.

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

-RemoteAccessServer<String>

The IP address, IPv4 or IPv6, or name of the server to be added to the load balanced cluster.

Aliases

none

Required?

true

Position?

2

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

-VpnIPAddressRange<String[]>

Specifies the IP address range for allocation to VPN clients. This parameter must be specified if VPN is enabled. The range should not overlap with ranges configured on other servers in the cluster.
In a cluster, only static pool address assignment can be used. DHCP is not supported.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

true (ByPropertyName)

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#RemoteAccessLoadBalancerNode

    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 RemoteAccessLoadBalancerNode object consists of the following properties:
    -- The IPv4/IPv6 address or host name of the node that was added to the cluster.
    -- The load balancing status of the node.
    -- IPv4 address ranges configured on the node for VPN static pool address assignment.

Examples

EXAMPLE 1

This example creates a NLB Cluster and adding a new server to a load balanced cluster.

Create a load balanced cluster using the Set-RemoteAccessLoadBalancer cmdlet.

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")

Add the Edge2 server as a new node in this load balanced cluster.

PS C:\> $RemoteAccessNLB = Add-RemoteAccessLoadBalancerNode –RemoteAccessServer Edge2.corp.contoso.com –PassThru

The cmdlet is run on Edge1 server and therefore the Edge2 server is added to the same cluster as the Edge1 server as shown in output of NlbNodeStatus.

PS C:\> $RemoteAccessNLB.NlbNodeStatus

EXAMPLE 2

This example adds a new server to a load balanced cluster with VPN enabled.

If VPN is enabled, define a static address range for VPN. If this is being used in in a script and the prompts are to be suppressed, then run this cmdlet with the Force parameter.

PS C:\> Add-RemoteAccessLoadBalancerNode -RemoteAccessServer edge3 -VpnIPAddressRange @("192.168.1.1","192.168.1.100") -PassThru

Remove-RemoteAccessLoadBalancerNode

Set-RemoteAccessLoadBalancer