Amazon Elastic Compute Cloud
CLI Reference (API Version 2013-02-01)
« PreviousNext »
View the PDF for this guide.Go to the AWS Discussion Forum for this product.Did this page help you?  Yes | No |  Tell us about it...

ec2-describe-volumes

Description

Describes one or more of your Amazon EBS volumes. For more information about Amazon EBS, see Amazon Elastic Block Store in the Amazon Elastic Compute Cloud User Guide.

The short version of this command is ec2dvol.

Syntax

ec2-describe-volumes [volume_id ...] [[--filter "name=value"] ...]

Options

NameDescription

volume_id

One or more volume IDs.

Type: String

Default: Describes all your volumes.

Required: No

Example: vol-4282672b

-F, --filter name=value

A filter for limiting the results. See the Supported Filters section for a list of supported filters. Use quotation marks if the value string has a space ("name=value example"). On a Windows system, use quotation marks even without a space in the value string ("name=value").

Type: String

Default: Describes all your volumes, or only those you specified by ID.

Required: No

Example: --filter "tag-key=Production"

Supported Filters

You can specify filters so that the response includes information for only certain volumes. For example, you can use a filter to specify that you're interested in volumes whose status is available. You can specify multiple values for a filter. The response includes information for a volume only if it matches at least one of the filter values that you specified.

