Example usage for com.amazonaws.services.ec2 AmazonEC2 attachVolume

List of usage examples for com.amazonaws.services.ec2 AmazonEC2 attachVolume

Introduction

In this page you can find the example usage for com.amazonaws.services.ec2 AmazonEC2 attachVolume.

Prototype

AttachVolumeResult attachVolume(AttachVolumeRequest attachVolumeRequest);

Source Link

Document

Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name.

Usage

From source file:com.urbancode.terraform.tasks.aws.helpers.AWSHelper.java

License:Apache License

/**
 *
 * @param volumeId//from  w  ww  .  jav a2 s. c om
 * @param instanceId
 * @param device
 * @param ec2Client
 */
public void attachEbsVolumeToInstance(String volumeId, String instanceId, String device, AmazonEC2 ec2Client) {
    AttachVolumeRequest request = new AttachVolumeRequest().withInstanceId(instanceId).withVolumeId(volumeId)
            .withDevice(device);
    @SuppressWarnings("unused")
    AttachVolumeResult result = ec2Client.attachVolume(request);
}

From source file:edu.umass.cs.aws.support.AWSEC2.java

License:Apache License

/**
 * Creates a volume and attaches and mounts it on the instance at the specified mount point.
 *
 * @param ec2/*  w  w  w . ja  v  a2s. c om*/
 * @param instanceId
 * @param mountPoint
 * @return the id of the volume
 */
public static String createAndAttachVolume(AmazonEC2 ec2, String instanceId, String mountPoint) {
    // ATTACH A VOLUME
    Instance instance = findInstance(ec2, instanceId);
    String zone = instance.getPlacement().getAvailabilityZone();
    CreateVolumeRequest newVolumeRequest = new CreateVolumeRequest();
    newVolumeRequest.setSize(1); //1.0GB
    newVolumeRequest.setAvailabilityZone(zone);// set its available zone, it may change.

    CreateVolumeResult volumeResult = ec2.createVolume(newVolumeRequest);

    Volume v1 = volumeResult.getVolume();
    String volumeID = v1.getVolumeId();
    AttachVolumeRequest avr = new AttachVolumeRequest();//begin to attach the volume to instance
    avr.withInstanceId(instanceId);
    avr.withVolumeId(volumeID);
    avr.withDevice(mountPoint); //mount it
    ec2.attachVolume(avr);
    System.out.println("EBS volume has been attached and the volume ID is: " + volumeID);
    return (volumeID);
}