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-modify-instance-attribute

Description

Modifies the specified attribute of the specified instance. You can specify only one attribute at a time.

Note

To modify some attributes, the instance must be stopped. For more information, see Modifying Attributes of a Stopped Instance in the Amazon Elastic Compute Cloud User's Guide.

The short version of this command is ec2minatt.

Syntax

ec2-modify-instance-attribute instance_id { --block-device-mapping mapping | --disable-api-termination Boolean | --ebs-optimized Boolean--> | --group-id group_id [...] | --instance-initiated-shutdown-behavior behavior | --instance-type type | --kernel kernel_id | --ramdisk ramdisk_id | --source-dest-check Boolean | --user-data user_data }

Options

NameDescription

instance_id

The instance ID.

Type: String

Default: None

Required: Yes

Example: i-43a4412a

-b, --block-device-mapping mapping

Modifies the DeleteOnTermination attribute for volumes that are currently attached. The volume must be owned by the caller. If no value is specified for DeleteOnTerminaton, the volume is deleted when the instance is terminated.

To add instance store volumes to an Amazon EBS-backed instance, you must add them when you launch the instance. For more information, see Updating the Block Device Mapping when Launching an Instance in the Amazon Elastic Compute Cloud User Guide.

Type: BlockDeviceMapping

Required: No

Example: -b "/dev/sdb=vol-7eb96d16:false"

--disable-api-termination Boolean

Whether the instance can be terminated using the EC2 API. A value of true means you can't terminate the instance using the API (the instance is "locked"). A value of false means you can terminate the instance using the API (the instance is "unlocked"). Set this attribute to true to prevent the instance from being terminated using the EC2 API.

Type: Boolean

Default: false

Required: No

Example: --disable-api-termination true

--ebs-optimized Boolean

Whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This option isn't available on all instance types. Additional usage charge apply when using this option.

Type: Boolean

Default: false

Required: No

Example: --ebs-optimized true

-g, --group-id group_id

[EC2-VPC] Modify the security groups an instance is in. The new set of groups you specify replaces the current set. You must specify at least one group, even if it's just the default security group for the VPC. You must specify the group ID and not the group name.

Type: String

Default: None

Required: No

Example: -g sg-1a1a1a1a -g sg-9b9b9b9b

--instance-initiated-shutdown-behavior behavior

Whether the instance stops or terminates when you initiate instance shutdown.

Type: String

Valid values: stop | terminate

Default: stop

Required: No

Example: --instance-initiated-shutdown-behavior stop

-t, --instance-type type

The type of the instance. See Available Instance Types for more information. An InvalidInstanceAttributeValue error will be returned if the instance type is not valid.

Type: String

Default: m1.small

Required: No

Example: -t m1.large

--kernel kernel_id

The ID of the kernel associated with the AMI.

Type: String

Default: None

Required: No

Example: --kernel aki-1a2b3c4d

--ramdisk ramdisk_id

The ID of the RAM disk associated with the AMI.

Note

It is recommended that PV-GRUB be used instead of kernels and RAM disks. For more information, go to PV-GRUB: A New Amazon Kernel Image in the Amazon Elastic Compute Cloud User Guide.

Type: String

Default: None

Required: No

Example: --ramdisk ari-1a2b3c4d

--source-dest-check Boolean

Enables an instance in a VPC to perform NAT. The attribute controls whether source/destination checking is enabled on the instance. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.

Type: Boolean

Default: true

Required: No

Example: --source-dest-check false

--user-data user_data

The Base64-encoded MIME user data to be made available to the instance(s) in this reservation.

Type: String

Default: None

Required: No

Example: --user-data "My user data"

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:

  • The attribute type identifier

  • The ID of the instance on which attributes are being modified

  • The new attribute value

Amazon EC2 command line tools display errors on stderr.

Examples

Example Request

This example changes the kernel for the instance.

PROMPT> ec2-modify-instance-attribute i-10a64379 --kernel aki-f70657b2
kernel	i-10a64379	aki-f70657b2