Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Service=LB, Provider=Netscaler, LB service capability schemalbMode=Internal.
Java code changes
  • Network.java interface - add new capability for the LB service - schema supportedLbModes. It will have 2 values - Internal and External.
  • Existing Netscaler Service Provider will support both values - Internal and External - for the "schema" supportedLbModes capability as it can act as a provider for External and Internal Load Balancing.
  • Introduce new Network Element - InternalLBVm. This provider supports only 1 service - LB, and its "schema" supportedLbMode capability can be Internal only. We need a new network element because Internal LB Vm will have different number of nics from the regular CS system vm (Guest and Control only); and its lifecycle will be different as well. The Vm will be started not when network gets implemented, but when the new IP gets acquired from the Guest Network for the Load Balancer rule.
  • Introduce InternalLBNetworkApplianceManager - for managing Internal Load Balancer vms. 

...

TBD. We might need a separate template/set of scripts for Internal LB VM, or we can re-use the existing VR template.

Web Services API

No changes to existing Apislist/createNetworkOffering APIs will return new parameter in the response - "internal_lb". The parameter type is Boolean

DB changes

No changes

2) Create Load Balancer Rule 

...

API Name

Request Parameters

Response parameters

Available to regular user

createLoadBalancingRule

New parameters: 

  • schema mode (String enum, optional with External/Internal choices; optional; =External by default)
  • sourceIpAddress (String, optional, can be used only with networkId conjunction)  If networkId=(guestNetworkId of the network where internal LB is supported) is passed in w/o sourceIpAddress param,   
    the IP address from the guest network will get acquired on the fly and be assigned to the Load Balancing Rule. 

New parameters:

  • schemamode
  • sourceIpAddress

yes

listLoadBalancingRules

New parameters:

  • schemamode
  • sourceIpAddress

New parameters:

  • schemamode
  • sourceIpAddress

yes

DB changes

Existing table load_balancing_rules will get a new field - "schemamode". It will have "External" value by default, and will accept enum values External/Internal.

...

  • Internal and Public Lb are mutually exclusive on a network/tier. If the tier has LB on the public side, then it can't have the Internal LB
  • Supported just on VPC networks in 4.2 release.

UI

TBD