List of usage examples for com.amazonaws.services.elasticloadbalancing.model HealthCheck withTimeout
public HealthCheck withTimeout(Integer timeout)
The amount of time, in seconds, during which no response means a failed health check.
From source file:com.kpbird.aws.Main.java
public void createElasticLoadBalancing() { try {//w ww . j ava2s. c o m 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:jp.primecloud.auto.process.aws.AwsLoadBalancerProcess.java
License:Open Source License
public void configureHealthCheck(AwsProcessClient awsProcessClient, Long loadBalancerNo) { LoadBalancerHealthCheck healthCheck = loadBalancerHealthCheckDao.read(loadBalancerNo); // ??????//w w w.j av a2 s . c om if (healthCheck == null) { return; } AwsLoadBalancer awsLoadBalancer = awsLoadBalancerDao.read(loadBalancerNo); // ?? HealthCheck healthCheck2 = new HealthCheck(); String target = healthCheck.getCheckProtocol() + ":" + healthCheck.getCheckPort(); if (StringUtils.isNotEmpty(healthCheck.getCheckPath())) { if (healthCheck.getCheckPath().charAt(0) != '/') { target = target + "/"; } target = target + healthCheck.getCheckPath(); } healthCheck2.withTarget(target); healthCheck2.withTimeout(healthCheck.getCheckTimeout()); healthCheck2.withInterval(healthCheck.getCheckInterval()); healthCheck2.withHealthyThreshold(healthCheck.getHealthyThreshold()); healthCheck2.withUnhealthyThreshold(healthCheck.getUnhealthyThreshold()); // ??????? LoadBalancerDescription description = awsCommonProcess.describeLoadBalancer(awsProcessClient, awsLoadBalancer.getName()); HealthCheck healthCheck3 = description.getHealthCheck(); if (StringUtils.equals(healthCheck2.getTarget(), healthCheck3.getTarget()) && ObjectUtils.equals(healthCheck2.getTimeout(), healthCheck3.getTimeout()) && ObjectUtils.equals(healthCheck2.getInterval(), healthCheck3.getInterval()) && ObjectUtils.equals(healthCheck2.getHealthyThreshold(), healthCheck3.getHealthyThreshold()) && ObjectUtils.equals(healthCheck2.getUnhealthyThreshold(), healthCheck3.getUnhealthyThreshold())) { return; } // ? ConfigureHealthCheckRequest request = new ConfigureHealthCheckRequest(); request.withLoadBalancerName(awsLoadBalancer.getName()); request.withHealthCheck(healthCheck2); awsProcessClient.getElbClient().configureHealthCheck(request); if (log.isInfoEnabled()) { log.info(MessageUtils.getMessage("IPROCESS-200131", awsLoadBalancer.getName())); } // processLogger.debug(null, null, "AwsElbHealthCheckConfig", new Object[] { awsProcessClient.getPlatform().getPlatformName(), awsLoadBalancer.getName() }); }