deltacloud-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Koper, Dies" <>
Subject load balancers with FGCP
Date Wed, 15 Aug 2012 08:57:32 GMT
I've been looking at how to map the load balancer API to FGCP's load
balancer concept better.

Let me first briefly explain the load balancer concept in the FGCP.
In the FGCP a load balancer module is provided as a 'built-in server'.
I.e. you create one in a similar way as a server instance, need to start
it before you can configure it, it is assigned its own private IP
address and you can map one (or more) public IP addresses to it.
Once running, you can create groups, each having a source port and
protocol (and a few more settings, such as distribution method
(round-robin or least number of connections), service monitoring method
(ping or tcp), consistency guarantee method (source IP, connection,
cookie/url or cookie client id insertion), etc.).
To each group you can add listeners, which consist of a destination
server instance and server instance port each.

So the main differences to the DC API are:

1. load balancer needs to be created first, then started, then
configured. Can't create & configure in a single step.
2. FGCP load balancer can have multiple groups, each with its own listen
port and protocol, instead of just one.
3. The instance destination port is specified per instance, not per load

This is how I think we can address them:

1. As load balancers are a type of server instances in the FGCP, they
are returned in the list of instances and can be started, stopped and
removed from there. For the create & configure operation, the best I can
do is create if not already created, and configure if created and

2. Instead of mapping a DC load balancer to an FGCP load balancer, I
think I can map a DC load balancer to an FGCP load balancer group. That
solves the single versus multiple listen ports and protocols issue.

3. For this one I'd like to request a change/addition to the DC API:
a. the operation to register an instance has an optional 'instance port'
parameter. If supported by the provider and specified, it overrides the
value of the load balancer's 'instance port' field. If not specified,
the value of already configured instances is used (and if there aren't
any, the same value as the load balancer port).
b. the current listener_instance_port field becomes optional for
providers that don't support it.


In additional to the above, I'd have an rfe for the UI:
The register instance page in the UI lists all instances. I'd like to
change that page to:
1. only list the instances in the same realm(s) as the load balancer.
2. add a way for the user to enter the instance port number.

Dies Koper

View raw message