3.1.5.6 loadBalancerManager

The loadBalancerManager resource is a singleton resource that configures the load balancing service of the Network Controller.

It is invoked through the following URI.

 https://<url>/networking/v1/loadBalancerManager/config

url: The address or name of the REST server of the Network Controller.

Note  The server MAY support additional versions, v1 or later, in the URI.

The following HTTP methods can be performed on this resource.

HTTP method

Section

Description

PUT

3.1.5.6.1.1

Create a new loadBalancerManager resource or update an existing loadBalancerManager resource.

GET

3.1.5.6.1.2

Get the loadBalancerManager resource.

The following property elements are valid.

Element name

Type

Description

etag

Read-only

Specified in Common JSON Elements, section 2.2.2.

provisioningState

Read-only

Specified in Common JSON Elements, section 2.2.2.

loadBalancerManagerIPAddress

Required

The IP address of the load balancer service.  This is part of one of the vipIpPools elements as specified in the vipIpPools element in this resource.

outboundNatIPExemptions

Required

An array of v4 or v6 subnets masks with prefixes that will not have the source IP and Port changed by being NAT-ed.  This is typically used for datacenter services that will be communicated with other services within the same datacenter or cluster.

Array of strings in the following format: 0.0.0.0/0.

Note There is no validation that these IP addresses are known by the Network Controller.

vipIpPools

Required

An array of references to ipPool resources that will be used for the front-end IP addresses.

loadBalancerMuxMode

Optional

The load balancer multiplexer's (MUX) 's mode of operation. Can be the following values:

§ BgpPeering: Tells MUX to advertise VIP routes to the Top Of Rack Switch through BGP peering.

§ L2Forwarding: Tells MUX to respond to ARP requests for VIPs sent by the Top Of Rack Switch with its own MAC address.

Default value is BgpPeering.

This property is supported in URI version v6 or later.

A loadBalancerManager is a singleton resource, it cannot be deleted once it is created. However, it can be updated.

The loadBalancerManager IP address MUST be part of one of the vipIpPools configured on the loadBalancerManager resource.

In any update removal of an ipPool reference form vipIpPools MUST only be attempted when no loadBalancers reference IP addresses from that pool in their frontendIPConfigurations and no public IPs are allocated from that ipPool. Removal of an in use ipPool is disallowed and will place the loadBalancerManager resource in a failed provisioning state.

Similarly, if an ipPool is added for use by the loadBalancerManager resource, it MUST have no IP address usage prior to being added to the loadBalancerManager resource.