你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
教程:使用 Azure Migrate:发现和评估发现 Google Cloud Platform(GCP)实例
在迁移到 Azure 的过程中,你将发现用于评估和迁移的服务器。
本教程介绍如何采用轻型 Azure Migrate 设备使用 Azure Migrate:发现和评估工具发现 Google Cloud Platform(GCP)实例。 在 GCP上服务器上部署设备,以持续发现计算机和性能元数据。
在本教程中,你将了解如何执行以下操作:
- 设置 Azure 帐户。
- 准备 GCP 上服务器以进行发现。
- 创建项目。
- 设置 Azure Migrate 设备。
- 启动持续发现。
注意
这些教程介绍了尝试某个方案并使用默认选项的最快路径。
如果没有 Azure 订阅,请在开始之前创建一个免费帐户。
先决条件
在开始本教程之前,请先检查是否已满足这些先决条件。
要求 | 详细信息 |
---|---|
设备 | 需要一台 GCP 上服务器以运行 Azure Migrate 设备。 计算机应: - 已安装 Windows Server 2019 或 Windows Server 2022。 不支持在具有 Windows Server 2019 的计算机上运行设备。 - 具有 16-GB RAM、8 个 vCPU、约 80 GB 的磁盘存储和外部虚拟交换机。 - 静态或动态 IP 地址,可直接访问或通过代理访问 Internet。 |
Windows 服务器实例 | 允许在 WinRM 端口 5985 (HTTP) 上进行入站连接以便发现 Windows 服务器。 |
Linux 服务器实例 | 允许在端口 22 (TCP) 上进行入站连接以便发现 Linux 服务器。 |
准备 Azure 用户帐户
若要创建项目并注册 Azure Migrate 设备,需要一个具有以下权限的帐户:
- Azure 订阅的参与者或所有者权限。
- Microsoft Entra 应用的注册权限。
如果你刚刚创建了免费的 Azure 帐户,那么你就是订阅的所有者。 如果你不是订阅所有者,请让所有者分配权限,如下所示:
在 Azure 门户中,搜索“订阅”,然后在“服务”下选择“订阅” 。
在“订阅”页上,选择要在其中创建项目的订阅。
选择“访问控制 (IAM)”。
选择“添加”>“添加角色分配”,打开“添加角色分配”页面。
分配以下角色。 有关详细步骤,请参阅使用 Azure 门户分配 Azure 角色。
设置 值 角色 参与者或所有者 将访问权限分配到 用户 成员 azmigrateuser 若要注册设备,Azure 帐户需要权限才能注册 Microsoft Entra 应用。
在门户中,转到 Microsoft Entra ID>用户。
请求租户或全局管理员将应用程序开发人员角色分配给帐户,以允许用户注册 Microsoft Entra 应用。 了解详细信息。
准备好 GCP 实例
设置设备可用于访问 GCP 上服务器的帐户。
- 对于 Windows 服务器:
- 在未加入域的服务器上设置本地用户帐户,并在想要包括在发现中的加入域的服务器上设置一个域帐户。 将用户帐户添加到以下组:
- 远程管理用户
- 性能监视器用户
- 性能日志用户。
- 在未加入域的服务器上设置本地用户帐户,并在想要包括在发现中的加入域的服务器上设置一个域帐户。 将用户帐户添加到以下组:
- 对于 Linux 服务器:
- 需要在要发现的 Linux 服务器上拥有根帐户。 如果无法提供根帐户,请参阅支持矩阵中的说明以采用替代方法。
- Azure Migrate 在发现 GCP 实例时使用密码验证。 GCP 实例默认不支持密码身份验证。 需要先启用密码验证,才能发现实例。
- 登录到每台 Linux 计算机。
- Open the sshd_config file: vi /etc/ssh/sshd_config
- 在文件中,定位到 PasswordAuthentication 行,然后将值改为“yes”。
- 保存文件并将其关闭。 重启 ssh 服务。
- 如果使用根用户来发现 Linux 服务器,请确保服务器上允许根登录。
- 登录到每台 Linux 计算机
- Open the sshd_config file: vi /etc/ssh/sshd_config
- 在文件中,定位到 PermitRootLogin 行,然后将值改为“yes” 。
- 保存文件并将其关闭。 重启 ssh 服务。
设置项目
设置新项目。
在 Azure 门户 >“所有服务”中,搜索“Azure Migrate”。
在“服务”下选择“Azure Migrate”。
在“开始”中,选择“创建项目”。
在“创建项目”中,选择 Azure 订阅和资源组。 如果没有资源组,请创建一个资源组。
选择创建。
等待几分钟,让项目完成部署。 默认会将“Azure Migrate:发现和评估”工具添加到新项目。
注意
如果你已经创建了一个项目,则可以使用同一个项目注册其他设备,以发现和评估更多服务器。 了解详细信息。
设置设备
Azure Migrate 设备是一种轻型设备,由 Azure Migrate:发现和评估用于执行以下操作:
- 发现本地服务器。
- 将已发现的服务器的元数据和性能数据发送到 Azure Migrate:发现和评估。
详细了解 Azure Migrate 设备。
若要设置该设备,请执行以下操作:
- 提供设备名称,并在门户中生成项目密钥。
- 从 Azure 门户下载带有 Azure Migrate 安装程序脚本的压缩文件。
- 从压缩文件中提取内容。 使用管理权限启动 PowerShell 控制台。
- 执行 PowerShell 脚本以启动设备 Web 应用程序。
- 完成设备的首次配置,并使用项目密钥将其注册到项目。
1.生成项目密钥
- 在“迁移目标”>“服务器、数据库和 Web 应用”>“Azure Migrate: 发现和评估”中,选择“发现”。
- 在“发现服务器”“服务器是否已虚拟化?”中,选择“物理或其他(AWS、GCP、Xen 等)”。
- 在“1: 生成项目密钥”中,提供将为发现 GCP 或虚拟服务器而设置的 Azure Migrate 设备的名称。 该名称应是字母数字,长度为 14 个或更少的字符。
- 单击“生成密钥”,开始创建所需的 Azure 资源。 在创建资源期间,请不要关闭“发现服务器”页。
- 成功创建 Azure 资源后,会生成一个项目密钥。
- 复制该密钥,因为配置设备时需要输入该密钥才能完成设备注册。
2.下载安装程序脚本
在“2: 下载 Azure Migrate 设备”中,单击“下载”。
验证安全性
在部署压缩文件之前检查其安全性。
- 在下载文件的计算机上,打开管理员命令窗口。
- 运行以下命令以生成 zip 文件的哈希:
C:\>CertUtil -HashFile <file_location> [Hashing Algorithm]
- 公有云的示例用法:
C:\>CertUtil -HashFile C:\Users\administrator\Desktop\AzureMigrateInstaller-Server-Public.zip SHA256
- 政府云的示例用法:
C:\>CertUtil -HashFile C:\Users\administrator\Desktop\AzureMigrateInstaller-Server-USGov.zip SHA256
- 验证最新的设备版本和哈希值:
3.运行 Azure Migrate 安装程序脚本
此安装程序脚本执行以下操作:
- 安装用于 GCP 服务器发现和评估的代理和 Web 应用程序。
- 安装 Windows 角色,包括 Windows 激活服务、IIS 和 PowerShell ISE。
- 下载并安装 IIS 可重写模块。
- 更新 Azure Migrate 的注册表项 (HKLM) 和永久性设置详细信息。
- 在路径下创建以下文件:
- 配置文件:%Programdata%\Microsoft Azure\Config
- 日志文件:%Programdata%\Microsoft Azure\Logs
按如下所示运行脚本:
将压缩文件解压缩到托管设备的服务器上的某个文件夹中。 请确保不要在现有 Azure Migrate 设备上的计算机中运行该脚本。
使用管理(提升)权限在上述服务器上启动 PowerShell。
将 PowerShell 目录更改为从下载的压缩文件中提取内容的文件夹。
运行以下命令,以运行名为
AzureMigrateInstaller.ps1
的脚本:对于公有云:
PS C:\Users\administrator\Desktop\AzureMigrateInstaller-Server-Public> .\AzureMigrateInstaller.ps1
对于 Azure 政府:
PS C:\Users\Administrators\Desktop\AzureMigrateInstaller-Server-USGov>.\AzureMigrateInstaller.ps1
脚本将在成功完成时启动设备 Web 应用程序。
如果遇到任何问题,可以访问位于 C:\ProgramData\Microsoft Azure\Logs\AzureMigrateScenarioInstaller_Timestamp.log 的脚本日志来进行故障排除。
验证设备的 Azure 访问权限
4.配置设备
首次设置设备。
在可连接到该设备的任一计算机上打开浏览器,然后打开设备 Web 应用的 URL:https://设备名称或 IP 地址: 44368。
或者,可以在桌面上单击应用快捷方式打开该应用。
接受许可条款,并阅读第三方信息。
设置先决条件并注册设备
在配置管理器中,选择“设置先决条件”,然后完成以下步骤:
连接:设备将检查服务器是否可访问 Internet。 如果服务器使用代理:
选择“设置代理”以指定代理地址(以 或
http://ProxyFQDN
形式,其中“FQDN”指“完全限定的域名”)和侦听端口。如果代理需要身份验证,请输入凭据。
如果已添加代理详细信息或已禁用代理或身份验证,请选择“保存”,再次触发连接并进行连接性检查。
仅支持 HTTP 代理。
时间同步:检查设备上的时间是否与 Internet 时间同步,以便正常运行发现。
安装更新并注册设备:若要运行自动更新并注册设备,请执行以下步骤:
注意
这是 Azure Migrate 设备中的新用户体验,仅在你使用从门户下载的最新 OVA/安装程序脚本设置设备后才可用。 已注册的设备会继续看到较旧版本的用户体验,并且会继续正常工作,没有任何问题。
若要使设备运行自动更新,请粘贴从门户复制的项目密钥。 如果没有该密钥,请转到“Azure Migrate: 发现和评估”>“概述”>管理现有设备”。 选择生成项目密钥时提供的设备名称,然后复制显示的密钥。
设备会验证密钥并启动自动更新服务,该服务会将设备上的所有服务更新为其最新版本。 在自动更新运行后,你可以选择“查看设备服务”,以查看设备服务器上运行的服务的状态和版本。
若要注册设备,需要选择“登录”。 在“继续使用 Azure 登录”中,选择“复制代码并登录”来复制设备代码(必须提供设备代码才能通过 Azure 进行身份验证)并在新的浏览器标签页中打开 Azure 登录提示。请确保已禁用浏览器中的弹出窗口阻止程序,这样才能看到提示。
在浏览器的新选项卡中,粘贴设备代码并使用 Azure 用户名和密码登录。 不支持使用 PIN 登录。
注意
如果在未登录的情况下意外关闭了登录选项卡,请刷新设备配置管理器的浏览器选项卡以显示设备代码和“复制代码并登录”按钮。
成功登录后,返回到显示设备配置管理器的浏览器选项卡。 如果用于登录的 Azure 用户帐户对在密钥生成期间创建的 Azure 资源具有所需的权限,则会开始设备注册。
成功注册设备后,若要查看注册详细信息,请选择“查看详细信息”。
可以在设备配置期间随时重新运行先决条件,以检查设备是否满足所有先决条件。
启动持续发现
现在,从设备连接到要发现的 GCP 服务器,并启动发现。
在“步骤 1: 提供用于发现 Windows 和 Linux 物理服务器或虚拟服务器的凭据”,选择“添加凭据”。
对于 Windows 服务器,选择作为 Windows 服务器的源类型,指定凭据的友好名称,添加用户名和密码。 选择“保存”。
如果将基于密码的身份验证用于 Linux 服务器,请选择“Linux 服务器 (基于密码)”作为源类型,为凭据指定易用名称,并添加用户名和密码。 选择“保存”。
如果将基于 SSH 密钥的身份验证用于 Linux 服务器,可选择“Linux 服务器 (基于 SSH 密钥)”作为源类型,为凭据指定易用名称,添加用户名,浏览并选择 SSH 私钥文件。 选择“保存”。
- Azure Migrate 支持由 ssh-keygen 命令使用 RSA、DSA、ECDSA 和 ed25519 算法生成的 SSH 私钥。
- 目前 Azure Migrate 不支持基于密码的 SSH 密钥。 使用不含密码的 SSH 密钥。
- 目前 Azure Migrate 不支持 PuTTY 生成的 SSH 私钥文件。
- Azure Migrate 支持 SSH 私钥文件的 OpenSSH 格式,如下所示:
如果要一次添加多个凭据,请选择“添加更多”以保存和添加更多凭据。
注意
默认情况下,凭据将用于收集有关已安装的应用程序、角色和功能的数据,以及从 Windows 和 Linux 服务器收集依赖项数据,除非你禁用滑块以不执行这些功能(如上一步中的说明)。
在“步骤 2: 提供物理服务器或虚拟服务器详细信息”中,选择“添加发现源”,以指定服务器 IP 地址/FQDN 以及为用于连接到服务器的凭据指定易记名称。
可以一次“添加单个项目”,也可以一次“添加多个项目” 。 还可以选择通过“导入 CSV”提供服务器详细信息。
- 如果选择“添加单个项目”,则可以选择 OS 类型,为凭据指定一个易记名称,并添加服务器“IP 地址/FQDN”,然后选择“保存”。
- 如果选择添加多个项目,则可以通过在文本框中指定服务器 IP 地址/FQDN 并为凭据指定一个易记名称来一次添加多个记录。 验证**已添加的记录,然后选择“保存”。
- 如果选择“导入 CSV”(默认已选),可以下载 CSV 模板文件,并使用服务器 IP地址/FQDN 和凭据的易记名称填充文件。 然后,将该文件导入设备,验证文件中的记录,然后选择“保存”。
单击“保存”后,设备将尝试验证与已添加服务器的连接,并在每个服务器的表中显示“验证状态”。
- 如果服务器验证失败,请通过单击表中“状态”列中的“验证失败”来查看错误。 解决此问题,然后再次验证。
- 若要删除服务器,请选择“删除”。
在开始发现之前,可以随时重新验证与服务器之间的连接。
在启动发现之前,可以选择禁用该滑块,以便不在添加的服务器上执行软件清单和无代理依赖项分析。 随时可以更改此选项。
若要执行 SQL Server 实例和数据库的发现,可以添加其他凭据(Windows 域/非域、SQL 身份验证凭据),设备将尝试自动将凭据映射到 SQL 服务器。 如果添加域凭据,设备将根据域的 Active Directory 对凭据进行身份验证,以防止任何用户帐户被锁定。若要检查域凭据的验证,请执行以下步骤:
- 在配置管理器的凭据表中,查看域凭据的“验证状态”。 只会验证域凭据。
- 如果验证失败,可以选择“失败”状态以查看验证错误。 解决此问题,然后选择“重新验证凭据”以重新尝试凭据验证。
启动发现
单击“开始发现”,开始发现已成功验证的服务器。 成功启动发现后,你可以针对表中的每个服务器检查发现状态。
发现的工作原理
大约需要 2 分钟才能完成对 100 台服务器及其元数据的发现以显示在 Azure 门户中。
软件清单(发现已安装的应用程序)会在服务器发现完成后自动启动。
软件盘存会标识在服务器上运行的 SQL Server 实例。 设备利用该功能收集的信息,尝试通过 Windows 身份验证凭据或设备上提供的 SQL Server 身份验证凭据连接到 SQL Server 实例。 然后,它会收集有关 SQL Server 数据库及其属性的数据。 SQL Server 发现每 24 小时执行一次。
设备只能连接到与其建立了网络连接的 SQL Server 实例,而软件清单本身可能无需网络连接。
发现已安装的应用程序所用的时间取决于被发现的服务器的数量。 如果有 500 个服务器,门户中的 Azure Migrate 项目大约需要一小时才会显示发现的库存。
在软件盘存过程中,针对服务器循环访问已添加的服务器凭据,并对这些凭据进行验证,以便进行无代理依赖项分析。 完成服务器发现后,可以在门户中对服务器启用无代理依赖项分析。 只能选择验证成功的服务器来启用无代理依赖项分析。
在开始发现后的 24 小时内,SQL Server 实例和数据库数据将开始在门户中显示。
默认情况下,Azure Migrate 使用最安全的方法连接到 SQL 实例,即,Azure Migrate 通过将 TrustServerCertificate 属性设置为
true
,对 Azure Migrate 设备和源 SQL Server 实例之间的通信进行加密。 此外,传输层使用 SSL 加密通道并绕过证书链来验证信任。 因此,必须将设备服务器设置为信任证书的根颁发机构。 但是,可以通过在设备上选择“编辑 SQL Server 连接属性”来修改连接设置。 了解详细信息以了解要选择的内容。若要发现 SQL Server 实例和数据库,Windows 或 SQL Server 帐户必须是 sysadmin 服务器角色的成员,或者对每个 SQL Server 实例具有这些权限。
验证门户中的服务器
发现完成后,可以验证服务器是否出现在门户中。
- 打开 Azure Migrate 仪表板。
- 在“服务器、数据库和 Web 应用”>“Azure Migrate: 发现和评估”页中,单击显示“已发现服务器”计数的图标。
后续步骤
- 评估 GCP 服务器以便迁移到 Azure VM。
- 查看设备在发现期间收集的数据。