AWSSupport-RestoreEC2InstanceFromSnapshot - AWS Systems Manager オートメーションランブックリファレンス

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

AWSSupport-RestoreEC2InstanceFromSnapshot

説明

AWSSupport-RestoreEC2InstanceFromSnapshot ランブックは、ルートボリュームの動作中の Amazon Elastic Block Store (Amazon EBS) のスナップショットから Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを識別して復元するのに役立ちます。

このオートメーションを実行する (コンソール)

ドキュメントタイプ

Automation

所有者

Amazon

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

Linux、macOS、Windows

[Parameters] (パラメータ)

  • AutomationAssumeRole

    型: 文字列

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

  • EndDate

    型: 文字列

    説明: (オプション) 自動化にスナップショットを検索する最後の日付。

  • InplaceSwap

    型: ブール

    有効な値: true | false

    説明: (オプション) このパラメータの値が true に設定されている場合、スナップショットから新しく作成されたボリュームが、インスタンスにアタッチされている既存のルートボリュームと置き換わります。

  • InstanceId

    型: 文字列

    説明: (必須) スナップショットから復元するインスタンスの ID。

  • LookForInstanceStatusCheck

    型: ブール

    有効な値: true | false

    デフォルト: true

    説明: (オプション) このパラメータの値が true に設定されている場合、自動化はスナップショットから起動されたテストインスタンスでインスタンスステータスチェックが失敗するかどうかをチェックします。

  • SkipSnapshotsBy

    型: 文字列

    説明: (オプション) インスタンスを復元するためにスナップショットを検索する時にスナップショットがスキップされる間隔。たとえば、使用可能なスナップショットが 100 個あり、このパラメータに 2 を指定すると、3 つおきのスナップショットがレビューされます。

    デフォルト: 0

  • SnapshotId

    型: 文字列

    説明: (オプション) インスタンスを復元するスナップショットの ID。

  • StartDate

    型: 文字列

    説明: (オプション) 自動化にスナップショットを検索する最初の日付。

  • TotalSnapshotsToLook

    型: 文字列

    説明: (オプション) 自動化でレビューするスナップショットの数。

必要な IAM アクセス許可

AutomationAssumeRole パラメータでは、ランブックを正常に使用するために、次のアクションが必要です。

  • ssm:StartAutomationExecution

  • ssm:GetAutomationExecution

  • ssm:DescribeInstanceInformation

  • ec2:AttachVolume

  • ec2:CreateImage

  • ec2:CreateTags

  • ec2:CreateVolume

  • ec2:DeleteTags

  • ec2:DeregisterImage

  • ec2:DescribeInstances

  • ec2:DescribeInstanceStatus

  • ec2:DescribeImages

  • ec2:DescribeSnapshots

  • ec2:DescribeVolumes

  • ec2:DetachVolume

  • ec2:RunInstances

  • ec2:StartInstances

  • ec2:StopInstances

  • ec2:TerminateInstances

  • cloudwatch:GetMetricData

ドキュメントステップ

  1. aws:executeAwsApi - ターゲットインスタンスの詳細を収集します。

  2. aws:assertAwsResourceProperty - ターゲットインスタンスが存在することを確認します。

  3. aws:assertAwsResourceProperty - ルートボリュームが Amazon EBS ボリュームであることを確認します。

  4. aws:assertAwsResourceProperty - このインスタンスをターゲットとする別の自動化がまだ実行されていないことを確認します。

  5. aws:executeAwsApi - ターゲットインスタンスにタグを付けます。

  6. aws:executeAwsApi - インスタンスの AMI を作成します。

  7. aws:executeAwsApi - 前のステップで作成した AMI に関する詳細を収集します。

  8. aws:waitForAwsResourceProperty - AMI の状態が available になるのを待ってから処理を進めます。

  9. aws:executeScript - 新しく作成された AMI から新しいインスタンスを起動します。

  10. aws:assertAwsResourceProperty - インスタンスの状態が available であることを確認します。

  11. aws:executeAwsApi - 新しく起動したインスタンスの詳細を収集します。

  12. aws:branch - SnapshotId パラメータに値を指定したかどうかに応じて分岐します。

  13. aws:executeScript - 指定した期間内のスナップショットのリストを返します。

  14. aws:executeAwsApi - インスタンスを停止します。

  15. aws:waitForAwsResourceProperty - ボリュームの状態が available になるまで待機します。

  16. aws:waitForAwsResourceProperty - インスタンスの状態が stopped になるまで待機します。

  17. aws:executeAwsApi - ルートボリュームをデタッチします。

  18. aws:waitForAwsResourceProperty - ルートボリュームがデタッチされるまで待機します。

  19. aws:executeAwsApi - 新しいルートボリュームをアタッチします。

  20. aws:waitForAwsResourceProperty - 新しいボリュームがアタッチされるまで待機します。

  21. aws:executeAwsApi - インスタンスを起動します。

  22. aws:waitForAwsResourceProperty - インスタンスの状態が available になるまで待機します。

  23. aws:waitForAwsResourceProperty - システムおよびインスタンスのステータスチェックがインスタンスに合格するまで待機します。

  24. aws:executeScript - スクリプトを実行して、ボリュームを正常に作成するために使用できるスナップショットを検出します。

  25. aws:executeScript - 自動化によって識別されたスナップショットから新しく作成されたボリューム、または SnapshotId パラメータで指定したスナップショットから作成されたボリュームを使用して、インスタンスを復元するスクリプトを実行します。

  26. aws:executeScript - この自動化によって作成されたリソースを削除します。

[Outputs] (出力)

launchCloneInstance.InstanceIds

ListSnapshotByDate.finalSnapshots

ListSnapshotByDate.remainingSnapshotToBeCheckedInSameDateRange

findWorkingSnapshot.workingSnapshot

InstanceRecovery.result