/burdened-acrobat

Juggling unreasonable load balancer counts with ease!

Primary LanguageRubyMIT LicenseMIT

Burdened Acrobat

Overview

burdened-acrobat helps identity specific load balancers (or groups of load balancers), when you have an unreasonable number of them. It does this by treating the problem as one of set membership.

Why does this exist?

Some orchestration systems create large numbers of load balancers. Eventually, this becomes unwieldy to manage. burdened-acrobat makes it simple again.

Installation

gem install burdened-acrobat

Usage

require 'burdened-acrobat'

load_balancers = BurdenedAcrobat::LoadBalancers.new

load_balancers.search do
  tagged('KubernetesCluster') & with('subnet-abv123') & tagged('kubernetes.io/service-name', 'app/identity-service')
end

burdened-acrobat operates on two main sets of information: Load Balancers, and Tags.

Tags

LoadBalancers#tags returns tags.

Given these ArgumentsExpect to get a collection of…
NoneAll tags
A tag nameAll tags matching that name
A tag name, and a valueAll tags matching that name and value
A collection of load balancersThe tags on those load balancers

Load Balancers

LoadBalancers#tagged returns load balancers.

Given these argumentsExpect to get a collection of…
NoneAll load balancers with tags
A tag nameAll load balancers with the given tag
A tag name, and a valueAll load balancers where the given tag matches the value
A collection of tagsAll load balancers matching those tags

Everything!

LoadBalancers#all returns all load balancers.

Names

LoadBalancers#names accepts tags or load balancers, and returns names.

Using Names

LoadBalancers#named accepts names, and returns load balancers.

Complex Searches

Everything returned is in the form of Sets. This allows building complex filters using #intersection, #union, #difference, and so on.

AWS-specific extras

When using Amazon ELBs, burdened-acrobat provides additional filters.

-LoadBalancers#with~ returns load balancers.

Given these argumentsExpect to get a collection of
A VPCAll load balancers in that VPC
A security groupAll load balancers using that security group
A subnetALl load balancers using that subnet

License

burdened-acrobat is available under the MIT License. See LICENSE.txt for the full text.

Contributors