迁移单体式虚拟机 - 发现和评估

在使用 Migrate for Anthos and GKE 迁移虚拟机工作负载之前,您必须先确认工作负载是否适合迁移。您将学习如何使用发现工具快速评估合适的解决方案。此外,您还将创建一个处理集群,以便将 Migrate for Anthos and GKE 安装到该集群,从而为迁移阶段做好准备。

目标

在本教程结束时,您将了解如何执行以下操作:

  • 使用 Linux 发现工具确定工作负载是否适合迁移。
  • 创建特定于迁移环境的处理集群。
  • 安装 Migrate for Anthos and GKE。

准备工作

本教程是对概览和设置教程的后续教程。在开始本教程之前,请按照该页面上的说明设置您的项目并部署 Bank of Anthos。

使用发现工具

在本部分中,您将学习如何使用迁移 CLI 工具收集有关候选单体式虚拟机的信息,并判断该虚拟机是否适合使用 Migrate for Anthos and GKE 进行迁移。

  1. 使用 Cloud Shell 在您的分类记录器单体式虚拟机中创建一个 SSH 会话。如果系统要求您输入密码,请按 Enter 键将其留空。

    gcloud compute ssh ledgermonolith-service --tunnel-through-iap
    
  2. 为 Linux 发现工具的收集脚本和分析工具创建一个目录。

    mkdir m4a && cd m4a
    
  3. 将收集脚本下载到虚拟机并使其可执行。

    curl -O https://anthos-migrate-release.storage.googleapis.com/v1.9.0/linux/amd64/mfit-linux-collect.sh
    chmod +x mfit-linux-collect.sh
    
  4. 将分析工具 mfit 下载到虚拟机并使其可执行。

    curl -O https://anthos-migrate-release.storage.googleapis.com/v1.9.0/linux/amd64/mfit
    chmod +x mfit
    
  5. 在虚拟机上运行收集脚本。

    sudo ./mfit-linux-collect.sh
    

    收集脚本将生成一个名为 m4a-collect-ledgermonolith-service-TIMESTAMP.tar 的 TAR 归档,并将其保存到当前目录中。时间戳的格式为 YYYY-MM-DD-hh-mm

  6. 运行分析工具以导入归档、评估虚拟机并生成报告。

    ./mfit assess sample m4a-collect-ledgermonolith-service-TIMESTAMP.tar --format json > ledgermonolith-mfit-report.json
    

    分析工具会生成一个名为 analysis-report-<timestamp>.json 的 JSON 文件,并将其保存在当前目录中。

  7. 退出 SSH 会话。

    exit
    
  8. 如需查看迁移发现工具的输出,请先将生成的报告从虚拟机复制到 Cloud Shell 环境。

    gcloud compute scp --tunnel-through-iap \
      ledgermonolith-service:~/m4a/ledgermonolith-mfit-report.json ${HOME}/
    
  9. 将分析报告下载到本地机器。

    cloudshell download ${HOME}/ledgermonolith-mfit-report.json
    
  10. 在 Cloud Console 中打开 Migrate for Anthos and GKE 页面。

    转到 Migrate for Anthos and GKE 页面

  11. 拟合评估标签页中,点击浏览,然后选择您刚在本地机器上下载的 JSON 报告。

  12. 点击打开。这将读取报告并以可读格式生成结果。请注意,您的 ledgermonolith-service 虚拟机已出现在已评估虚拟机列表中。

  13. 点击该虚拟机的名称以打开其详细报告。

    由于该虚拟机内部存在集成数据库,因此其拟合结果应显示需要进行少量活动并包含一条额外建议。其他一切看起来正常。

创建处理集群

在以下步骤中,您将创建一个用作处理集群的 GKE 集群。这是安装 Migrate for Anthos and GKE 并执行迁移的位置。 此处,您将有意不使用其上运行 Bank of Anthos 的集群,以避免中断其服务。迁移成功完成后,您便可以安全地删除此处理集群。

  1. 创建一个新的 Kubernetes 集群以用作处理集群。

    gcloud container clusters create migration-processing \
      --project=PROJECT_ID --zone=COMPUTE_ZONE --machine-type e2-standard-4 \
      --image-type ubuntu --num-nodes 1 \
      --subnetwork default --scopes "https://www.googleapis.com/auth/cloud-platform" \
      --addons HorizontalPodAutoscaling,HttpLoadBalancing
    
  2. 在 Cloud Console 中打开 Migrate for Anthos and GKE 页面。

    转到 Migrate for Anthos and GKE 页面

  3. 处理集群标签页中,点击添加处理集群

  4. 选择 Linux 作为工作负载类型,然后点击下一步

  5. 从下拉列表中选择您在上文中创建的集群 migration-processing,然后点击下一步

  6. Cloud Shell 中执行每个命令,以执行以下操作:

    • 创建允许 Migrate for Anthos and GKE 访问 Container Registry 和 Cloud Storage 的服务帐号。
    • 安装 Migrate for Anthos and GKE 组件。
  7. 使用最后一个 Cloud Shell 命令来监控安装状态。

    安装完成之前,您可能会看到如下所示的消息。如果是这样,请等待几分钟,等安装完成后再重新运行 migctl doctor

    [!] Deployment
       validation job is in-progress
    

    以下示例输出中的对勾标记表示 Migrate for Anthos and GKE 已成功部署。

    [✓] Deployment
    [✓] Docker Registry
    [✓] Artifacts Repository
    [✗] Source Status
       No source was configured. Use 'migctl source create' to define one.
    [!] Default storage class
    
  8. 安装成功后选择完成

后续步骤

现在,您已了解如何使用迁移发现工具来评估您的虚拟机是否适合使用 Migrate for Anthos and GKE 进行迁移,以及如何创建处理集群以便为迁移做好准备。接下来,您可以继续学习本教程的下一部分,即迁移和部署

如果您至此结束本教程的学习,请务必清理您的 Google Cloud 项目和资源。

清除数据

为避免产生不必要的 Google Cloud 费用,您应该在完成本教程后立即删除用于本教程的资源。这些资源包括:

  • boa-cluster GKE 集群
  • migration-processing GKE 集群
  • ledgermonolith-service Compute Engine 虚拟机

您可以手动删除这些资源,也可以按照下面的步骤删除项目,这也将移除所有资源。

  • 在 Cloud Console 中,转到管理资源页面。

    转到“管理资源”

  • 在项目列表中,选择要删除的项目,然后点击删除
  • 在对话框中输入项目 ID,然后点击关闭以删除项目。