Le 14 avr. 2011 à 21:58, Roman Bogorodskiy a écrit :

>  Tomaz Muraus wrote:
> 
>> I am not totally sure, but for example, maybe we should also allow users to
>> pass in a Node object instead of the IP address to the balancer_attach_node
>> and other functions and the function would read private / public IP address
>> from the Node object.
> 
> How do we understand if we should peak public or private address from
> the Node object?


Yes, node can have multiples IP address (private / public, ipv4 / ipv6) and we 
must explicitly define which IP of a node to be used in the load balancer 
definition. Check of the node status, or IP correctly attached, should be part 
of driver logic, depending on the provider.

libcloud.networking.lb sound a more natural namespace, within my experiences.

I also have some questions / remarks around reuse of others libcloud objects or 
concepts in this LB component. 

* use of location object to create a load balancer
  - Amazon elastic LB use availability zone like nodes at creation time.

* a concept, near the list_sizes Node component one, to choose a provider 
dependent way to abstract the whole LB rule to configure:
  - protocol (tcp / udp / http / ftp / ....) (level 4 or level 7 ones can 
cohabit
  - persistence mode (sticky and which type : vip, http_cookie, ...)
  - type of load balancing (round-robin, vip-src, etc)
  - type of healthcheck to use (tcp / ping / http get / ...)
  - others attributes provider specific or not
    - network topology (NAT/DSR/half-nat)
    - healtchecks properties (interval, timeout, ...)
    - price (???)

To create a LB, we must pick a location and a "rule" in the catalog (IP/port 
still needed), driver will assemble all components involved (for example 
listener / healtcheck in amazon vocabulary).

More capabilities of each providers should be accessible using such 
configuration catalog, I hope.

my 2 cents, and this time my mail should be complete :)

Aymeric

-- 
Senior Database Architect -- www.gandi.net

Reply via email to