2012-04-29 15 views
3

をプロジェクトの一部として作成します。アマゾンAWSで新しいロードバランサを作成する必要があります。 java sdkを使用して行う必要がありますAWSでロードバランサを作成するには、AWS java sdk

コードを使用してロードバランサを設定するにはどうすればよいですか?

ここまでは私がこれまでに成功しなかったものです。

//create load balancer 
     CreateLoadBalancerRequest lbRequest = new CreateLoadBalancerRequest(); 
     lbRequest.setLoadBalancerName("loader"); 
     List<Listener> listeners = new ArrayList<Listener>(1); 
     listeners.add(new Listener("HTTP", 80, 80)); 
     lbRequest.withAvailabilityZones(availabilityZone1,availabilityZone2); 
     lbRequest.setListeners(listeners); 

     CreateLoadBalancerResult lbResult=new CreateLoadBalancerResult(); 
     System.out.println("created load balancer loader"); 

答えて

13

はよくfinelly私はそれを得た:

最初にあなたを登録し、その後、要求

//create load balancer 
     CreateLoadBalancerRequest lbRequest = new CreateLoadBalancerRequest(); 
     lbRequest.setLoadBalancerName("loader"); 
     List<Listener> listeners = new ArrayList<Listener>(1); 
     listeners.add(new Listener("HTTP", 80, 80)); 
     lbRequest.withAvailabilityZones(availabilityZone1,availabilityZone2); 
     lbRequest.setListeners(listeners); 

     CreateLoadBalancerResult lbResult=elb.createLoadBalancer(lbRequest); 
     System.out.println("created load balancer loader"); 

を開始するためにそれを使用し、その後ELBのクライアントに

AmazonElasticLoadBalancingClient elb = new AmazonElasticLoadBalancingClient(credentials); 

を作成しますにロードバランサ

//get the running instances 
     DescribeInstancesResult describeInstancesRequest = ec2.describeInstances(); 
     List<Reservation> reservations = describeInstancesRequest.getReservations(); 
     List<Instance> instances = new ArrayList<Instance>(); 

     for (Reservation reservation : reservations) { 
      instances.addAll(reservation.getInstances()); 
     } 


     //get instance id's 
     String id; 
     List instanceId=new ArrayList(); 
     List instanceIdString=new ArrayList(); 
     Iterator<Instance> iterator=instances.iterator(); 
     while (iterator.hasNext()) 
     { 
      id=iterator.next().getInstanceId(); 
      instanceId.add(new com.amazonaws.services.elasticloadbalancing.model.Instance(id)); 
      instanceIdString.add(id); 
     } 


     //register the instances to the balancer 
     RegisterInstancesWithLoadBalancerRequest register =new RegisterInstancesWithLoadBalancerRequest(); 
     register.setLoadBalancerName("loader"); 
     register.setInstances((Collection)instanceId); 
     RegisterInstancesWithLoadBalancerResult registerWithLoadBalancerResult= elb.registerInstancesWithLoadBalancer(register); 

と設定が完了しているとのスタンス...

関連する問題