You can specify multiple filters (for example, specify that the volume is available, and has a specific tag. The response includes information for a volume only if it matches all the filters that you specified. If there's no match, no special message is returned, the response is simply empty.

You can use wildcards in a filter value. An asterisk (*) matches zero or more characters, and a question mark (?) matches exactly one character. You can escape special characters using a backslash (\) before the character. For example, a value of \*amazon\?\\ searches for the literal string *amazon?\.

The following are the available filters.

attachment.attach-time

The time stamp when the attachment initiated.

Type: DateTime

attachment.delete-on-termination

Whether the volume is deleted on instance termination.

Type: Boolean

attachment.device

The device name that is exposed to the instance (for example, /dev/sda1).

Type: String

attachment.instance-id

The ID of the instance the volume is attached to.

Type: String

attachment.status

The attachment state.

Type: String

Valid values: attaching | attached | detaching | detached

availability-zone

The Availability Zone in which the volume was created.

Type: String

create-time

The time stamp when the volume was created.

Type: DateTime

size

The size of the volume, in GiB (for example, 20).

Type: String

snapshot-id

The snapshot from which the volume was created.

Type: String

status

The status of the volume.

Type: String

Valid values: creating | available | in-use | deleting | deleted | error

tag-key

The key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter "tag-key=Purpose" and the filter "tag-value=X", you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose is X, see the tag:key filter.

For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.

Type: String

tag-value

The value of a tag assigned to the resource. This filter is independent of the tag-key filter.

Type: String

tag:key

Filters the response based on a specific tag/value combination.

Example: To list just the resources that have been assigned tag Purpose=X, specify:

--filter tag:Purpose=X

Example: To list just resources that have been assigned tag Purpose=X OR Purpose=Y, specify:

--filter tag:Purpose=X --filter tag:Purpose=Y

volume-id

The volume ID.

Type: String

volume-type

The Amazon EBS volume type. If the volume is an io1 volume, the response includes the IOPS as well.

Type: String

Valid values: standard | io1

Common Options

OptionDescription

--region REGION

Overrides the region specified by the EC2_URL environment variable and the URL specified by the -U option.

Default: The value of the EC2_URL environment variable, or us-east-1 if EC2_URL isn't set.

Example: --region eu-west-1

-U, --url URL

The uniform resource locator (URL) of the Amazon EC2 web service entry point.

Default: The value of the EC2_URL environment variable, or https://ec2.amazonaws.com if EC2_URL isn't set.

Example: -U https://ec2.amazonaws.com

-K, --private-key EC2-PRIVATE-KEY

The private key that identifies you to Amazon EC2. For more information, see Tell the Tools Who You Are.

Default: The value of the EC2_PRIVATE_KEY environment variable. If EC2_PRIVATE_KEY isn't set, you must specify this option.

Example: -K pk-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem

-C, --cert EC2-CERT

The X.509 certificate that identifies you to Amazon EC2.

Default: The value of the EC2_CERT environment variable. If EC2_CERT isn't set, you must specify this option.

Example: -C cert-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem

-O, --aws-access-key AWS_ACCESS_KEY

The access key ID associated with your AWS account. For more information, see Tell the Tools Who You Are.

Default: The value of the AWS_ACCESS_KEY environment variable. If AWS_ACCESS_KEY isn't set, you must specify this option.

Example: -O AKIAIOSFODNN7EXAMPLE

Note

For more information, see the following section, Deprecated Options.

-W, --aws-secret-key AWS_SECRET_KEY

The secret access key associated with your AWS account.

Default: The value of the AWS_SECRET_KEY environment variable. If AWS_SECRET_KEY isn't set, you must specify this option.

Example: -W wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

Note

For more information, see the following section, Deprecated Options.

-T, --security-token TOKEN AWS_DELEGATION_TOKEN

The AWS delegation token.

Default: The value of the environment variable (if set).

--connection-timeout TIMEOUT

The connection timeout, in seconds.

Example: --connection-timeout 30

--request-timeout TIMEOUT

The request timeout, in seconds.

Example: --request-timeout 45

-v, --verbose

Displays verbose output, including the API request and response on the command line. This is useful if you are building tools to talk directly to our Query API.

-H, --headers

Includes column headers in the command output.

--show-empty-fields

Shows empty columns as (nil).

--hide-tags

Omits tags for tagged resources.

--debug

Displays internal debugging information. This can assist us when helping you troubleshooting problems.

-?, --help, -h

Displays usage information for the command.

-

Reads arguments from standard input. This is useful when piping the output from one command to the input of another.

Example: ec2-describe-instances | grep stopped | cut -f 2 | ec2-start-instances -

Deprecated Options

For a limited time, you can still use the private key and X.509 certificate instead of your access key ID and secret access key. However, we recommend that you start using your access key ID (-O, --aws-access-key) and secret access key (-W, --aws-secret-key) now, as the private key (-K, --private-key) and X.509 certificate (-C, --cert) won't be supported after the transition period elapses. For more information, see Tell the Tools Who You Are.

OptionDescription

-K, --private-key EC2-PRIVATE-KEY

The private key to use when constructing requests to Amazon EC2.

Default: The value of the EC2_PRIVATE_KEY environment variable.

Example: -K pk-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem

-C, --cert EC2-CERT

The X.509 certificate to use when constructing requests to Amazon EC2.

Default: The value of the EC2_CERT environment variable.

Example: -C cert-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem

Output

This command returns a table that contains the following information:

  1. The volume information

    • The VOLUME identifier

    • The ID of the volume

    • The size of the volume, in GiBs

    • The ID of the snapshot the volume was created from

    • The Availability Zone of the volume

    • The volume status (creating, available, in-use, deleting, deleted, error)

    • The time stamp when volume creation was initiated

    • The EBS volume type

    • The I/O operations per second (IOPS) of a provisioned IOPS volume

  2. Any attachments for the volume

    • The ATTACHMENT identifier

    • The ID of the volume

    • The ID of the instance

    • The device name

    • The attachment state of the volume

    • The time stamp of the last operation on the volume

    • Whether or not the volume is set to delete on termination (true or false)

  3. Any tags associated with the volume

    • The TAG identifier

    • The resource type identifier

    • The resource ID

    • The tag key

    • The tag value

Amazon EC2 command line tools display errors on stderr.

Examples

Example Request

This example uses the ec2-describe-volumes command to describe all volumes associated with your account.

PROMPT> ec2-describe-volumes
VOLUME	vol-1a2b3c4d	30	snap-1a2b3c4d	us-west-2a	available	YYYY-MM-DDTHH:MM:SS+0000	standard	
TAG	volume	vol-1a2b3c4d	Name	Volume Name
VOLUME	vol-2a2b3c4d	8	snap-2a2b3c4d	us-west-2a	in-use	YYYY-MM-DDTHH:MM:SS+0000	standard	
ATTACHMENT	vol-2a2b3c4d	i-1a2b3c4d	/dev/sda1	attached	YYYY-MM-DDTHH:MM:SS+0000	true
TAG	volume	vol-2a2b3c4d	Name	Second Volume Name

Example Request

This example describes all volumes that are both attached to instance i-1a2b3c4d and also set to delete when the instance terminates.

PROMPT> ec2-describe-volumes --filter "attachment.instance-id=i-1a2b3c4d" --filter "attachment.delete-on-termination=true"
VOLUME	vol-2a2b3c4d	8	snap-2a2b3c4d	us-west-2a	in-use	YYYY-MM-DDTHH:MM:SS+0000	standard	
ATTACHMENT	vol-2a2b3c4d	i-1a2b3c4d	/dev/sda1	attached	YYYY-MM-DDTHH:MM:SS+0000	true
TAG	volume	vol-2a2b3c4d	Name	Second Volume Name