EC2 的 Replatform - AWS 上的雲端遷移工廠

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

EC2 的 Replatform

AWS 上的 Cloud Migration Factory 解決方案允許從資料存放區中定義的組態自動啟動 EC2 執行個體群組;部署已連接 EBS 磁碟區的 EC2 執行個體。這可讓您佈建新的 EC2 執行個體,允許透過 AWS CloudFormation 進行 Replatform,並在單一 CMF 使用者介面中使用 AWS MGN 重新託管內部部署伺服器。資料存放區必須包含伺服器的定義,才能使用此功能。解決此問題後,伺服器應連結至波動。決定啟動 EC2 執行個體時,使用者可以針對波動啟動下列動作:

  • EC2 輸入驗證

  • EC2 產生 CF 範本

  • EC2 部署

先決條件

新增 Replatform 屬性存取權的許可。

指令碼執行平台選擇

部署自動化指令碼之前,請判斷哪個運算平台最適合您的需求:

  • 傳統自動化伺服器:最適合需要複雜相依性、多種程式設計語言或特定作業系統需求的案例

  • SSM 自動化文件:建議用於不需要存取內部部署環境的標準 Python 型自動化指令碼

初始組態

新 EC2 執行個體的組態是透過使用 使用者介面建立新伺服器項目,或透過匯入包含伺服器項目的 CSV 擷取表單來執行。這些定義會轉換為存放在部署 AWS CMF 執行個體之相同 AWS 帳戶中 S3 儲存貯體中的 AWS CloudFormation 範本。 S3

使用者介面定義

在 AWS Cloud Migration Factory 資料存放區中定義伺服器以搭配 Replatform 使用 EC2 功能時,需要使用 Replatform遷移策略來設定伺服器。選取 Replatform 後,畫面上會顯示此功能所需的其他屬性。需要填入下列屬性,功能才能運作:

必要屬性

AMI ID - 用來啟動 EC2 執行個體的 Amazon Machine Image ID。

可用區域 - EC2 執行個體將部署到的可用區域。

根磁碟區大小 - 執行個體根磁碟區的大小,以 GB 為單位。

執行個體類型 - 要使用的 EC2 執行個體類型。

安全群組 ID - 指派給執行個體的安全群組清單。

子網路 ID - 要指派此 EC2 執行個體的子網路 ID。

租用 - 目前對 EC2 整合的 Replatform 唯一支援的選項是在產生範本時,任何其他選項都會取代為共用

選擇性屬性

啟用詳細監控 - 檢查以啟用詳細監控。

其他磁碟區名稱 - 其他 EBS 磁碟區名稱的清單。清單中的每個項目都需要映射到與大小類型清單相同的行。

其他磁碟區大小 - 其他 EBS 磁碟區大小的清單。清單中的每個項目都需要映射到與名稱類型清單相同的行。

其他磁碟區類型 - 其他 EBS 磁碟區類型的清單。清單中的每個項目都必須對應到與名稱大小清單相同的行,如果未指定,則所有磁碟區的預設值為 gp2

磁碟區加密的 EBS KMS 金鑰 ID - 如果 EBS 磁碟區將加密,請指定金鑰 ID金鑰 ARN金鑰別名別名 ARN

啟用 EBS Optimized - 選取以開啟 EBS Optimized

根磁碟區名稱 - 從提供的選項中選取 ,如果未指定,則會使用 ID。

根磁碟區類型 - 提供要建立之磁碟區的 EBS 類型,若未指定,則預設為 gp2

接收表單定義

接收表單可以包含詳細資訊,以使用 csv 檔案的單一資料列中的資料存放區來建立或更新多種類型的記錄,這可讓您匯入相關資料。在下列範例中,波動、應用程式和伺服器記錄將在匯入期間自動建立並相互關聯。

範例:接收表單

欄名稱 範例資料 必要 備註

wave_name

wave1

app_name

app1

aws_accountid

1234567890

server_name

Server1

server_fqdn

Server1

server_os_family

linux

server_os_version

Amazon

server_tier

Web

server_environment

Dev

subnet_IDs

subnet-xxxxxxx

securitygroup_ID

sg-yyyyyyyyyy

instanceType

m5.large

iamRole

ec2customrole

tenancy

Shared

r_type

Replatform

root_vol_size

50

ami_id

ami-zzzzzzzzzz

可用區域

us-west-2a

root_vol_type

gp2

add_vols_size

40:100

add_vols_type

gp2:gp3

ebs_optimized

false

ebs_kmskey_id

1111-1111-1111-1111

detailed_monitoring

true

root_vol_name

Server1_root_volume

add_vols_name

Server1_root_volumeA: Server1_root_volumeB

若要匯入擷取表單,請遵循與任何其他資料匯入 Cloud Migration Factory on AWS 解決方案相同的程序。

部署動作

EC2 輸入驗證

定義執行個體參數之後,您必須先執行波動動作:ReplatformEC2EC2 輸入驗證。此動作會驗證已為每個伺服器提供所有正確的參數,以建立有效的 CloudFormation 範本。

注意

此驗證目前不會驗證輸入參數是否有效,只會存在於每個伺服器定義中。您必須先驗證正確的值,才能建立範本,否則範本的部署將會失敗。

EC2 產生 CloudFormation 範本

驗證波動中包含的所有伺服器定義後,即可產生 CloudFormation 範本。若要這樣做,請執行波動動作:ReplatformEC2EC2 Generate CF Template。此動作會為波動中的每個應用程式建立 CloudFormation 範本,其中應用程式中的伺服器具有 Replatform遷移策略;具有定義之其他遷移策略的任何伺服器都不會包含在範本中。

執行後,每個應用程式的範本會存放在 S3 儲存貯體中:-gfbuild-cftemplates ,該儲存貯體會在部署 AWS 上的 Cloud Migration Factory 解決方案時自動建立。此儲存貯體的資料夾結構如下所示:

  • 【目標 AWS 帳戶 ID】

  • 【Wave 名稱】

    • CFN_Template_ \_ –0—yaml

每次執行產生動作時,範本的新版本都會存放在 S3 儲存貯體中。範本的 S3 URIs 會在通知中提供,您可以在部署之前視需要檢閱或編輯這些範本。

CloudFormation 範本目前會產生下列 CloudFormation 資源類型:

  • AWS::EC2::Instance

  • AWS::EC2::Volume

  • AWS::EC2::VolumeAttachment

EC2 部署

準備好部署新的 EC2 執行個體後,您可以透過波動動作 ReplatformEC2>EC2 部署啟動 EC22 部署動作。EC2 此動作將針對波動中的每個應用程式使用最新版本的 CloudFormation 範本,並透過 AWS CloudFormation 將這些範本部署到選取的目標帳戶。