Amazon Elastic Compute Cloud
CLI Reference (API Version 2011-12-15)
Print this pageEmail this pageGo to the ForumsView the PDFShare this page on TwitterShare this page on FacebookBookmark this page on DeliciousSubmit this page to RedditSubmit this page to DiggDid this page help you?  Yes  No   Tell us about it...

ec2-modify-instance-attribute

Description

Modifies an attribute of an instance.

[Note]Note

If you want to add ephemeral storage to an Amazon EBS-backed instance, you must add the ephemeral storage at the time you launch the instance. For more information, go to Overriding the AMI's Block Device Mapping in the Amazon Elastic Compute Cloud User Guide, or to Adding A Default Instance Store in the Amazon Elastic Compute Cloud User Guide.

The short version of this command is ec2minatt.

Syntax

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

Options

NameDescriptionRequired

instance_id

The instance ID.

Type: String

Default: None

Example: i-43a4412a

Yes

-t, --instance-type type

The type of the instance.

Type: String

Default: m1.small

Example: -t m1.large

No

--kernel kernel_id

Sets the ID of the kernel associated with the AMI.

Type: String

Default: None

Example: --kernel aki-1a2b3c4d

No

--ramdisk ramdisk_id

Sets the ID of the RAM disk associated with the AMI.

Type: String

Default: None

Example: --ramdisk ari-1a2b3c4d

No

--user-data user_data

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

Type: String

Default: None

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

No

--disable-api-termination Boolean

Specifies whether the instance can be terminated using the EC2 API. A value of true means you can't terminate the instance using the API (i.e., the instance is "locked"). A value of false means you can. You must set this attribute to false to "unlock" an instance and therefore be able to terminate it using the EC2 API.

Type: Boolean

Default: None

Example: --disable-api-termination false

No

--instance-initiated-shutdown-behavior behavior

If an instance shutdown is initiated, this determines whether the instance stops or terminates.

Type: String

Valid Values: stop | terminate

Default: stop

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

No

--block-device-mapping mapping

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

Type: BlockDeviceMapping

Default: stop

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

No

--source-dest-check Boolean

This attribute exists to enable a Network Address Translation (NAT) 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, go to NAT Instances in the Amazon Virtual Private Cloud User Guide.

Type: Boolean

Default: None

Example: --source-dest-check false

No

-g, --group-id group_id

This is applicable only to instances running in a VPC. Use this parameter when you want to change 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 in the VPC. You must specify the group ID and not the group name.

For example, if you want the instance to be in sg-1a1a1a1a and sg-9b9b9b9b, specify -g sg-1a1a1a1a -g sg-9b9b9b9b.

Type: String

Default: None

Example: -g sg-1a1a1a1a

No

Common Options

OptionDescription

--region REGION

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

Default: The EC2_URL environment variable, or us-east-1 if the environment variable is not set.

Example: --region eu-west-1

-U, --url URL

URL is the uniform resource locator of the Amazon EC2 web service entry point.

Default: The EC2_URL environment variable, or https://ec2.amazonaws.com if the environment variable is not set.

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

-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

--connection-timeout TIMEOUT

Specifies a connection timeout (in seconds).

Example: --connection-timeout 30

--request-timeout TIMEOUT

Specifies a request timeout (in seconds).

Example: --request-timeout 45

-v, --verbose

Displays verbose output by showing the SOAP request and response on the command line. This is particularly useful if you are building tools to talk directly to our SOAP API.

-H, --headers

Displays column headers in the output.

--show-empty-fields

Shows empty columns as (nil).

--hide-tags

Do not display tags for tagged resources.

--debug

Prints internal debugging information. This is useful to assist us when troubleshooting problems.

-?, --help, -h

Displays Help.

-

If - is specified as an argument to one of the parameters, a list of arguments is read from standard input. This is useful for piping the output of one command into the input of another.

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

Output

The command returns a table that contains the following information:

  • Attribute type identifier

  • ID of the instance on which attributes are being modified

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