Interface LoadBalancer.Service
-
- All Superinterfaces:
Maskable
,ResultLimitable
,Service
- Enclosing class:
- LoadBalancer
@ApiService("SoftLayer_Network_LBaaS_LoadBalancer") public static interface LoadBalancer.Service extends Service
The SoftLayer_Network_LBaaS_LoadBalancer service allows customers to create, edit, delete, get details of a load balancer instance and retrieve all existing load balancer instances. The most common use case of a load balancer instance is to improve performance and high availability of customers application services by distributing the incoming requests across multiple servers. Thus, clients using customers application services will only need to know the load balancer instances host name respective IP address in order to submit their requests. Note that SoftLayer_Network_LBaaS_LoadBalancer provides the load balancing functionality only, while it is customers responsibility to implement their application services and deploy them to respective servers, typically virtual servers or bare metal systems hosted by IBM SoftLayer. Conceptually a load balancer instance consists of a set of listeners, also called frontends, pools, also called backends, and members (application servers). A listener (frontend) represents basically the network protocol and port for requests coming from clients applications and is always associated with a pool (backend) defined by a network protocol, port and load balancing algorithm. The pools network protocol and port specify how incoming requests will be forwarded to application servers, while the load balancing algorithm (round-robin, weighted round-robin or least connections) determines the distribution scheme of incoming requests among the members, ie application servers. Note that members of a load balancer instance are assigned implicitly to all pools (backends) of that load balancer.- See Also:
- SoftLayer_Network_LBaaS_LoadBalancer
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description LoadBalancer.ServiceAsync
asAsync()
Get an async version of this serviceBoolean
cancelLoadBalancer(String uuid)
Cancel a load balancer with the given uuid.LoadBalancer
enableOrDisableDataLogs(String uuid, Boolean enabled)
When enabled, data log would be forwarded to logging service.List<LoadBalancer>
getAllObjects()
Return all existing load balancersLocation
getDatacenter()
Datacenter, where load balancer is located.List<HealthMonitor>
getHealthMonitors()
Health monitors for the backend members.List<L7Pool>
getL7Pools()
L7Pools for load balancer.List<Listener>
getListeners()
Listeners assigned to load balancer.List<LoadBalancerMonitoringMetricDataPoint>
getListenerTimeSeriesData(String loadBalancerUuid, String metricName, String timeRange, String listenerUuid)
Return listener time series datapoints.LoadBalancer
getLoadBalancer(String uuid)
Get the load balancer object with given uuid.List<PoolMembersHealth>
getLoadBalancerMemberHealth(String uuid)
Return load balancer members healthLoadBalancerStatistics
getLoadBalancerStatistics(String uuid)
Return load balancers statistics such as total number of current sessions and total number of accumulated connections.List<Member>
getMembers()
Members assigned to load balancer.LoadBalancer
getObject()
List<SSLCipher>
getSslCiphers()
list of preferred custom ciphers configured for the load balancer.LoadBalancer
serviceLoadBalancer(String data)
void
setMask(LoadBalancer.Mask mask)
LoadBalancer
updateLoadBalancer(String uuid, String newDescription)
Update load balancer's description, and return the load balancer object containing all listeners, pools, members and datacenter.LoadBalancer
updateSslCiphers(String loadBalancerUuid, List<Long> cipherList)
Updates the load balancer with the new cipher list.LoadBalancer.Mask
withMask()
Use the existing mask on this service or create it if not presentLoadBalancer.Mask
withNewMask()
Overwrite the existing mask on this service with a new one and return it-
Methods inherited from interface com.softlayer.api.ResultLimitable
getLastResponseTotalItemCount, getResultLimit, setResultLimit
-
-
-
-
Method Detail
-
asAsync
LoadBalancer.ServiceAsync asAsync()
Description copied from interface:Service
Get an async version of this service
-
withNewMask
LoadBalancer.Mask withNewMask()
Description copied from interface:Maskable
Overwrite the existing mask on this service with a new one and return it- Specified by:
withNewMask
in interfaceMaskable
-
withMask
LoadBalancer.Mask withMask()
Description copied from interface:Maskable
Use the existing mask on this service or create it if not present
-
setMask
void setMask(LoadBalancer.Mask mask)
-
cancelLoadBalancer
@ApiMethod Boolean cancelLoadBalancer(String uuid)
Cancel a load balancer with the given uuid. The billing system will execute the deletion of load balancer and all objects associated with it such as load balancer appliances, listeners, pools and members in the background.
-
enableOrDisableDataLogs
@ApiMethod LoadBalancer enableOrDisableDataLogs(String uuid, Boolean enabled)
When enabled, data log would be forwarded to logging service.
-
getAllObjects
@ApiMethod List<LoadBalancer> getAllObjects()
Return all existing load balancers
-
getListenerTimeSeriesData
@ApiMethod List<LoadBalancerMonitoringMetricDataPoint> getListenerTimeSeriesData(String loadBalancerUuid, String metricName, String timeRange, String listenerUuid)
Return listener time series datapoints. The time series data is available for Throughput, ConnectionRate and ActiveConnections. Throughput is in bits per second. The values are an average over the time range. The time series data is available for 1hour, 6hours, 12hours, 1day, 1week or 2weeks.
-
getLoadBalancer
@ApiMethod LoadBalancer getLoadBalancer(String uuid)
Get the load balancer object with given uuid.
-
getLoadBalancerMemberHealth
@ApiMethod List<PoolMembersHealth> getLoadBalancerMemberHealth(String uuid)
Return load balancer members health
-
getLoadBalancerStatistics
@ApiMethod LoadBalancerStatistics getLoadBalancerStatistics(String uuid)
Return load balancers statistics such as total number of current sessions and total number of accumulated connections.
-
getObject
@ApiMethod(instanceRequired=true) LoadBalancer getObject()
-
serviceLoadBalancer
@ApiMethod LoadBalancer serviceLoadBalancer(String data)
-
updateLoadBalancer
@ApiMethod LoadBalancer updateLoadBalancer(String uuid, String newDescription)
Update load balancer's description, and return the load balancer object containing all listeners, pools, members and datacenter.
-
updateSslCiphers
@ApiMethod LoadBalancer updateSslCiphers(String loadBalancerUuid, List<Long> cipherList)
Updates the load balancer with the new cipher list. All new connections going forward will use the new set of ciphers selected by the user.
-
getDatacenter
@ApiMethod(instanceRequired=true) Location getDatacenter()
Datacenter, where load balancer is located.
-
getHealthMonitors
@ApiMethod(instanceRequired=true) List<HealthMonitor> getHealthMonitors()
Health monitors for the backend members.
-
getL7Pools
@ApiMethod(instanceRequired=true) List<L7Pool> getL7Pools()
L7Pools for load balancer.
-
getListeners
@ApiMethod(instanceRequired=true) List<Listener> getListeners()
Listeners assigned to load balancer.
-
getMembers
@ApiMethod(instanceRequired=true) List<Member> getMembers()
Members assigned to load balancer.
-
getSslCiphers
@ApiMethod(instanceRequired=true) List<SSLCipher> getSslCiphers()
list of preferred custom ciphers configured for the load balancer.
-
-