Example usage for com.amazonaws.services.elasticloadbalancing.model CreateLoadBalancerRequest setListeners

List of usage examples for com.amazonaws.services.elasticloadbalancing.model CreateLoadBalancerRequest setListeners

Introduction

In this page you can find the example usage for com.amazonaws.services.elasticloadbalancing.model CreateLoadBalancerRequest setListeners.

Prototype


public void setListeners(java.util.Collection<Listener> listeners) 

Source Link

Document

The listeners.

Usage

From source file:com.hazelcast.simulator.provisioner.AwsProvisioner.java

License:Open Source License

String createLoadBalancer(String name) {
    CreateLoadBalancerRequest request = new CreateLoadBalancerRequest();
    request.setLoadBalancerName(name);//  w ww  .  j  av  a  2  s  .  c om
    request.withAvailabilityZones(elbAvailabilityZones.split(","));

    List<Listener> listeners = new ArrayList<Listener>();
    listeners.add(new Listener(elbProtocol, elbPortIn, elbPortOut));
    request.setListeners(listeners);

    CreateLoadBalancerResult lbResult = elb.createLoadBalancer(request);
    appendText(lbResult.getDNSName() + NEW_LINE, elbFile);

    return request.getLoadBalancerName();
}

From source file:com.kpbird.aws.Main.java

public void createElasticLoadBalancing() {
    try {/*from   w  w  w  .  ja  va  2 s  . c om*/
        AmazonElasticLoadBalancingClient aebc = new AmazonElasticLoadBalancingClient(credentials);
        aebc.setEndpoint(endPoint);
        aebc.setRegion(region);

        String instanceid = Util.getInstanceId(InstanceName, credentials, endPoint, region);
        String azone = Util.getAvailabilityZone(instanceid, credentials, endPoint, region);

        CreateLoadBalancerRequest cbr = new CreateLoadBalancerRequest();
        cbr.setLoadBalancerName(elbName);

        ArrayList<Listener> arrListener = new ArrayList<Listener>();
        arrListener.add(new Listener().withInstancePort(ListenerInstancePort)
                .withInstanceProtocol(ListenerInstanceProtocol).withLoadBalancerPort(ListenerPort)
                .withProtocol(ListenerProtocol));
        cbr.setListeners(arrListener);

        ArrayList<String> arrAvailabilityZone = new ArrayList<String>();
        arrAvailabilityZone.add(azone);
        cbr.setAvailabilityZones(arrAvailabilityZone);

        CreateLoadBalancerResult cbresult = aebc.createLoadBalancer(cbr);
        log.Info("DNS Name " + cbresult.getDNSName());

        // wait for process complete

        ConfigureHealthCheckRequest chcr = new ConfigureHealthCheckRequest();
        chcr.setLoadBalancerName(elbName);
        HealthCheck healthCK = new HealthCheck();
        healthCK.withHealthyThreshold(HealthyThreshold);
        healthCK.withInterval(HealthInterval);
        healthCK.withTarget(HealthTarget);
        healthCK.withTimeout(HealthTimeout);
        healthCK.withUnhealthyThreshold(HealthUnhealthyThreshold);
        chcr.setHealthCheck(healthCK);

        aebc.configureHealthCheck(chcr);

        // wait for process complete         

        RegisterInstancesWithLoadBalancerRequest riwbr = new RegisterInstancesWithLoadBalancerRequest();
        riwbr.setLoadBalancerName(elbName);

        ArrayList<com.amazonaws.services.elasticloadbalancing.model.Instance> arrInstances = new ArrayList<com.amazonaws.services.elasticloadbalancing.model.Instance>();
        com.amazonaws.services.elasticloadbalancing.model.Instance i = new com.amazonaws.services.elasticloadbalancing.model.Instance(
                instanceid);
        arrInstances.add(i);
        riwbr.setInstances(arrInstances);

        RegisterInstancesWithLoadBalancerResult riwbresult = aebc.registerInstancesWithLoadBalancer(riwbr);

    } catch (Exception e) {
        e.printStackTrace();
    }

}

