Add-SCLoadBalancer

Add-SCLoadBalancer

Adds a load balancer to VMM.

Syntax

Parameter Set: Default
Add-SCLoadBalancer [-LoadBalancerAddress] <String> -Manufacturer <String> -Model <String> -RunAsAccount <RunAsAccount> -VMHostGroup <HostGroup[]> [-ConfigurationProvider <ConfigurationProvider> ] [-JobVariable <String> ] [-LogicalNetworkDedicatedIP <LogicalNetwork[]> ] [-LogicalNetworkVIP <LogicalNetwork[]> ] [-Port <UInt16> ] [-PROTipID <Guid]> ] [-RunAsynchronously] [-VMMServer <ServerConnection> ] [ <CommonParameters>]

Detailed Description

The Add-SCLoadBalancer cmdlet adds a load balancer to Virtual Machine Manager (VMM).

Parameters

-ConfigurationProvider<ConfigurationProvider>

Specifies a configuration provider object. A configuration provider is a plug-in to VMM that translates VMM Windows PowerShell commands to API calls that are specific to a type of load balancer. If no configuration provider is specified, VMM uses the Manufacturer and Model information to choose an available configuration provider. If no configuration provider is found, the load balancer is not added.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-JobVariable<String>

Specifies that job progress is tracked and stored in the variable named by this parameter.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-LoadBalancerAddress<String>

Specifies the fully qualified domain name (FQDN) or IP address of a load balancer. Usual formats are FQDN, IPv4 or IPv6 addresses, but check with the load balancer manufacturer for the valid format for your load balancer.

Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-LogicalNetworkDedicatedIP<LogicalNetwork[]>

Specifies the logical networks from which the back-end IP address for the load balancer should be assigned (the back-end logical network affinity).

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-LogicalNetworkVIP<LogicalNetwork[]>

Specifies the logical networks from which the front-end IP address for the load balancer should be assigned (the front-end logical network affinity).

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Manufacturer<String>

Specifies the name of the company that manufactured a physical device. Valid characters include:

-- letters (a-z)
-- numbers (0-9)
-- underscore (_)
-- hyphen (-)
-- dot (.)
-- single quote (')

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Model<String>

Specifies the model of a physical device.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Port<UInt16>

Specifies the network port to use when adding an object or creating a connection. Valid values are: 1 to 4095.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-PROTipID<Guid]>

Specifies the ID of the Performance and Resource Optimization tip (PRO tip) that triggered this action. This parameter lets you audit PRO tips.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-RunAsAccount<RunAsAccount>

Specifies a Run As account that contains credentials with permission to perform this action.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-RunAsynchronously

Indicates that the job runs asynchronously so that control returns to the command shell immediately.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-VMHostGroup<HostGroup[]>

Specifies a virtual machine host group object or an array of host group objects.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-VMMServer<ServerConnection>

Specifies a VMM server object.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByValue)

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.

Outputs

The output type is the type of the objects that the cmdlet emits.

  • LoadBalancer

Examples

Example 1: Add a load balancer

The first command gets the load balancer provider object with the specified manufacturer and model, and then stores the object in the $LBProvider variable.

The second command creates an array named $HostGroup. The third and fourth commands populate the $HostGroup array with host groups named HostGroup01 and Production.

The fifth command gets the Run As account object named LBRunAsAcct, and then stores the object in the $RunAsAcct variable.

The last command adds the load balancer using the specified Run As account.

PS C:\> $LBProvider = Get-SCConfigurationProvider | where { $_.Type -eq "LoadBalancer" -and $_.Manufacturer -eq "LBManufacturer" -and $_.Model -eq "LB01"}
PS C:\> $HostGroup =@()
PS C:\> $HostGroup += Get-SCVMHostGroup | where { $_.Path -eq "All Hosts\HostGroup01" }
PS C:\> $HostGroup += Get-SCVMHostGroup | where { $_.Path -eq "All Hosts\HostGroup02\Production" }
PS C:\> $RunAsAcct = Get-SCRunAsAccount -Name "LBRunAsAcct"
PS C:\> Add-SCLoadBalancer -ConfigurationProvider $LBProvider -VMHostGroup $HostGroup -RunAsAccount $RunAsAcct -LoadBalancerAddress "LB.Contoso.com" -Manufacturer "LBManufacturer" -Model "LB01" -Port "123"

Get-SCLoadBalancer

Read-SCLoadBalancer

Remove-SCLoadBalancer

Set-SCLoadBalancer

Test-SCLoadBalancer

Get-SCConfigurationProvider

Get-SCVMHostGroup

Get-SCRunAsAccount

Where-Object