

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 步骤 7：配置迁移自动化服务器
<a name="step7"></a>

迁移自动化服务器用于执行迁移自动化。

## 构建 Windows 服务器 2019 或更高版本的服务器
<a name="build-a-windows-server-2019-or-later-server"></a>

我们建议您在 AWS 账户中创建服务器，但您也可以在本地环境中创建服务器。如果服务器在 AWS 账户中构建，则它必须与 Cloud Migration Factory 位于同一 AWS 账户和区域中。要查看服务器要求，请参阅[迁移自动化服务器](components.md#comp-mes)。

无论您在何处部署 Windows 实例，都应将其部署为符合您的安全和操作要求的标准 Windows 2019 或更高版本安装版本。

## 安装所需的软件以支持自动化
<a name="installing-required-software"></a>

1. 下载 [Python v3.12.1](https://www.python.org/downloads/release/python-3121/)。

1. **以管理员身份登录并安装 Python v3.12.1，然后选择 “自定义安装”。**

1. 选择**下一步**，然后选择**为所有用户安装**和**将 Python 添加到环境变量**。选择**安装**。

    **迁移工厂 Web 界面 “属性详细信息” 选项卡**   
![python 高级选项](http://docs.aws.amazon.com/zh_cn/solutions/latest/cloud-migration-factory-on-aws/images/python-advanced-options.png)

1. 验证您是否具有管理员权限，打开 `cmd.exe`，然后运行以下命令以逐个安装 Python 程序包：

   ```
   python -m pip install requests
   python -m pip install paramiko
   python -m pip install boto3
   ```

   如果其中任何一个命令失败，请运行以下命令以便升级 pip：

   ```
   python -m pip install --upgrade pip
   ```

1. 安装 [AWS CLI（命令行界面）](https://aws.amazon.com/cli/)。

1. 使用 for [AWS 模块PowerShell 进行](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up-windows.html#ps-installing-awswindowspowershell)安装，确保命令中包含\*-Scope AllUsers \* 参数。

   ```
   Install-Module -Name AWSPowerShell -Scope AllUsers
   ```

1. 以管理员身份打开 PowerShell CLI，打开 PowerShell 脚本执行，然后运行以下命令：

   ```
   Set-ExecutionPolicy RemoteSigned
   ```

## 为迁移自动化服务器配置 AWS 权限并安装 AWS Systems Manager 代理 (SSM 代理)
<a name="configure-aws-permissions-for-the-migration-automation-server"></a>

根据您部署迁移执行服务器的位置，选择以下选项之一，为迁移自动化服务器配置 AWS 权限。IAM 角色或策略向自动化服务器提供权限以及访问 AWS Secrets Manager 的权限，以获取代理安装密钥和出厂服务账户证书。您可以将迁移自动化服务器作为 EC2 实例部署到 AWS，也可以在本地部署。

### 选项 1：通过以下过程在 Amazon EC2 中以及工厂所在的 AWS 账户和区域中为迁移自动化服务器配置权限。
<a name="option-1"></a>

1. 导航到 [AWS CloudFormation 控制台](https://console.aws.amazon.com/cloudformation/home)并选择解决方案的堆栈。

1. 选择**输出**选项卡，在**密钥**列下找到 `AutomationServerIAMRole`，然后记录**值**以便稍后在部署中使用。

    **输出选项卡**   
![cfn 控制台输出选项卡](http://docs.aws.amazon.com/zh_cn/solutions/latest/cloud-migration-factory-on-aws/images/cfn-console-outputs-tab.png)

1. 导航到 [Amazon Elastic Compute Cloud](https://console.aws.amazon.com/ec2/v2/home) 控制台。

1. 从左侧导航窗格中选择**实例**。

1. 在**实例**页面上，使用“筛选实例”字段并输入迁移执行服务器的名称以查找实例。

1. 选择实例，然后在菜单上选择**操作**。

1. 从下拉列表中选择 “**安全**”，然后选择 “**修改 IAM 角色**”。

    **Amazon EC2 控制台**   
![f6 ec2 控制台](http://docs.aws.amazon.com/zh_cn/solutions/latest/cloud-migration-factory-on-aws/images/f6-ec2-console.png)

1. 从 IAM 角色列表中找到并选择包含您在步骤 2 中记录的 `AutomationServerIAMRole` 值的 IAM 角色，然后选择**保存**。

1. 使用远程桌面协议 (RDP) 登录到迁移自动化服务器。

1. 在迁移自动化服务器上下载并安装 [SSM Agent](https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/windows_amd64/AmazonSSMAgentSetup.exe)。
**注意**  
默认情况下，AWS Systems Manager Agent 已预安装在 Windows server 2016 Amazon 机器映像上。仅在未安装 SSM Agent 时才执行此步骤。

1. 将以下标签添加到迁移自动化服务器 EC2 实例：**键** = `role`，**值** = `mf_automation`。

    **Amazon EC2 控制台**   
![添加标签 ec2](http://docs.aws.amazon.com/zh_cn/solutions/latest/cloud-migration-factory-on-aws/images/add-tag-ec2.png)

1. 打开 AWS Systems Manager 控制台并选择**队列管理器**。检查自动化服务器状态，并确保 SSM Agent ping 状态为**在线**。

### 选项 2：通过以下过程在本地配置迁移自动化服务器的权限。
<a name="option-2"></a>

1. 导航到 [AWS CloudFormation 控制台](https://console.aws.amazon.com/cloudformation/home)并选择解决方案的堆栈。

1. 选择**输出**选项卡，在**密钥**列下找到 `AutomationServerIAMPolicy`，然后记录值以便稍后在部署中使用。

    **输出选项卡**   
![输出自动化服务器 iam 策略](http://docs.aws.amazon.com/zh_cn/solutions/latest/cloud-migration-factory-on-aws/images/outputs-automation-server-iam-policy.png)

1. 导航到 [Identity and Access Management 控制台](https://console.aws.amazon.com/iam/home)。

1. 从左侧导航窗格中，选择**用户**，然后选择**添加用户**。

1. 在**用户名**字段中，创建一个新用户。

1. 选择**下一步**。

1. 在**设置权限**页面的**权限选项**下，选择**直接附加策略**。此时将显示策略列表。

1. 从策略列表中，找到并选择包含您在[步骤 2](step-2-launch-the-stack.md) 中记录的 `AutomationServerIAMPolicy` 值的策略。

1. 选择 “**下一步**”，然后确认选择了正确的策略。

1. 选择**创建用户**。

1. 在您被重定向到 “**用户**” 页面后，选择您在上一步中创建的用户，然后选择 “**安全证书**” 选项卡。

1. 在**访问密钥**部分，选择**创建访问密钥**。
**注意**  
访问密钥包含访问密钥 ID 和秘密访问密钥，用于签署对 AWS 发出的编程请求。如果您没有访问密钥，可以从 AWS 管理控制台创建访问密钥。作为最佳实践，请勿将 root 用户访问密钥用于任何不需要的任务。而是为自己[创建一个具有访问密钥的新管理员 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started_create-admin-group.html)。  
仅当创建访问密钥时，您才能查看或下载秘密访问密钥。以后您无法恢复它们。不过，您随时可以创建新的访问密钥。您还必须拥有执行所需 IAM 操作的权限。有关更多信息，请参阅《IAM 用户指南》**中的[访问 IAM 资源所需的权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_permissions-required.html)。

1. 要查看新访问密钥对，请选择 **Show (显示)**。关闭此对话框后，您将无法再次访问该秘密访问密钥。您的凭证与下面类似：
   +  `Access key ID: AKIAIOSFODNN7EXAMPLE` 
   +  `Secret access key: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY` 

1. 要下载密钥对，请选择 **Download .csv file**（下载 .csv 文件）。将密钥存储在安全位置。关闭此对话框后，您将无法再次访问该秘密访问密钥。
**重要**  
请对密钥保密以保护您的 AWS 账户，切勿通过电子邮件发送密钥。请勿对组织外部共享密钥，即使有来自 AWS 或 Amazon.com 的询问。合法代表 Amazon 的任何人永远都不会要求您提供密钥。

1. 下载 `0csv` 文件之后，选择 **Close (关闭)**。在创建访问密钥时，预设情况下，密钥对处于活动状态，并且您可以立即使用此密钥对。

1. 使用远程桌面协议 (RDP) 登录到迁移执行服务器。

1. 以管理员身份登录，打开命令提示符 (`CMD.exe`)。

1. 运行以下命令在服务器上配置 AWS 证书。用您的值替换{{<your\_access\_key\_id>}}{{<your\_secret\_access key>}}、和{{<your\_region>}}：

   ```
   SETX /m AWS_ACCESS_KEY_ID <your_access_key_id>
   SETX /m AWS_SECRET_ACCESS_KEY <your_secret_access key>
   SETX /m AWS_DEFAULT_REGION <your_region>
   ```

1. 重启自动化服务器。

1. 使用混合模式（本地服务器）安装 AWS Systems Manager Agent。

   1. 创建混合激活；请参阅《AWS Systems Manager 用户指南》**中的[创建激活（控制台）](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-managed-instance-activation.html#create-managed-instance-activation-console)。在此过程中，当系统要求提供 IAM 角色时，请选择现有的 IAM 角色，然后选择带有后缀 **-automation-server** 的角色，该角色是在部署 Cloud Migration Factory 堆栈时自动创建的角色。

   1. 以管理员身份登录到迁移自动化服务器。

   1. 安装 AWS Systems Manager Agent (SSM Agent)；请参阅《AWS Systems Manager 用户指南》**中的[为混合云和多云环境安装 SSM Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-install-managed-win.html)。使用在步骤 20.a 中创建的混合激活。

   1. 成功安装该代理后，在 AWS Systems Manager 控制台中，选择**队列管理器**。标识带有 **mi-** 前缀且状态为**在线**的节点 ID。

       **舰队经理**   
![车队经理](http://docs.aws.amazon.com/zh_cn/solutions/latest/cloud-migration-factory-on-aws/images/fleet-manager.png)

   1. 选择**节点 ID** 并确保 IAM 角色是您选择的带有 **automation-server** 后缀的角色。

   1. 为此混合节点添加以下标签：**键** = `role`，**值** = `mf_automation`。全部为小写。

       **标签-混合节点**   
![标签：混合节点](http://docs.aws.amazon.com/zh_cn/solutions/latest/cloud-migration-factory-on-aws/images/tag-hybrid-node.png)