l.l.b.Driver(BaseDriver) : class documentation

Part of libcloud.loadbalancer.base View Source View In Hierarchy

Known subclasses: libcloud.loadbalancer.drivers.brightbox.BrightboxLBDriver, libcloud.loadbalancer.drivers.cloudstack.CloudStackLBDriver, libcloud.loadbalancer.drivers.gogrid.GoGridLBDriver, libcloud.loadbalancer.drivers.rackspace.RackspaceLBDriver

A base LBDriver class to derive from

This class is always subclassed by a specific driver.

Method __init__
Method list_protocols Return a list of supported protocols.
Method list_balancers List all loadbalancers
Method create_balancer Create a new load balancer instance
Method destroy_balancer Destroy a load balancer
Method get_balancer Return a LoadBalancer object.
Method update_balancer Sets the name, algorithm, protocol, or port on a load balancer.
Method balancer_attach_compute_node Attach a compute node as a member to the load balancer.
Method balancer_attach_member Attach a member to balancer
Method balancer_detach_member Detach member from balancer
Method balancer_list_members Return list of members attached to balancer
Method list_supported_algorithms Return algorithms supported by this driver.
Method _value_to_algorithm Return LBAlgorithm based on the value.
Method _algorithm_to_value Return value based in the algorithm (LBAlgorithm).

Inherited from BaseDriver:

Method _ex_connection_class_kwargs Return extra connection keyword arguments which are passed to the Connection class constructor.
def __init__(self, key, secret=None, secure=True, host=None, port=None): (source)
ParameterskeyAPI key or username to used (type: str)
secretSecret password to be used (type: str)
secureWeither to use HTTPS or HTTP. Note: Some providers only support HTTPS, and it is on by default. (type: bool)
hostOverride hostname used for connections. (type: str)
portOverride port used for connections. (type: int)
api_versionOptional API version. Only used by drivers which support multiple API versions. (type: str)
def list_protocols(self): (source)
Return a list of supported protocols.
def list_balancers(self): (source)
List all loadbalancers
Returnslist of LoadBalancer objects
def create_balancer(self, name, port, protocol, algorithm, members): (source)
Create a new load balancer instance
ParametersnameName of the new load balancer (required) (type: str)
memberslist ofMembers to attach to balancer
protocolLoadbalancer protocol, defaults to http.
portPort the load balancer should listen on, defaults to 80 (type: str)
algorithmLoad balancing algorithm, defaults to LBAlgorithm.ROUND_ROBIN (type: LBAlgorithm)
def destroy_balancer(self, balancer): (source)
Destroy a load balancer
Returnsbool True if the destroy was successful, otherwise False
def get_balancer(self, balancer_id): (source)
Return a LoadBalancer object.
Parametersbalancer_idid of a load balancer you want to fetch (type: str)
ReturnsLoadBalancer
def update_balancer(self, balancer, **kwargs): (source)
Sets the name, algorithm, protocol, or port on a load balancer.
ParametersnameNew load balancer name
algorithmNew load balancer algorithm
protocolNew load balancer protocol
portNew load balancer port
def balancer_attach_compute_node(self, balancer, node): (source)
Attach a compute node as a member to the load balancer.
ParametersnodeMember to join to the balancer
def balancer_attach_member(self, balancer, member): (source)
Attach a member to balancer
ParametersmemberMember to join to the balancer (type: Member @return {Member} Member after joining the balancer.)
def balancer_detach_member(self, balancer, member): (source)
Detach member from balancer
Returnsbool True if member detach was successful, otherwise False
def balancer_list_members(self, balancer): (source)
Return list of members attached to balancer
Returnslist of Members
def _value_to_algorithm(self, value): (source)
Return LBAlgorithm based on the value.
def _algorithm_to_value(self, algorithm): (source)
Return value based in the algorithm (LBAlgorithm).
def list_supported_algorithms(self): (source)
Return algorithms supported by this driver.
API Documentation for libcloud, generated by pydoctor at 2012-07-15 18:48:28.