AWSSupport-MigrateEC2ClassicToVPC - AWS Systems Manager 自動化手冊參考

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWSSupport-MigrateEC2ClassicToVPC

Description (描述)

該手AWSSupport-MigrateEC2ClassicToVPC冊將亞馬遜彈性運算雲(亞馬遜 EC2)實例從 EC2-Classic 遷移到虛擬私有雲(VPC)。此執行手冊支援使用 Amazon 彈性區塊存放區 (Amazon EBS) 根磁碟區遷移硬體虛擬機器 (HVM) 虛擬化類型的 Amazon EC2 執行個體。

運行此自動化(控制台)

文件類型

 自動化

擁有者

Amazon

平台

Linux

參數

  • AutomationAssumeRole

    類型:字串

    描述:(必要) 允許系統管理員自動化代表您執行動作的 AWS Identity and Access Management (IAM) 角色的 Amazon 資源名稱 (ARN)。

  • 審批

    類型:StringList

    說明:(選用) 可以核准或拒絕動作的 IAM 使用者的 Amazon 資源名稱 (ARN)。僅當您指定參數CutOver值時,此MigrationType參數才適用。

  • DestinationSecurityGroupId

    類型:StringList

    說明:(選用) 您要與 VPC 中啟動的 Amazon EC2 執行個體建立關聯的安全群組識別碼。如果您未指定此參數的值,則自動化會在您的 VPC 中建立安全性群組,並從 EC2-Classic 中的安全性群組複製規則。如果規則無法複製到新的安全群組,則 VPC 的預設安全群組會與 Amazon EC2 執行個體相關聯。

  • DestinationSubnetId

    類型:字串

    說明:(選用) 您要將 Amazon EC2 執行個體遷移到的子網路識別碼。如果您沒有為此參數指定值,則自動化會從您的 VPC 中隨機選擇子網路。

  • InstanceId

    類型:字串

    說明:(必填) 您要遷移之 Amazon EC2 執行個體的 ID。

  • MigrationType

    類型:字串

    有效值:CutOver| 測試

    描述:(必要) 您要執行的移轉類型。

    此選CutOver項需要核准才能停止在 EC2-Classic 中執行的 Amazon EC2 執行個體。核准此動作後,Amazon EC2 執行個體會停止,且自動化會建立 Amazon Machine Image (AMI)。當AMI狀態為時available,會從您在 VPC 中指定的AMI中啟動新的 DestinationSubnetId Amazon EC2 執行個體。如果在 EC2-Classic 中執行的 Amazon EC2 執行個體附加了彈性 IP 地址,則該執行個體將移至 VPC 中新建立的 Amazon EC2 執行個體。如果在 VPC 中啟動的 Amazon EC2 執行個體因任何原因無法建立,則會終止該執行個體,並要求核准在 EC2-Classic 中啟動 Amazon EC2 執行個體。

    此選Test項會建立一個在 EC2-Classic 中執行AMI的 Amazon EC2 執行個體,而無需重新開機。由於 Amazon EC2 執行個體不會重新啟動,因此我們無法保證所建立映像檔的檔案系統完整性。當AMI狀態為時available,會從您AMI在 VPC 中指定的此執行個體啟動新DestinationSubnetId的 Amazon EC2 執行個體。如果在 EC2-Classic 中執行的 Amazon EC2 執行個體附加了彈性 IP 地址,則自動化會驗證DestinationSubnetId您指定的是公開的。如果在 VPC 中啟動的 Amazon EC2 執行個體因任何原因無法建立,則會終止該執行個體並結束自動化。

  • 網絡安全認證 NforApproval

    類型:字串

    說明:(選用) 您要向其傳送核准請求的亞馬遜簡單通知服務 (Amazon SNS) 主題的 ARN。僅當您指定參數CutOver值時,此MigrationType參數才適用。

  • TargetInstanceType

    類型:字串

    預設值:大

    說明:(選用) 您要在 VPC 中啟動的 Amazon EC2 執行個體類型。僅支援以 XENS 為基礎的執行個體類型,例如 T2、M4 或 C4。

必要的 IAM 許可

AutomationAssumeRole參數需要執行下列動作,才能成功使用 Runbook。

  • ssm:GetDocument

  • ssm:ListDocumentVersions

  • ssm:ListDocuments

  • ssm:StartAutomationExecution

  • sns:GetTopicAttributes

  • sns:ListSubscriptions

  • sns:ListTopics

  • sns:Publish

  • ec2:AssociateAddress

  • ec2:AuthorizeSecurityGroupIngress

  • ec2:CreateImage

  • ec2:CreateSecurityGroup

  • ec2:DeleteSecurityGroup

  • ec2:MoveAddressToVpc

  • ec2:RunInstances

  • ec2:StopInstances

  • ec2:CreateTags

  • ec2:DescribeAddresses

  • ec2:DescribeInstanceAttribute

  • ec2:DescribeInstances

  • ec2:DescribeInstanceStatus

  • ec2:DescribeRouteTables

  • ec2:DescribeSecurityGroupReferences

  • ec2:DescribeSecurityGroups

  • ec2:DescribeSubnets

  • ec2:DescribeTags

  • ec2:DescribeVpcs

  • ec2:DescribeInstanceTypes

  • ec2:DescribeImages

