Menu
Amazon Elastic Compute Cloud
CLI Reference (API Version 2015-10-01)

ec2-migrate-image

Description

Copies a bundled AMI from one region to another.

Important

This tool does not work with AMIs backed by Amazon EBS. Use ec2-copy-image instead.

The short version of this command is ec2mim.

Syntax

ec2-migrate-image --private-key private_key --cert cert -U url --owner-akid access_key_id --owner-sak secret_access_key --bucket source_s3_bucket --destination-bucket destination_s3_bucket --manifest manifest_path --acl acl --location {US | EU} --ec2cert ec2_cert_path [--kernel kernel-id] [--ramdisk ramdisk_id] {--no-mapping} --region mapping_region_name

Options

NameDescription

-K, --private-key private_key

The path to your PEM-encoded RSA key file.

Type: String

Default: Uses the EC2_PRIVATE_KEY environment variable

Required: No

-C, --cert cert

The user's PEM-encoded RSA public key certificate file.

Type: String

Default: Uses the EC2_CERT environment variable

Required: No

Example: -C cert-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem

-U, --url url

The URL to use as the web service URL.

Type: String

Default: https://ec2.amazonaws.com

Required: No

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

-o, --owner-akid access_key_id

The access key ID of the bucket owner. Before you specify a value for this option, review and follow the guidance in Best Practices for Managing AWS Access Keys.

Type: String

Default: None

Required: Yes

Example: -o AKIAIOSFODNN7EXAMPLE

-w, --owner-sak secret_access_key

The secret access key of the bucket owner. Before you specify a value for this option, review and follow the guidance in Best Practices for Managing AWS Access Keys.

Type: String

Default: None

Required: Yes

Example: -w wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

--bucket source_s3_bucket

The source Amazon S3 bucket where the AMI is located, followed by an optional '/'-delimited path prefix.

Type: String

Default: None

Required: Yes

Example: --bucket myawsbucket

--destination-bucket destination_s3_bucket

The destination Amazon S3 bucket, followed by an optional '/'-delimited path prefix. If the destination bucket does not exist, it is created.

Type: String

Default: None

Required: Yes

Example: --destination-bucket myotherawsbucket

--manifest manifest

The location of the Amazon S3 source manifest.

Type: String

Default: None

Required: Yes

Example: --manifest my-ami.manifest.xml

--location {US | EU}

The location of the destination Amazon S3 bucket.

Type: String

Valid values: US | EU

Default: US

Required: No

Example: --location EU

--acl acl

The access control list policy of the bundled image.

Type: String

Valid values: public-read | aws-exec-read

Default: None

Required: Yes

Example: --acl public-read

--kernel

The ID of the kernel to select.

Important

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon EC2 User Guide for Linux Instances.

Type: String

Default: None

Required: No

Example: --kernel aki-ba3adfd3

--ramdisk

The ID of the RAM disk to select.

Important

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon EC2 User Guide for Linux Instances.

Type: String

Default: None

Required: No

Example: --ramdisk ari-badbad00

--no-mapping

Disables automatic mapping of kernels and RAM disks.

Type: String

Default: Mapping is enabled.

Required: No

Example: --no-mapping

--region region

The region to look up in the mapping file.

Type: String

Default: Amazon EC2 attempts to determine the region from the location of the Amazon S3 bucket.

Required: No

Example: --region eu-west-1

Common Options

OptionDescription

--region region

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

Default: The region specified by the EC2_URL environment variable, or us-east-1 if EC2_URL isn't set.

-U, --url url

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

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

-O, --aws-access-key aws_access_key_id

Your access key ID. 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

-W, --aws-secret-key aws_secret_access_key

Your secret access key.

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

-T, --security-token delegation_token

The delegation token to pass along to the AWS request. This is only required when you are using temporary security credentials. For more information, see Using Temporary Security Credentials.

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

Example: -t AQoDYXdzEJr...<remainder of security token>

--connection-timeout timeout

The connection timeout, in seconds.

Example: --connection-timeout 30

--request-timeout timeout

The request timeout, in seconds.

Example: --request-timeout 45

-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.

-D, --auth-dry-run

Checks whether you have the required permissions for the command, without actually running the command. If you have the required permissions, the command returns DryRunOperation; otherwise, it returns UnauthorizedOperation.

-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 the Query API.

-

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 -

-?, --help, -h

Displays usage information for the command.

Output

This command returns a table that contains the following information:

  • Status messages describing the stages and status of the migration

Amazon EC2 command line tools display errors on stderr.

Examples

Example

This example command copies the AMI specified in the my-ami.manifest.xml manifest from the US to the EU.

PROMPT> ec2-migrate-image --cert cert-THUMBPRINT.pem --private-key pk-THUMBPRINT.pem --owner-akid
AKIAIOSFODNN7EXAMPLE --owner-sak wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY --bucket myawsbucket
--destination-bucket my-eu-bucket --manifest my-ami.manifest.xml  --acl aws-exec-read --location EU
Copying 'my-ami.part.00'...
Copying 'my-ami.part.01'...
Copying 'my-ami.part.02'...
Copying 'my-ami.part.03'...
Copying 'my-ami.part.04'...
Copying 'my-ami.part.05'...
Copying 'my-ami.part.06'...
Copying 'my-ami.part.07'...
Copying 'my-ami.part.08'...
Copying 'my-ami.part.09'...
Copying 'my-ami.part.10'...
Your new bundle is in S3 at the following location:
my-eu-bucket/my-ami.manifest.xml

Related Topics

Related Action

  • There is no underlying API action for this command.