我的工作负载无法启动

尝试启动迁移时,您可能会遇到阻止工作负载正确启动的错误。

如果您遇到阻止工作负载正确启动的错误,请先尝试本文档中介绍的问题排查步骤,然后再联系支持团队。

添加从 Google Container Registry 拉取映像所需的权限

为了启动工作负载,集群需要从 Google Container Registry (GCR) 拉取工作负载映像,但有时可能会因缺少权限而失败。

如需确定此问题,请执行以下步骤:

  1. 在 Google Cloud 控制台中,转到对象浏览器页面。

    前往对象浏览器

  2. 选择您的集群。

  3. 对象种类列表中,选择 Pod

  4. 在显示的 Pod 列表中,找到与您的工作负载相对应的 Pod,然后点击 Pod 名称以打开 Pod 详细信息。

  5. Pod 详细信息页面上,如果出现显示 failed to pull and unpack image403 forbidden 错误的横幅,则表示缺少拉取工作负载映像所需的权限。

如需解决此问题,请按以下步骤操作:

  1. 为项目中的默认 Compute Engine 服务账号添加一个角色(名为 Storage Object Viewer)。

  2. 然后,从集群中删除 Pod。

    系统会自动创建一个新 Pod 来替换已删除的 Pod。

迁移的工作负载现在应该可以访问。

停用 GKE Autopilot 集群

从 Migrate to Containers 开始,GKE Autopilot 集群默认处于启用状态。因此,除非另有指定,否则为 Migrate to Containers 创建的任何新迁移都将使用 GKE Autopilot 集群。

请尝试停用 GKE Autopilot 集群,然后尝试重新启动迁移工作负载。

如需停用 GKE Autopilot 集群,请执行以下步骤以将 v2kServiceManager 设置为 false

  1. 修改迁移计划

    1. MIGRATION_NAME.yaml 文件中,找到 v2kServiceManager 并将其设置为 false

      更改:

        v2kServiceManager: true
      

      更改为:

        v2kServiceManager: false
      
    2. 保存文件。

  2. 使用 Migrate to Containers 重新启动迁移

如果您的工作负载在停用 GKE Autopilot 集群后仍无法正确启动,那么请与您的支持渠道联系。