VM の一括作成に関するトラブルシューティング


このドキュメントでは、バルク インスタンス API の作成オペレーションに関する問題を解決する方法について説明します。

オペレーション エラー

バルク インスタンス API を使用して VM を作成する場合に、create リクエストが正常に開始されると、HTTP 200 OKRUNNING のステータスで返されます。リクエストが正常に開始しない場合、API は次のレスポンスのいずれかを返します。

無効

VM の作成時に次の API レスポンス フィールドが存在する場合、API リクエストが正しく作成されていないか、バルク API でサポートされていないプロパティが使用されています。

API レスポンス フィールド:

  • HTTP 400
  • "reason": "invalid"

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

  1. レスポンスに含まれる message フィールドを確認して、リクエスト内のどのプロパティがエラーの原因となったかを特定します。
  2. エラーの原因となったプロパティを更新します。
  3. リクエストを再試行します。
  4. リクエストが再度失敗した場合は、API Explorer を使用してリクエストを検証します。詳細については、API リクエストの検証をご覧ください。

割り当てを超過した

VM の作成時に次の API レスポンス フィールドが存在する場合は、リソースの割り当て上限に達しています。割り当ての詳細については、リソースの割り当てをご覧ください。

API レスポンス フィールド:

  • HTTP 403
  • "reason": "quotaExceeded"
この問題を解決するには、次の手順を行います。

  1. 「message」フィールドを表示して、リクエストがどのリソース割り当てを超過したのかを特定します。
  2. 次のいずれかを行います。

レート制限を超過した

VM の作成時に次の API レスポンス フィールドが存在する場合は、1 秒あたり 20 リクエストのリクエスト上限に達しているか、同時に 10 を超える一括オペレーションを実行しています。

API レスポンス フィールド:

  • HTTP 403
  • "reason": "rateLimitExceeded"

この問題を解決するには、いくつかのリクエストが完了してから、もう一度リクエストを試みます。

処理能力が不足している

VM の作成時に次の API レスポンス フィールドが存在する場合、VM を作成しようとしたリージョンまたはゾーンの容量が不足しています。

API レスポンス フィールド:

  • HTTP 503
  • "reason": "insufficientCapacity"
この問題を解決するには、以下のいずれかを行います。

  • 別のリージョンに VM を作成する
  • ゾーン エンドポイントを使用している場合に、別のゾーンに VM を作成する
  • 別の VM 構成を試す
  • しばらくしてからもう一度リクエストを試す

リクエストのステータス エラー

バルク インスタンス API を使用して VM を作成する場合に、create リクエストが正常に開始されると、HTTP 200 OKRUNNING のステータスで返されます。ただし、リクエストが完了する前に失敗する場合があります。リクエストのステータスを確認すると、リクエストが正常に完了したことを確認できます。リクエストが正常に完了しなかった場合は、次のいずれかのリクエスト ステータスが表示されます。

割り当てを超過した

オペレーションをポーリングするときに、次の API レスポンス フィールドが存在する場合は、リソースの割り当て上限に達したため、リクエストを処理できませんでした。割り当ての詳細については、リソースの割り当てをご覧ください。

API レスポンス フィールド:

  • "status": "done"
  • "httpErrorMessage": "FORBIDDEN"
  • "code"": "QUOTA_EXCEEDED"

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

  1. 「message」フィールドを表示して、リクエストがどのリソース割り当てを超過したのかを特定します。
  2. 次のいずれかを行います。

リソースがすでに存在する

オペレーションをポーリングするときに、次の API レスポンス フィールドが存在する場合、すでに存在するリソースを作成しようとしたため、リクエストは失敗しました。

API レスポンス フィールド:

  • code: RESOURCE_ALREADY_EXISTS
  • httpErrorMessage: CONFLICT
  • status: DONE

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

  1. message フィールドを表示して、すでに存在するリソースの名前を確認します。
  2. 別の namePattern を使用してリクエストを再試行します。詳細については、1 つのリージョンに複数の VM を作成するをご覧ください。

処理能力が不足している

オペレーションをポーリングするときに、次の API レスポンス フィールドが存在する場合、VM を作成しようとしたリージョンまたはゾーン(ゾーン エンドポイントを使用している場合)の容量が不足しているため、リクエストが失敗しました。

API レスポンス フィールド:

  • "status": "DONE"
  • "httpErrorMessage": "SERVICE UNAVAILABLE"
  • "code": "ZONE_RESOURCE_POOL_EXHAUSTED"

この問題を解決するには、以下のいずれかを行います。

  • 別のリージョンに VM を作成する
  • ゾーン エンドポイントを使用している場合に、別のゾーンに VM を作成する
  • 別の VM 構成を試す
  • しばらくしてからもう一度リクエストを試す

次のステップ