Neutron/LBaaS/Provisioning/proposal
Overview
This document describes how the particular VIP is provisioned to load-balancing device. There can be several options of doing this with full-automation on one hand and manual mode on the other. The proposal introduces small extension to Tenant API.
Use Cases
Auto-provisioning
- `Req`: There are some load-balancing devices registered in LBaaS, they may be shared or dedicated to particular tenant.
- User creates VIP, pool, specifies health monitoring or session persistence parameters.
- LBaaS filters devices according to their capabilities and deploys VIP to one of them.
- Any change of parameter (like balancing algorithms) may result in re-deploying VIP to another device, however this procedure runs transparently for user.
- If user asks for a combination of parameters that don't fit into any available device, s/he gets error.
Manual provisioning
- `Req`: There are some load-balancing devices registered in LBaaS, they may be shared or dedicated to particular tenant.
- User lists available devices.
- User creates VIP and specifies device_id.
- LBaaS deploys VIP to the specified device.
- If any unsupported option is requested LBaaS returns error.
(!) Need to extend REST API with command 'get list of devices (tenant_id)'.