

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

# 架構詳細資訊
<a name="components"></a>

## 遷移自動化伺服器
<a name="comp-mes"></a>

此解決方案利用遷移自動化伺服器，使用 Rest APIs 執行遷移。此伺服器不會使用 解決方案自動部署，且必須手動建置。如需詳細資訊，請參閱[建置遷移自動化伺服器](step6.md)。我們建議您在 AWS 環境中建置伺服器，但您也可以在網路環境中建置內部部署。伺服器必須符合下列要求：
+ Windows Server 2019 或更新版本
+ 最少 4 CPUs 搭配 8 GB RAM
+ 已部署為未安裝其他應用程式的新虛擬機器
+ （如果內建於 AWS) 在與 Cloud Migration Factory 相同的 AWS 帳戶和區域中

安裝後，伺服器需要網際網路存取和範圍內來源伺服器的非限制性內部網路連線 （要遷移至 AWS 的伺服器）。

如果需要從遷移自動化伺服器到來源伺服器的連接埠限制，則必須從遷移自動化伺服器到來源伺服器開啟下列連接埠：
+ SMB 連接埠 (TCP 445)
+ SSH 連接埠 (TCP 22)
+ WinRM 連接埠 (TCP 5985、5986)

我們建議遷移自動化伺服器與來源伺服器位於相同的 Active Directory 網域中。如果來源伺服器位於多個網域中，則每個網域中網域信任的安全組態會決定您是否需要多個遷移自動化伺服器。

雖然傳統方法使用 Windows 自動化伺服器，但指令碼現在可以直接透過 AWS Systems Manager 自動化文件執行。
+ 如果網域信任存在於具有來源伺服器的所有網域中，則單一遷移自動化伺服器將能夠連線到所有網域並執行自動化指令碼。
+ 如果網域信任不存在於所有網域中，您必須為每個不受信任的網域建立額外的遷移自動化伺服器，或者對於要在自動化伺服器上執行的每個動作，必須在來源伺服器上提供適當的許可。

## 遷移服務 Rest APIs
<a name="comp-mes-api"></a>

AWS 上的 Cloud Migration Factory 解決方案會使用透過 AWS Lambda 函數、Amazon APIs Gateway、AWS Managed Services 和 AWS Application Migration Service (AWS MGN) 處理的 Rest API 自動化遷移程序。 Amazon API Gateway 當您提出請求或啟動交易，例如新增伺服器或檢視伺服器或應用程式的清單時，Rest API 呼叫會呼叫 Amazon API Gateway，其會啟動 AWS Lambda 函數來執行請求。下列 服務詳細說明自動遷移程序的元件。

### 登入 服務
<a name="comp2-log-in"></a>

登入服務包括 `login` Lambda 函數和 Amazon Cognito。透過 `login` API Gateway 使用 API 登入解決方案後， 函數會驗證登入資料、從 Amazon Cognito 擷取身分驗證字符，並將字符詳細資訊傳回給您。您可以使用此身分驗證字符來連線至此解決方案中的其他服務。

### 管理員服務
<a name="comp2-admin"></a>

管理服務包括 Amazon API Gateway、`admin`Lambda 函數和 Amazon DynamoDB。解決方案的管理員可以使用 `admin` Lambda 函數來定義遷移中繼資料結構描述，這是應用程式和伺服器屬性。管理服務 API 提供 DynamoDB 資料表的結構描述定義。包括應用程式和伺服器屬性的使用者資料必須遵循此結構描述定義。典型屬性包括 `app_name`、`server_name`、 和其他欄位`wave_id`，如[將遷移中繼資料匯入工廠](step8.md#import-migration-metadata-into-the-factory)中所識別。根據預設，AWS CloudFormation 範本會自動部署通用結構描述，但可在部署後加以自訂。

管理員也可以使用管理員服務來定義其遷移團隊成員的遷移角色。管理員具有精細控制，可將特定使用者角色映射至特定屬性和遷移階段。遷移階段是執行特定遷移任務的一段時間，例如建置階段、測試階段和切換階段。

### 使用者服務
<a name="comp2-user"></a>

使用者服務包括 Amazon API Gateway、`user`Lambda 函數和 Amazon DynamoDB。使用者可以管理遷移中繼資料，讓他們能夠讀取、建立、更新和刪除遷移中繼資料管道中的波動、應用程式和伺服器資料。

**注意**  
遷移波是一種應用程式分組的概念，具有開始和結束或切換日期。Wave 資料包含為特定遷移波排程的遷移候選應用程式和應用程式群組。

使用者服務為遷移團隊提供 API，以操作解決方案中的資料：使用 Python 指令碼和來源 CSV 檔案建立、更新和刪除資料。如需詳細步驟，請參閱使用 Migration Factory Web 主控台的自動化遷移活動，以及使用命令提示字元的自動化遷移活動。

### 工具服務
<a name="comp2-tools"></a>

部署時的工具服務包括 Amazon API Gateway、可擴展 `tools` Lambda 函數、Amazon DynamoDB、AWS Managed Services 和 AWS Application Migration Service。您可以使用這些服務來連線至第三方 APIs，並自動化遷移程序。與 AWS Application Migration Service 的部署中整合可協助遷移團隊透過按一下按鈕來協調伺服器啟動程序，以同一波啟動所有伺服器，其中包含一組具有相同切換日期的應用程式和伺服器。

透過此解決方案內建的管道功能，遷移團隊可以編寫包含許多任務的複雜遷移序列，提供全受管且自動化的體驗。遷移團隊可以在工具和 AWS 提供的指令碼中使用來自提供的自動化功能的任務，或編寫自己的自訂自動化指令碼。

## Migration Factory Web 介面
<a name="comp-webui"></a>

解決方案包含 Migration Factory Web 介面，預設可在 Amazon S3 儲存貯體中託管，或在提供的 Web 伺服器 （不屬於解決方案部署） 上託管，可讓您使用 Web 瀏覽器完成下列任務：
+ 從 Web 瀏覽器更新波動、應用程式和伺服器中繼資料
+ 管理應用程式和伺服器結構描述定義
+ 建立end-to-end遷移管道，以自動化和管理應用程式遷移的所有層面
+ 執行自動化指令碼以自動化遷移活動，例如檢查先決條件、安裝 MGN 代理程式
+ 建立遷移憑證以連線至來源伺服器
+ 連線至 AWS Application Migration Service 和 AWS Systems Manager 等 AWS 服務，以自動化遷移程序