Versions Compared

Key

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

...

No changes to existing Apis

...

DB changes

...

Add one more default Network offering having LB Service with Internal LB provider. Insert this offering as a part of the upgrade as well.

...

Api name

Request parameters

Response parameter

Available to regular user

allocateIpAddress

networkId (required, accepts only Id of VPC guest networks in 4.2)

  • id
  • ipAddress
  • networkId
  • account
  • domainId

yes

releaseIpAddress

id (required)

true/false

yes

listIpAddresses

  • id
  • ipAddress
  • networkId
  • account
  • domainId

List of Ip objects, each having:

  • id
  • ipAddress
  • networkId
  • account
  • domainId

yes

DB changes
TBD

Create Load Balancer for the Guest IP address

...

Java code changes

...

Backend changes

...

For the backend engineer to complete. Have to put HA proxy management/configuration details here

...

Web Services API

...

API name

Request parameters

Response parameters

Available to regular user

createInternalLoadBalancer

  • ipAddressId(required)
  • name (required)
  • description (required)
  • algorithm (required)
  • publicPort (required)
  • privatePort (required)
  • networkId (optional)
  • id
  • name
  • description
  • algorithm
  • publicPort
  • privatePort
  • networkId
  • ipAddress child object

yes

deleteInternalLoadBalancer

id(required)

true/false

yes

listInternalLoadBalancers

  • id
  • ipAddressId
  • name
  • description
  • algorithm
  • publicPort
  • privatePort
  • networkId

list of load balancers, each having parameters:

  • id
  • name
  • description
  • algorithm
  • publicPort
  • privatePort
  • networkId
  • ipAddress child object

yes

DB changes

TBD

Internal Load Balancing Vm life cycle

  • Create: InternalLBVM gets created when the first Load Balancer is created for the IP address
  • Destroy: InternalLBVM gets destroyed when the last Load Balancer is removed for the IP address
  • Reboot: InternalLBVM can be rebooted as a regular system vm using RebootSystemVm API.
  • List: InternalLBVM can be listed with ListSystemVMs API

Question: should we allow destroying the vm with DestroySystemVM command?

Limitations

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

...