ワークロードが開始しない

移行を開始しようとすると、エラーが発生し、ワークロードを正常に開始できないことがあります。

ワークロードを正常に開始できないエラーが発生した場合は、サポートに連絡する前に、このドキュメントに記載されているトラブルシューティングの手順を試してください。

Google Container Registry からイメージを pull するのに必要な権限を追加する

ワークロードを開始するには、クラスタで Google Container Registry(GCR)からワークロード イメージを pull する必要があります。この操作は、権限がないために失敗することが時々あります。

この問題を特定するには、次の手順を行います。

  1. Google Cloud コンソールで、[オブジェクト ブラウザ] ページに移動します。

    オブジェクト ブラウザに移動

  2. クラスタを選択します。

  3. [オブジェクトの種類] のリストで [Pod] を選択します。

  4. 表示される Pod のリストからワークロードに対応する Pod を見つけます。Pod の詳細を開くには、Pod 名をクリックします。

  5. [Pod の詳細] ページに、failed to pull and unpack image エラーと 403 forbidden エラーを示すバナーが表示される場合は、ワークロード イメージを pull するために必要な権限がありません。

この問題を解決する方法は次のとおりです。

  1. プロジェクトのデフォルトの Compute Engine サービス アカウントに、Storage オブジェクト閲覧者ロールを追加します

  2. 次に、クラスタから Pod を削除します。

    新規の Pod が自動的に作成され、削除された Pod に置き換えられます。

これで、移行されたワークロードにアクセスできるようになります。

GKE Autopilot クラスタを無効にする

Migrate to Containers では、GKE Autopilot クラスタの使用がデフォルトで有効になっています。そのため、Migrate to Containers 用に新しく作成された移行では、特に指定しない限り、GKE Autopilot クラスタが使用されます。

GKE Autopilot クラスタを無効にしてから移行ワークロードを再開することをお試しください。

GKE Autopilot クラスタを無効にするには、次の手順を実行して v2kServiceManagerfalse に設定します。

  1. 移行計画を編集します

    1. MIGRATION_NAME.yaml ファイルで v2kServiceManager を探して、false に設定します。

      変更前:

        v2kServiceManager: true
      

      変更後:

        v2kServiceManager: false
      
    2. ファイルを保存します。

  2. Migrate to Containers を使用して移行を初めからやり直します

GKE Autopilot クラスタを無効にしてもワークロードが正常に開始しない場合は、サポートにお問い合わせください。