文件步驟

  • aws:executeAwsApi-收集有關您在InstanceId參數中指定的 Amazon EC2 執行個體的詳細資訊。

  • aws:assertAwsResourceProperty-確認您在TargetInstanceType參數中指定的例證類型是以 XenM 為基礎。

  • aws:assertAwsResourceProperty-確認您在InstanceId參數中指定的 Amazon EC2 執行個體屬於 HVM 虛擬化類型。

  • aws:assertAwsResourceProperty-確認您在InstanceId參數中指定的 Amazon EC2 執行個體具有 Amazon EBS 根磁碟區。

  • aws:executeScript-根據您為參DestinationSecurityGroupId數指定的值,視需要建立安全性群組。

  • aws:branch-根據您在DestinationSubnetId參數中指定的值進行分支。

  • aws:executeAwsApi-識別執行此自動化操作AWS 區域的預設 VPC。

  • aws:executeAwsApi-隨機選擇位於預設 VPC 中的子網路 ID。

  • aws:createImage-建立AMI不重新啟動 Amazon EC2 執行個體的情況下。

  • aws:branch-根據您為MigrationType參數指定的值進行分支。

  • aws:branch-根據您為DestinationSubnetId參數指定的值進行分支。

  • aws:runInstances-從AMI建立的執行個體啟動新執行個體,而不必在 EC2-Classic 中重新啟動 Amazon EC2 執行個體。

  • aws:changeInstanceState-如果上一個步驟因任何原因失敗,則終止新啟動的 Amazon EC2 執行個體。

  • aws:runInstances-從AMI建立的執行個體啟動新執行個體,而不必在 EC2-Classic 中重新啟動 Amazon EC2 執行個體 (DestinationSubnetId如果提供的話)。

  • aws:changeInstanceState-如果上一個步驟因任何原因失敗,則終止新啟動的 Amazon EC2 執行個體。

  • aws:assertAwsResourceProperty-確認在 EC2-Classic 中執行的 Amazon EC2 執行個體的停止行為。

  • aws:approve-等待核准停止 Amazon EC2 執行個體。

  • aws:changeInstanceState-停止在 EC2-典型中執行的亞馬遜 EC2 執行個體。

  • aws:changeInstanceState-如果需要,強制停止在 EC2-經典中運行的亞馬遜 EC2 實例。

  • aws:createImage-在停止後建立一個 AMI Amazon EC2 執行個體。

  • aws:branch-根據為DestinationSubnetId參數指定的值進行分支。

  • aws:runInstances-從 EC2-Classic 中已停止的 Amazon EC2 執行個體所AMI建立的執行個體啟動新執行個體。

  • aws:approve-如果上一個步驟因任何原因而失敗,則會等待核准終止新啟動的執行個體,並在 EC2-Classic 中啟動 Amazon EC2 執行個體。

  • aws:changeInstanceState-終止新啟動的 Amazon EC2 執行個體。

  • aws:runInstances-從參數在 EC2-Classic 中AMI建立的已停止 Amazon EC2 執行個體啟動新執行個體。DestinationSubnetId

  • aws:approve-如果上一個步驟因任何原因而失敗,則會等待核准終止新啟動的執行個體,並在 EC2-Classic 中啟動 Amazon EC2 執行個體。

  • aws:changeInstanceState-終止新啟動的 Amazon EC2 執行個體。

  • aws:changeInstanceState-啟動在 EC2-典型中停止的亞馬遜 EC2 執行個體。

  • aws:branch-根據 Amazon EC2 執行個體是否具有公有 IP 地址進行分支。

  • aws:executeAwsApi-驗證公用 IP 位址是否為彈性 IP 位址。

  • aws:branch-根據您在MigrationType參數中指定的值進行分支。

  • aws:executeAwsApi-將彈性 IP 位址移至您的虛擬私人雲端。

  • aws:executeAwsApi-收集移動到 VPC 的彈性 IP 地址的配置 ID。

  • aws:branch-根據在 VPC 中執行的 Amazon EC2 執行個體啟動的子網路而定的分支機構。

  • aws:executeAwsApi-將彈性 IP 地址附加到 VPC 中新啟動的實例。

  • aws:executeScript-確認在 VPC 中執行的新啟動 Amazon EC2 執行個體是公開的子網路。

輸出

g etInstanceProperties.virtualizationType-在 EC2-典型中執行的亞馬遜 EC2 執行個體的虛擬化類型。

getInstanceProperties.rootDeviceType-在 EC2-典型中執行的亞馬遜 EC2 執行個體的根裝置類型。

createAMIWithoutReboot.ImageId-所AMI建立的識別碼,無須重新啟動在 EC2-Classic 中執行的 Amazon EC2 執行個體。

getDefaultVPC.VpcId-如果未提供DestinationSubnetId參數值,則會在其中啟動新 Amazon EC2 執行個體的預設 VPC 識別碼。

getSubnetIdinDefaultVPC.subnetIdFromDefaultVpc-預設 VPC 中子網路的識別碼,如果未提供DestinationSubnetId參數值,則會在其中啟動新 Amazon EC2 執行個體。

launchTestInstanceDefaultVPC.InstanceIds-Test 遷移類型期間,預設 VPC 中新啟動的 Amazon EC2 執行個體識別碼。

launchTestInstanceProvidedSubnet.InstanceIds-您在Test遷移類型期間指定的新啟動 Amazon EC2 執行個體的 ID。DestinationSubnetId

createAMIAfterStoppingInstance.ImageId-停止在 EC2-Classic 中執行的 Amazon EC2 執行個體之後AMI建立的識別碼。

launchCutOverInstanceProvidedSubnet.InstanceIds-您在CutOver遷移類型期間指定的新啟動 Amazon EC2 執行個體的 ID。DestinationSubnetId

launchCutOverInstanceDefaultVPC.InstanceIds-CutOver 遷移類型期間,預設 VPC 中新啟動的 Amazon EC2 執行個體識別碼。

verifySubnetIsPublicTestDefaultVPC.IsSubnetPublic-預設 VPC 中的自動化選擇的子網路是否為公用。

verifySubnetIsPublicTestProvidedSubnet.IsSubnetPublic-您在中指定的子網路DestinationSubnetId是否為公用。