

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# `AWSSupport-CopyEC2Instance`
<a name="automation-awssupport-copyec2instance"></a>

 **説明** 

`AWSSupport-CopyEC2Instance` ランブックは、ナレッジセンター記事[「EC2 インスタンスを別のサブネット、アベイラビリティーゾーン、または VPC に移動する方法」](https://aws.amazon.com/premiumsupport/knowledge-center/move-ec2-instance/)で説明されている手順についての、自動化されたソリューションを提供します。自動化は、`Region` および `SubnetId` パラメータに指定した値に基づいて分岐します。

`SubnetId` パラメータに値を指定し、`Region` パラメータに値を指定しない場合、自動化はターゲットインスタンスの Amazon Machine Image (AMI) を作成し、指定したサブネットの AMI から新しいインスタンスを起動します。

`SubnetId` パラメータと `Region`パラメータの値を指定すると、オートメーションはターゲットインスタンスAMIの を作成し、 AWS リージョン 指定した AMI に をコピーし、指定したサブネットAMIの から新しいインスタンスを起動します。

`Region` パラメータに値を指定し、`SubnetId` パラメータに値を指定しない場合、自動化はターゲットインスタンスの AMI を作成し、指定したリージョンに AMI をコピーし、送信先リージョンの仮想プライベートクラウド (VPC) のデフォルトサブネットの AMI から新しいインスタンスを起動します。

`Region` または `SubnetId` パラメータのいずれにも値が指定されていない場合、自動化はターゲットインスタンスの AMI を作成し、VPC のデフォルトサブネットの AMI から新しいインスタンスを起動します。

AMI を別のリージョンにコピーするには、`AutomationAssumeRole` パラメータに値を指定する必要があります。`waitForAvailableDestinationAmi` ステップ中に自動化がタイムアウトしても、AMI はまだコピー中である可能性があります。その場合は、コピーが完了するのを待ってから、インスタンスを手動で起動できます。

このオートメーションを実行する前に、次の点に注意してください。
+ AMI は Amazon Elastic Block Store (Amazon EBS) スナップショットに基づいています。スナップショットが事前にない大規模なファイルシステムの場合、AMI 作成には数時間かかることがあります。AMI 作成時間を短縮するには、AMI を作成する前に Amazon EBS スナップショットを作成してください。
+ AMI を作成しても、そのインスタンス上のインスタンスストアボリュームのスナップショットは作成されません。Amazon EBS にインスタンスストアボリュームをバックアップする方法については、[「Amazon EC2 インスタンスのインスタンスストアボリュームを Amazon EBS にバックアップする方法」](https://aws.amazon.com/premiumsupport/knowledge-center/back-up-instance-store-ebs/)を参照してください。
+ 新しい Amazon EC2 インスタンスには、別のプライベート IPv4 またはパブリック IPv6 IP アドレスが割り当てられています。古い IP アドレス (DNS エントリにあるものなど) へのリファレンスはすべて、新しいインスタンスに割り当てられた新しい IP アドレスで更新する必要があります。ソースインスタンスで Elastic IP アドレスを使用している場合、新しいインスタンスにそのアドレスをアタッチしてください。
+ コピーが起動してドメインにアクセスしようとすると、ドメインセキュリティ識別子 (SID) の競合の問題が発生する可能性があります。AMI をキャプチャする前に、Sysprep を使用するか、ドメインに参加しているインスタンスをドメインから削除して競合の問題を防止してください。詳細については、「[Sysprep を使用して再利用可能なカスタム Windows AMI を作成およびインストールする方法を教えてください](https://aws.amazon.com/premiumsupport/knowledge-center/sysprep-create-install-ec2-windows-amis/)」を参照してください。

 [このオートメーションを実行する (コンソール)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-CopyEC2Instance) 

**重要**  
このランブックを使用して Microsoft Active Directory ドメインコントローラーのインスタンスをコピーすることはお勧めしません。

**ドキュメントタイプ**

Automation

**[所有者]**

Amazon

**[Platforms]** (プラットフォーム)

Linux、macOS、Windows

**パラメータ**
+ AutomationAssumeRole

  タイプ: 文字列

  説明: (オプション) Systems Manager Automation がユーザーに代わってアクションを実行できるようにする AWS Identity and Access Management (IAM) ロールの Amazon リソースネーム (ARN)。ロールを指定しない場合、Systems Manager Automation はこのランブックを開始するユーザーのアクセス許可を使用します。
+ InstanceId

  タイプ: 文字列

  説明: (必須) コピーするインスタンスの ID。
+ KeyPair

  タイプ: 文字列

  説明: (オプション) 新しくコピーされるインスタンスに関連付けるキーペア。インスタンスを別のリージョンにコピーする場合は、キーペアが指定したリージョンに存在することを確認してください。
+ リージョン

  タイプ: 文字列

  説明: (オプション) インスタンスをコピーするリージョン。このパラメータに値を指定し、`SubnetId` および `SecurityGroupIds` パラメータに値を指定しなかった場合、自動化はデフォルトのセキュリティグループを使用してデフォルト VPC でインスタンスを起動しようとします。送信先リージョンで EC2-Classic が有効になっている場合、起動は失敗します。
+ SubnetId

  タイプ: 文字列

  説明: (オプション) インスタンスを起動するサブネットの ID。EC2-Classic が送信先リージョンで有効になっている場合は、このパラメータに値を指定する必要があります。
+ InstanceType

  タイプ: 文字列

  説明: (オプション) コピーされたインスタンスを起動する時のインスタンスタイプ。このパラメータに値を指定しない場合、ソースインスタンスタイプが使用されます。ソースインスタンスタイプがインスタンスのコピー先のリージョンでサポートされていない場合、自動化は失敗します。
+ SecurityGroupIds

  タイプ: 文字列

  説明: (オプション) コピーされたインスタンスに関連付けるセキュリティグループ ID のカンマ区切りリスト。このパラメータに値を指定せず、インスタンスを別のリージョンにコピーしない場合、ソースインスタンスに関連付けられているセキュリティグループが使用されます。インスタンスを別のリージョンにコピーする場合、コピー先のリージョンのデフォルトの VPC のデフォルトのセキュリティグループが使用されます。
+ KeepImageSourceRegion

  型: ブール値

  有効な値: true \| false

  デフォルト: true

  説明: (オプション) このパラメータに `true` を指定した場合、自動化はソースインスタンスの AMI を削除しません。このパラメータに `false` を指定すると、自動化は AMI の登録を解除し、関連するスナップショットを削除します。
+ KeepImageDestinationRegion

  型: ブール値

  有効な値: true \| false

  デフォルト: true

  説明: (オプション) このパラメータに `true` を指定した場合、自動化は、指定したリージョンにコピーされた AMI を削除しません。このパラメータに `false` を指定すると、自動化は AMI の登録を解除し、関連するスナップショットを削除します。
+ NoRebootInstanceBeforeTakingImage

  型: ブール値

  有効な値: true \| false

  デフォルト: false

  説明: (オプション) このパラメータに `true` を指定した場合、ソースインスタンスは AMI を作成する前に再起動されません。このオプションを使用すると、作成したイメージのファイルシステムの完全性は保証できません。

**必要な IAM アクセス許可**

`AutomationAssumeRole` パラメータでは、ランブックを正常に使用するために、次のアクションが必要です。
+ `ec2:CreateImage`
+ `ec2:DeleteSnapshot`
+ `ec2:DeregisterImage`
+ `ec2:DescribeInstances`
+ `ec2:DescribeImages`
+ `ec2:RunInstances`

インスタンスを別のリージョンにコピーする場合、以下の権限も必要になります。
+ `ec2:CopyImage`

 **ドキュメントステップ** 
+ describeOriginalInstanceDetails - コピーするインスタンスから詳細情報を収集します。
+ assertRootVolumeIsEbs - ルートボリュームのデバイスタイプが `ebs` であるかどうかを確認し、そうでない場合は自動化を終了します。
+ evalInputParameters - 入力パラメータに指定された値を評価します。
+ createLocalAmi - ソースインスタンスの AMI を作成します。
+ tagLocalAmi - 前のステップで作成した AMI にタグを付けます。
+ branchAssertRegionIsSame - インスタンスを同じリージョン内でコピーするか、別のリージョンにコピーするかに基づいて分岐します。
+ branchAssertSameRegionWithKeyPair - 同じリージョン内でコピーされているインスタンスの `KeyPair` パラメータに値が指定されているかどうかに基づいて分岐します。
+ sameRegionLaunchInstanceWithKeyPair - 同じサブネットまたは指定したサブネットのソースインスタンスの AMI から、指定したキーペアを使用して Amazon EC2 インスタンスを起動します。
+ sameRegionLaunchInstanceWithoutKeyPair - 同じサブネットまたは、キーペアなしで指定したサブネットのソースインスタンスの AMI から Amazon EC2 インスタンスを起動します。
+ copyAmiToRegion - AMI をコピー先リージョンにコピーします。
+ waitForAvailableDestinationAmi - コピーされた AMI の状態が `available` になるのを待ちます。
+ destinationRegionLaunchInstance - コピーされた AMI を使用して Amazon EC2 インスタンスを起動します。
+ branchAssertDestinationAmiToDelete - `KeepImageDestinationRegion` パラメータで指定された値に基づく分岐。
+ deregisterDestinationAmiAndDeleteSnapshots - コピーされた AMI を登録解除し、関連するスナップショットを削除します。
+ branchAssertSourceAmiTodelete - `KeepImageSourceRegion` パラメータで指定された値に基づく分岐。
+ deregisterSourceAmiAndDeleteSnapshots - 作成された AMI をソースインスタンスから登録解除し、関連するスナップショットを削除します。
+ sleep - 自動化を 2 秒間スリープ状態にします。これは終了ステップです。

 **出力** 

sameRegionLaunchInstanceWithKeyPair.InstanceIds

sameRegionLaunchInstanceWithoutKeyPair.InstanceIds

destinationRegionLaunchInstance.DestinationInstanceId