טיפים ופתרון בעיות

אם נתקלתם בבעיות במהלך השימוש ב-Deployment Manager, יכול להיות שהחלקים הבאים יעזרו לכם.

שגיאות נפוצות במהלך פריסות

השגיאות שמופיעות בפריסות הן בפורמט הבא:

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

בקטעים הבאים מתוארים סוגי השגיאות הנפוצים שאתם עשויים לראות.

שגיאות במשאבים (קוד: RESOURCE_ERROR)

שגיאות במשאבים מועברות מממשקי ה-API הבסיסיים של המשאבים שמנוהלים באמצעות Deployment Manager. לדוגמה, אם לפריסה שלכם יש מופע של מכונה וירטואלית ב-Compute Engine, והייתה שגיאה ביצירת המופע, השגיאה הזו תופיע כשגיאת משאב ב-Deployment Manager.

בתשובה של Deployment Manager, אפשר לראות את השגיאה מ-API בסיסי בשדות message.ResourceErrorCode ו-message.ResourceErrorMessage.

שגיאות אימות (קוד: CONDITION_NOT_MET)

שגיאת אימות מתרחשת כששדה בהגדרה לא עובר אימות, למשל אם נעשה בו שימוש בערך מחרוזת כשערך בוליאני צפוי.

לולאות של תלות (קוד: CYCLIC_REFERENCES)

מציין שההגדרה כוללת לולאת תלות. לדוגמה, אם משאב א' תלוי במשאב ב', משאב ב' תלוי במשאב ג' ומשאב ג' תלוי במשאב א'.

בהודעת השגיאה מוצגים המשאבים שנמצאים בלולאת התלות.

יכול להיות שתראו תלות במשאבים בתרחישים הבאים:

  • הפניה למאפיין של משאב אחר. לדוגמה, אם לפריסה שלכם יש מנהל קבוצת מופעים שמשתמש בתבנית של הגדרת מכונה מאותה פריסה, מנהל קבוצת המופעים תלוי באופן מרומז בתבנית של הגדרת המכונה. ‫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_CPU ו-MANIFEST_EXPANSION_TOO_MUCH_MEMORY עשויים להצביע על כך שלתבניות יש מבנים מורכבים שכוללים רקורסיה או יותר מדי לולאות.

כדי לפתור את השגיאות האלה, כדאי לפצל את התבניות לתבניות קטנות יותר או לפשט את התבניות.