List of usage examples for com.amazonaws.services.autoscaling.model TerminateInstanceInAutoScalingGroupRequest TerminateInstanceInAutoScalingGroupRequest
TerminateInstanceInAutoScalingGroupRequest
From source file:com.pinterest.arcee.autoscaling.AwsAutoScaleGroupManager.java
License:Apache License
@Override public void terminateInstanceInAutoScalingGroup(String instanceId, boolean decreaseSize) throws Exception { TerminateInstanceInAutoScalingGroupRequest request = new TerminateInstanceInAutoScalingGroupRequest(); request.setShouldDecrementDesiredCapacity(decreaseSize); request.setInstanceId(instanceId);//from www. j ava 2s .c o m aasClient.terminateInstanceInAutoScalingGroup(request); }
From source file:com.pinterest.clusterservice.cm.AwsVmManager.java
License:Apache License
@Override public void terminateHosts(String clusterName, Collection<String> hostIds, boolean replaceHost) throws Exception { if (replaceHost) { TerminateInstancesRequest termianteRequest = new TerminateInstancesRequest(); termianteRequest.setInstanceIds(hostIds); try {/*from www . j a v a 2s . co m*/ ec2Client.terminateInstances(termianteRequest); } catch (AmazonClientException e) { LOG.error(String.format("Failed to termiante hosts %s: %s", hostIds.toString(), e.getMessage())); throw new Exception( String.format("Failed to termiante hosts %s: %s", hostIds.toString(), e.getMessage())); } } else { // Do not replace host and decrease the cluster capacity AutoScalingGroup group = getAutoScalingGroup(clusterName); if (group == null) { LOG.error(String.format("Failed to terminate hosts: auto scaling group %s does not exist", clusterName)); throw new Exception(String.format("Failed to terminate hosts: auto scaling group %s does not exist", clusterName)); } UpdateAutoScalingGroupRequest updateRequest = new UpdateAutoScalingGroupRequest(); updateRequest.setAutoScalingGroupName(clusterName); updateRequest.setMinSize(Math.max(group.getMinSize() - hostIds.size(), 0)); for (String hostId : hostIds) { TerminateInstanceInAutoScalingGroupRequest terminateRequest = new TerminateInstanceInAutoScalingGroupRequest(); terminateRequest.setShouldDecrementDesiredCapacity(true); terminateRequest.setInstanceId(hostId); aasClient.terminateInstanceInAutoScalingGroup(terminateRequest); } } }
From source file:org.xmlsh.aws.asTerminateInstance.java
License:BSD License
private int terminate(String instanceId, boolean bDecrement) throws IOException, XMLStreamException, SaxonApiException, CoreException { OutputPort stdout = getStdout();/*from w ww . j av a2s . c o m*/ mWriter = new SafeXMLStreamWriter(stdout.asXMLStreamWriter(getSerializeOpts())); startDocument(); startElement(getName()); traceCall("terminateInstanceInAutoScalingGroup"); TerminateInstanceInAutoScalingGroupRequest request = new TerminateInstanceInAutoScalingGroupRequest() .withInstanceId(instanceId).withShouldDecrementDesiredCapacity(bDecrement); TerminateInstanceInAutoScalingGroupResult result = getAWSClient() .terminateInstanceInAutoScalingGroup(request); writeActivity(result.getActivity()); endElement(); endDocument(); closeWriter(); stdout.writeSequenceTerminator(getSerializeOpts()); return 0; }
From source file:web.component.impl.aws.AWSAutoScalingImpl.java
@Override public TerminateInstanceInAutoScalingGroupResult terminateInstanceInAutoScalingGroup(String instanceId) { return terminateInstanceInAutoScalingGroup(new TerminateInstanceInAutoScalingGroupRequest() .withInstanceId(instanceId).withShouldDecrementDesiredCapacity(false)); }
From source file:web.component.impl.aws.AWSAutoScalingImpl.java
@Override public TerminateInstanceInAutoScalingGroupResult terminateInstanceInAutoScalingGroupDecreasingDesiredCapacity( String instanceId) {//from w ww . j av a 2 s.c o m return terminateInstanceInAutoScalingGroup(new TerminateInstanceInAutoScalingGroupRequest() .withInstanceId(instanceId).withShouldDecrementDesiredCapacity(true)); }