Skip to content

Create semantic interface for Load Balancers (Local) #25

Open

Description

@cbreden
No description provided.

Activity

  1. cbreden commented on Jun 17, 2014

    @cbreden
    Author

    The local load balancer is a bit of a beast with three key components: the load balancer, load balancer groups, and the services within a group. I think a polished semantic with be particularly helpful to people here. Whether we keep it all in one object or break it out is certainly up for debate...

    Load Balancer

    • Get single load balancer (by id, by ip, by other criteria...)
    • Get all load balancers (with optional filter criteria)
    • Get load balancers given a BMI/VG/service name (potential utility function that maybe belongs in other classes)
    • Order/Create
    • Destroy
    • Get single group (by id, by port, by other criteria...)
    • Get all groups (with optional filter criteria)
    • Add / Delete group
    • Edit group
    • Balance groups or equivalent (Important utility function to help manage allocation during adds/deletes. I suggest making this behavior automatic with ability to turn it off. Most people will probably want groups to be equally distributed by default)

    Load Balancer Group

    You can always have alternative incoming/destination port mappings which form unique services, but most calls can probably default/assume the destination port is the as the LB group port (treat it as an optional parameter that defaults to the group's port)

    • Get service by IP/Port/Destination Port
    • Add service (ip, health_check_type, weight, enabled, notes, port)
    • Edit service
    • Delete service
    • Toggle service (status enabled<->disabled)

    Utility

    • Get routing methods
    • Get routing types

    Necessary Services

  2. madwort commented on Oct 8, 2015

    @madwort

    Hi there, do you have any plans to implement this? Have recently moved a bunch of servers / load balancers to Softlayer from another hosting company & it would be super useful to be able to access this from https://github.com/softlayer/knife-softlayer

  3. madwort commented on Oct 8, 2015

    @madwort

    P.S. The subset of functionality we're most interested in would be

    • getting a list of load balancers
    • getting a list of services for a given load balancer
    • editing the configuration of services for given load balancer
  4. SLsthompson commented on Oct 8, 2015

    @SLsthompson
    Collaborator

    There are no definite plans to implement this interface. Work on the Ruby client is done on a volunteer basis (we don't have any engineering resources dedicated to it). The original implementation plan was to take the functionality available through the Python language bindings and re-create it through the softlayer_api gem.

    I will make sure that your desire to see this implemented "sooner" is known.

  5. SLsthompson commented on Oct 8, 2015

    @SLsthompson
    Collaborator

    OT: Incidentally we recently released changes to the load balancer interface within the SoftLayer Control Portal. The changes were made to accommodate customers who felt the previous interface was difficult to navigate. If you have any feedback (positive or negative) about those changes we would be happy to receive that feedback through the email address portalfeedback in the softlayer.com domain.

  6. madwort commented on Oct 8, 2015

    @madwort

    Interesting, yes, my colleagues found UI problems with the new system, which was what prompted me to research an automated solution, which brought me here. I'll tell them to send an email...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions