Examples of AmazonEC2Client


Examples of com.amazonaws.services.ec2.AmazonEC2Client

    @Override
    public boolean checkStatus(AutoScalingGroupReady asGroupReady) {
        MDCBuilder.buildMdcContext(asGroupReady.getStack());
        LOGGER.info("Checking status of autoscaling group '{}'", asGroupReady.getAutoScalingGroupName());
        AmazonEC2Client amazonEC2Client = asGroupReady.getAmazonEC2Client();
        List<String> instanceIds = cfStackUtil.getInstanceIds(asGroupReady.getAutoScalingGroupName(), asGroupReady.getAmazonASClient());
        if (instanceIds.size() < asGroupReady.getRequiredInstances()) {
            return false;
        }
        DescribeInstanceStatusResult describeResult = amazonEC2Client.describeInstanceStatus(new DescribeInstanceStatusRequest().withInstanceIds(instanceIds));
        if (describeResult.getInstanceStatuses().size() < asGroupReady.getRequiredInstances()) {
            return false;
        }
        for (InstanceStatus status : describeResult.getInstanceStatuses()) {
            if (INSTANCE_RUNNING != status.getInstanceState().getCode()) {
View Full Code Here

Examples of com.amazonaws.services.ec2.AmazonEC2Client

                } else {
                    throw e;
                }
            }
            try {
                AmazonEC2Client ec2Client = awsStackUtil.createEC2Client(awsInfra.getRegion(), awsCredential);
                DescribeInstancesRequest instancesRequest = new DescribeInstancesRequest()
                        .withFilters(new Filter().withName("tag:" + INSTANCE_TAG_NAME).withValues(resource.getResourceName()));
                instancesResult = ec2Client.describeInstances(instancesRequest);
            } catch (Exception ex) {
                LOGGER.error(ex.getMessage(), ex);
                instancesResult = new DescribeInstancesResult();
            }
View Full Code Here

Examples of com.amazonaws.services.ec2.AmazonEC2Client

        MDCBuilder.buildMdcContext(stack);
        Integer requiredInstances = stack.getNodeCount() + instanceCount;
        Regions region = ((AwsTemplate) stack.getTemplate()).getRegion();
        AwsCredential credential = (AwsCredential) stack.getCredential();
        AmazonAutoScalingClient amazonASClient = awsStackUtil.createAutoScalingClient(region, credential);
        AmazonEC2Client amazonEC2Client = awsStackUtil.createEC2Client(region, credential);
        String asGroupName = cfStackUtil.getAutoscalingGroupName(stack);
        amazonASClient.updateAutoScalingGroup(new UpdateAutoScalingGroupRequest()
                .withAutoScalingGroupName(asGroupName)
                .withMaxSize(requiredInstances)
                .withDesiredCapacity(requiredInstances));
View Full Code Here

Examples of com.amazonaws.services.ec2.AmazonEC2Client

    public boolean removeInstances(Stack stack, Set<String> instanceIds) {
        MDCBuilder.buildMdcContext(stack);
        Regions region = ((AwsTemplate) stack.getTemplate()).getRegion();
        AwsCredential credential = (AwsCredential) stack.getCredential();
        AmazonAutoScalingClient amazonASClient = awsStackUtil.createAutoScalingClient(region, credential);
        AmazonEC2Client amazonEC2Client = awsStackUtil.createEC2Client(region, credential);

        String asGroupName = cfStackUtil.getAutoscalingGroupName(stack);
        DetachInstancesRequest detachInstancesRequest = new DetachInstancesRequest().withAutoScalingGroupName(asGroupName).withInstanceIds(instanceIds)
                .withShouldDecrementDesiredCapacity(true);
        amazonASClient.detachInstances(detachInstancesRequest);
        amazonEC2Client.terminateInstances(new TerminateInstancesRequest().withInstanceIds(instanceIds));
        LOGGER.info("Terminated instances in stack '{}': '{}'", stack.getId(), instanceIds);
        LOGGER.info("Publishing {} event [StackId: '{}']", ReactorConfig.STACK_UPDATE_SUCCESS_EVENT, stack.getId());
        reactor.notify(ReactorConfig.STACK_UPDATE_SUCCESS_EVENT, Event.wrap(new StackUpdateSuccess(stack.getId(), true, instanceIds)));
        return true;
    }
View Full Code Here

Examples of com.amazonaws.services.ec2.AmazonEC2Client

        MDCBuilder.buildMdcContext(stack);
        boolean result = true;
        Regions region = ((AwsTemplate) stack.getTemplate()).getRegion();
        AwsCredential credential = (AwsCredential) stack.getCredential();
        AmazonAutoScalingClient amazonASClient = awsStackUtil.createAutoScalingClient(region, credential);
        AmazonEC2Client amazonEC2Client = awsStackUtil.createEC2Client(region, credential);
        String asGroupName = cfStackUtil.getAutoscalingGroupName(stack);
        Set<InstanceMetaData> instanceMetaData = stack.getInstanceMetaData();
        Collection<String> instances = new ArrayList<>(instanceMetaData.size());
        for (InstanceMetaData instance : instanceMetaData) {
            instances.add(instance.getInstanceId());
        }
        try {
            if (stopped) {
                amazonASClient.suspendProcesses(new SuspendProcessesRequest().withAutoScalingGroupName(asGroupName));
                amazonEC2Client.stopInstances(new StopInstancesRequest().withInstanceIds(instances));
            } else {
                amazonASClient.resumeProcesses(new ResumeProcessesRequest().withAutoScalingGroupName(asGroupName));
                amazonEC2Client.startInstances(new StartInstancesRequest().withInstanceIds(instances));
                awsPollingService.pollWithTimeout(
                        new AwsInstanceStatusCheckerTask(),
                        new AwsInstances(stack, amazonEC2Client, new ArrayList(instances), "Running"),
                        AmbariClusterConnector.POLLING_INTERVAL,
                        AmbariClusterConnector.MAX_ATTEMPTS_FOR_AMBARI_OPS);
View Full Code Here

Examples of com.amazonaws.services.ec2.AmazonEC2Client

        AwsTemplate awsTemplate = (AwsTemplate) stack.getTemplate();
        AwsCredential awsCredential = (AwsCredential) stack.getCredential();

        AmazonCloudFormationClient amazonCFClient = awsStackUtil.createCloudFormationClient(awsTemplate.getRegion(), awsCredential);
        AmazonAutoScalingClient amazonASClient = awsStackUtil.createAutoScalingClient(awsTemplate.getRegion(), awsCredential);
        AmazonEC2Client amazonEC2Client = awsStackUtil.createEC2Client(awsTemplate.getRegion(), awsCredential);

        List<String> instanceIds = cfStackUtil.getInstanceIds(stack, amazonASClient, amazonCFClient);
        // If spot priced instances are used, CloudFormation signals completion
        // when the spot requests are made but the instances are not running
        // yet, so we will have to wait until the spot requests are fulfilled
        // (there are as many instances in the ASG as needed)
        if (awsTemplate.getSpotPrice() != null) {
            while (instanceIds.size() < stack.getNodeCount()) {
                LOGGER.info("Spot requests for stack '{}' are not fulfilled yet. Trying to reach instances in the next polling interval.", stack.getId());
                awsStackUtil.sleep(stack, POLLING_INTERVAL);
                instanceIds = cfStackUtil.getInstanceIds(stack, amazonASClient, amazonCFClient);
            }
        }

        DescribeInstancesRequest instancesRequest = new DescribeInstancesRequest().withInstanceIds(instanceIds);
        DescribeInstancesResult instancesResult = amazonEC2Client.describeInstances(instancesRequest);
        for (Reservation reservation : instancesResult.getReservations()) {
            for (com.amazonaws.services.ec2.model.Instance instance : reservation.getInstances()) {
                coreInstanceMetadata.add(new CoreInstanceMetaData(
                        instance.getInstanceId(),
                        instance.getPrivateIpAddress(),
View Full Code Here

Examples of com.amazonaws.services.ec2.AmazonEC2Client

    @Override
    public void addNewNodesToMetadata(Stack stack, Set<Resource> resourceList) {
        MDCBuilder.buildMdcContext(stack);
        Set<CoreInstanceMetaData> coreInstanceMetadata = new HashSet<>();
        LOGGER.info("Adding new instances to metadata: [stack: '{}']", stack.getId());
        AmazonEC2Client amazonEC2Client = awsStackUtil.createEC2Client(
                ((AwsTemplate) stack.getTemplate()).getRegion(),
                (AwsCredential) stack.getCredential());
        List<String> instanceIds = cfStackUtil.getInstanceIds(stack);
        DescribeInstancesRequest instancesRequest = new DescribeInstancesRequest().withInstanceIds(instanceIds);
        DescribeInstancesResult instancesResult = amazonEC2Client.describeInstances(instancesRequest);
        for (Reservation reservation : instancesResult.getReservations()) {
            for (final com.amazonaws.services.ec2.model.Instance instance : reservation.getInstances()) {
                boolean metadataExists = FluentIterable.from(stack.getInstanceMetaData()).anyMatch(new Predicate<InstanceMetaData>() {
                    @Override
                    public boolean apply(InstanceMetaData input) {
View Full Code Here

Examples of com.amazonaws.services.ec2.AmazonEC2Client

    public AmazonEC2Client createEC2Client(Regions regions, AwsCredential credential) {
        MDCBuilder.buildMdcContext(credential);
        BasicSessionCredentials basicSessionCredentials = credentialsProvider
                .retrieveSessionCredentials(CrossAccountCredentialsProvider.DEFAULT_SESSION_CREDENTIALS_DURATION,
                        CrossAccountCredentialsProvider.DEFAULT_EXTERNAL_ID, credential);
        AmazonEC2Client amazonEC2Client = new AmazonEC2Client(basicSessionCredentials);
        amazonEC2Client.setRegion(Region.getRegion(regions));
        LOGGER.info("Amazon EC2 client successfully created.");
        return amazonEC2Client;
    }
View Full Code Here

Examples of com.amazonaws.services.ec2.AmazonEC2Client

  }

  private AmazonEC2 newClient() {

    final AmazonEC2 amazonClient = new AmazonEC2Client(credentials);

    amazonClient.setEndpoint(endpoint);

    return amazonClient;

  }
View Full Code Here

Examples of com.amazonaws.services.ec2.AmazonEC2Client

     * @return the Amazon EC2 client
     */
    protected AmazonEC2 ec2Client() {
        AmazonEC2 client;
        if (awsCredentialsProvider == null) {
            client = new AmazonEC2Client();
        } else {
            client = new AmazonEC2Client(awsCredentialsProvider);
        }
        client.setEndpoint("ec2." + region + ".amazonaws.com");
        return client;
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.