ヒントとトラブルシューティング

Deployment Manager の使用中に問題が発生した場合は、次のセクションを参考にしてください。

デプロイ時の一般的なエラー

デプロイで表示されるエラーは、次の形式になります。

- code: ERROR_CODE
  location: /path/to/template
  message: "{"Error message"}"

よく表示されるエラーの種類については、次のセクションで説明します。

リソースエラー(コード: RESOURCE_ERROR

リソースエラーは、Deployment Manager で管理しているリソースの基盤となる API から伝達されます。たとえば、デプロイに Compute Engine VM インスタンスがあり、インスタンスの作成中にエラーが発生した場合、そのエラーは Deployment Manager のリソースエラーとして表示されます。

Deployment Manager のレスポンスでは、message.ResourceErrorCodemessage.ResourceErrorMessage フィールドの基盤となる API からエラーが表示されます。

検証エラー(コード: CONDITION_NOT_MET

ブール値が想定され、文字列値を使用する際などに構成内のフィールドが検証で不合格だった場合は、検証エラーが発生します。

依存関係のループ(コード: CYCLIC_REFERENCES

構成に依存関係のループがあることを示します。たとえば、リソース A がリソース B に依存する場合、B は C に依存し、C は A に依存します。

エラー メッセージに、依存関係のループ内のリソースが表示されます。

次のようなシナリオでは、リソースの依存関係が表示される場合があります。

  • 別のリソースのプロパティへの参照。たとえば、デプロイに同じデプロイのインスタンス テンプレートを使用するイインスタンス グループ マネージャーがある場合、インスタンス グループ マネージャーはインスタンス テンプレートに暗黙的に依存します。Deployment Manager はまずインスタンス テンプレートを作成してから、インスタンス グループ マネージャーを作成します。

  • 現在のリソースを示す明示的な dependsOn プロパティは、依存するリソースの後に作成する必要があります。

このエラーを解決するには、参照か dependsOn プロパティを変更すれば、ループが無効になります。

テンプレート展開時のエラー

テンプレートは、Deployment Manager がテンプレートを単一の構成に展開するために使用する時間とリソースに制限されます。

次のいずれかのエラーが表示される場合があります。

  • MANIFEST_EXPANSION_TOO_MUCH_CPU: 構成の展開に CPU の使用量が多すぎる場合。
  • MANIFEST_EXPANSION_TOO_MUCH_MEMORY: 構成の展開にメモリの使用量が多すぎる場合。
  • MANIFEST_EXPANSION_TOO_MUCH_WALL_TIME: 構成の展開に時間がかかりすぎた場合。
  • MANIFEST_EXPANSION_USER_ERROR: 構成やテンプレートのいずれかでエラーが発生した場合。

MANIFEST_EXPANSION_TOO_MUCH_CPUMANIFEST_EXPANSION_TOO_MUCH_MEMORY は、テンプレートが繰り返しやループが多すぎる複雑な構造であることを示している可能性があります。

これらのエラーを解決するには、テンプレートを小さく分割するか、単純化します。