From source file:com.swap.aws.elb.client.AWSHelper.java

License:Apache License

/**
 * Creates a load balancer and returns its DNS name. Useful when a new
 * cluster is added.// ww w . ja  va2  s .  c  om
 * 
 * @param name
 * @param listeners
 * @return DNS name of newly created load balancer
 */
public String createLoadBalancer(String name, List<Listener> listeners) {
    try {
        CreateLoadBalancerRequest createLoadBalancerRequest = new CreateLoadBalancerRequest(name);

        createLoadBalancerRequest.setListeners(listeners);

        Set<String> availabilityZones = new HashSet<String>();
        availabilityZones.add(availabilityZone);

        createLoadBalancerRequest.setAvailabilityZones(availabilityZones);

        AmazonElasticLoadBalancingClient lbClient = new AmazonElasticLoadBalancingClient(awsCredentials,
                clientConfiguration);

        lbClient.setEndpoint("elasticloadbalancing." + this.region + ".amazonaws.com");

        CreateLoadBalancerResult clbResult = lbClient.createLoadBalancer(createLoadBalancerRequest);

        System.out.println("Created load balancer : " + clbResult.getDNSName());

        return clbResult.getDNSName();
    } catch (Exception e) {
        log.error("Could not create load balancer : " + name + ".");
        e.printStackTrace();
        return null;
    }
}

From source file:org.apache.stratos.aws.extension.AWSHelper.java

License:Apache License

/**
 * Creates a load balancer and returns its DNS name. Useful when a new
 * cluster is added.//from   ww  w. j  ava 2  s .co m
 *
 * @param name      of the load balancer to be created
 * @param listeners to be attached to the load balancer
 * @param region    in which the load balancer needs to be created
 * @return DNS name of newly created load balancer
 * @throws LoadBalancerExtensionException
 */
public String createLoadBalancer(String name, List<Listener> listeners, String region,
        Set<String> availabilityZones, boolean inVPC) throws LoadBalancerExtensionException {

    log.info("Creating load balancer " + name);

    CreateLoadBalancerRequest createLoadBalancerRequest = new CreateLoadBalancerRequest(name);

    createLoadBalancerRequest.setListeners(listeners);

    // don't need this now since we are anyway updating zone according to the member
    //      Set<String> availabilityZones = new HashSet<String>();
    //      availabilityZones.add(getAvailabilityZoneFromRegion(region));
    //
    //      createLoadBalancerRequest.setAvailabilityZones(availabilityZones);

    try {
        if (inVPC) {

            List<String> securityGroups = new ArrayList<String>();
            if (!vpcIds.isEmpty()) {
                for (String vpcId : vpcIds) {
                    String securityGroupId = getSecurityGroupIdForRegion(region, vpcId);
                    securityGroups.add(securityGroupId);
                }
            } else {
                String securityGroupId = getSecurityGroupIdForRegion(region, null);
                securityGroups.add(securityGroupId);
            }

            createLoadBalancerRequest.setSecurityGroups(securityGroups);

            // set subnet ids
            if (!getSubnetIds().isEmpty()) {
                createLoadBalancerRequest.setSubnets(subnetIds);
            }

            // set scheme to 'internal' if specified
            if (getLbScheme() != null && getLbScheme().equals(Constants.LB_SCHEME_INTERNAL)) {
                createLoadBalancerRequest.setScheme(getLbScheme());
            }
        } else {
            // set initial availability zones
            createLoadBalancerRequest.setAvailabilityZones(availabilityZones);
        }

        elbClient.setEndpoint(String.format(Constants.ELB_ENDPOINT_URL_FORMAT, region));

        CreateLoadBalancerResult clbResult = elbClient.createLoadBalancer(createLoadBalancerRequest);

        return clbResult.getDNSName();

    } catch (AmazonClientException e) {
        String errorMsg = "Could not create load balancer " + name;
        log.error(errorMsg, e);
        throw new LoadBalancerExtensionException(errorMsg, e);
    }
}