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

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

Introduction

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

Prototype

public CreateLoadBalancerRequest(String loadBalancerName) 

Source Link

Document

Constructs a new CreateLoadBalancerRequest object.

Usage

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./*from  w  ww  .jav a2 s.  c o m*/
 * 
 * @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 w  w w  .j a  v a 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);
    }
}

From source file:web.component.impl.aws.AWSELBImpl.java

@Override
public CreateLoadBalancerResult createLoadBalancer(String loadBalancerName) {

    if (loadBalancerName == null || loadBalancerName.equals(""))
        throw new IllegalArgumentException("Load Balancer Name not specified.");

    return awsHttpClient.createLoadBalancer(
            new CreateLoadBalancerRequest(loadBalancerName).withListeners(singleton(getDefaultHttpListener())));
}

From source file:web.component.impl.aws.AWSELBImpl.java

@Override
public CreateLoadBalancerResult createLoadBalancer(String loadBalancerName, String certificateId) {

    if (loadBalancerName == null || loadBalancerName.equals(""))
        throw new IllegalArgumentException("Load Balancer Name not specified.");
    if (certificateId == null || certificateId.equals(""))
        throw new IllegalArgumentException("Certificate ID not specified.");

    return awsHttpClient.createLoadBalancer(new CreateLoadBalancerRequest(loadBalancerName)
            .withListeners(singleton(getDefaultHttpsListener(certificateId))));
}

From source file:web.component.impl.aws.AWSELBImpl.java

@Override
public CreateLoadBalancerResult createLoadBalancer(String loadBalancerName, Collection<Listener> listeners) {

    if (loadBalancerName == null || loadBalancerName.equals(""))
        throw new IllegalArgumentException("Load Balancer Name not specified.");
    if (listeners == null || listeners.isEmpty())
        throw new IllegalArgumentException("Listeners not specified.");

    return awsHttpClient
            .createLoadBalancer(new CreateLoadBalancerRequest(loadBalancerName).withListeners(listeners));
}

From source file:web.component.impl.aws.AWSELBImpl.java

@Override
public CreateLoadBalancerResult createLoadBalancerWithSubnets(String loadBalancerName,
        Collection<Listener> listeners, Collection<String> subnetIds) {

    if (loadBalancerName == null || loadBalancerName.equals(""))
        throw new IllegalArgumentException("Load Balancer Name not specified.");
    if (listeners == null || listeners.isEmpty())
        throw new IllegalArgumentException("Listeners not specified.");
    if (subnetIds == null || subnetIds.isEmpty())
        throw new IllegalArgumentException("Subnets not specified.");

    return awsHttpClient.createLoadBalancer(
            new CreateLoadBalancerRequest(loadBalancerName).withListeners(listeners).withSubnets(subnetIds));
}

From source file:web.component.impl.aws.AWSELBImpl.java

@Override
public CreateLoadBalancerResult createLoadBalancerWithAvailabilityZones(String loadBalancerName,
        Collection<Listener> listeners, Collection<AvailabilityZone> availabilityZones) {

    if (loadBalancerName == null || loadBalancerName.equals(""))
        throw new IllegalArgumentException("Load Balancer Name not specified.");
    if (listeners == null || listeners.isEmpty())
        throw new IllegalArgumentException("Listeners not specified.");
    if (availabilityZones == null || availabilityZones.isEmpty())
        throw new IllegalArgumentException("Availability zones not specified.");

    return awsHttpClient.createLoadBalancer(
            new CreateLoadBalancerRequest(loadBalancerName).withListeners(listeners).withAvailabilityZones(
                    availabilityZones.stream().map(AvailabilityZone::getZoneName).collect(toList())));
}