class AWS::ELB::LoadBalancerCollection

def create name, options = {}

Options Hash: (**options)
  • :server_certificate (String, IAM::ServerCertificate) --
  • :listeners (required, Array) -- An array of load balancer
  • :availability_zones (required, Array) -- An array of

Parameters:
  • options (Hash) --
  • name (String) -- The name of your load balancer. The name must
def create name, options = {}
  
  zones = [options[:availability_zones]].flatten.collect do |zone|
    zone.is_a?(EC2::AvailabilityZone) ? zone.name : zone
  end
  listeners = [options[:listeners]].flatten.collect do |listener_opts|
    format_listener_opts(listener_opts)
  end
  response = client.create_load_balancer(
    :load_balancer_name => name.to_s,
    :availability_zones => zones,
    :listeners => listeners)
  opts = {}
  opts[:config] = config
  opts[:dns_name] = response.dns_name
  LoadBalancer.new(name, opts)
end