List of usage examples for com.amazonaws.services.elasticloadbalancing.model HealthCheck withUnhealthyThreshold
public HealthCheck withUnhealthyThreshold(Integer unhealthyThreshold)
The number of consecutive health check failures required before moving the instance to the Unhealthy state.
From source file:com.kpbird.aws.Main.java
public void createElasticLoadBalancing() { try {//from www .j a v a 2s . 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(); } }
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); // ??????//from w ww .ja v a 2 s.c o m 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() }); }