Class: RightScale::CloudApi::AWS::ELB::Manager

Inherits:
Manager
  • Object
show all
Defined in:
lib/cloud/aws/elb/manager.rb

Overview

Amazon Elastic Load Balancing (ELB) compatible manager (thread safe).

Examples:

require "right_aws_api"

elb = RightScale::CloudApi::AWS::ELB::Manager::new(key, secret, 'https://elasticloadbalancing.amazonaws.com')

# List Load Balancers
elb.DescribeLoadBalancers #=>
  {"DescribeLoadBalancersResponse"=>
    {"@xmlns"=>"http://elasticloadbalancing.amazonaws.com/doc/2011-11-15/",
     "DescribeLoadBalancersResult"=>
      {"LoadBalancerDescriptions"=>
        {"member"=>
          [{"SecurityGroups"=>nil,
            "CreatedTime"=>"2011-05-20T00:07:57.390Z",
            "LoadBalancerName"=>"test",
            "HealthCheck"=>
             {"Interval"=>"30",
              "Target"=>"TCP:80",
              "HealthyThreshold"=>"10",
              "Timeout"=>"5",
              "UnhealthyThreshold"=>"2"},
            "ListenerDescriptions"=>
             {"member"=>
               {"PolicyNames"=>nil,
                "Listener"=>
                 {"Protocol"=>"HTTP",
                  "LoadBalancerPort"=>"80",
                  "InstanceProtocol"=>"HTTP",
                  "InstancePort"=>"80"}}},
            "Instances"=>nil,
            "Policies"=>
             {"AppCookieStickinessPolicies"=>nil,
              "OtherPolicies"=>nil,
              "LBCookieStickinessPolicies"=>nil},
            "AvailabilityZones"=>
             {"member"=>
               ["us-east-1c", "us-east-1b", "us-east-1a", "us-east-1d"]},
            "CanonicalHostedZoneName"=>
             "test-1900221105.us-east-1.elb.amazonaws.com",
            "CanonicalHostedZoneNameID"=>"Z3DZXE0Q79N41H",
            "SourceSecurityGroup"=>
             {"OwnerAlias"=>"amazon-elb", "GroupName"=>"amazon-elb-sg"},
            "DNSName"=>"test-1900221105.us-east-1.elb.amazonaws.com",
            "BackendServerDescriptions"=>nil,
            "Subnets"=>nil}]}},
     "ResponseMetadata"=>{"RequestId"=>"a96cfe8c-4f70-11e2-a887-0189db71cd82"}}}
# Delete a Load Balancer
elb.DeleteLoadBalancer('LoadBalancerName' => 'MyLoadBalancere')

See Also: