Example usage for com.amazonaws.services.elasticloadbalancing.model ConfigureHealthCheckRequest setHealthCheck

List of usage examples for com.amazonaws.services.elasticloadbalancing.model ConfigureHealthCheckRequest setHealthCheck

Introduction

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

Prototype


public void setHealthCheck(HealthCheck healthCheck) 

Source Link

Document

The configuration information.

Usage

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

public void createElasticLoadBalancing() {
    try {//w  w  w. jav a  2 s. com
        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();
    }

}