שגיאות ביצירת מכונות וירטואליות
אם לא הצלחתם ליצור מופע של מכונה וירטואלית, יכול להיות שהבעיה היא אחת מהבעיות שמתוארות בקטע הזה.
חריגה ממכסת הבקשות
שגיאת מכסה מתרחשת כשבקשה למשאב חורגת מהמכסה שלכם.
הודעות שגיאה:
RESOURCE_NAME creation failed: Quota QUOTA_NAME exceeded. Limit: QUOTA_LIMIT in region REGION
RESOURCE_NAME creation failed: Quota QUOTA_NAME exceeded. Limit: QUOTA_LIMIT in zone ZONE
Resource exhausted (HTTP 429): QUOTA_EXCEEDED
פתרון: שולחים בקשה להגדלת המכסות. מידע נוסף זמין במאמר עריכת המכסה.
פעולות בו-זמניות של שינוי או יצירה של משאבים
אם מעדכנים יותר ממקור אחד בו-זמנית, למשל משנים טווחים משניים ברשת משנה ויוצרים מכונה וירטואלית באותו הזמן, יכול להיות שתופיע שגיאה not ready.
הודעת השגיאה:
The resource 'projects/PROJECT/regions/REGION/subnetworks/default' is not ready
פתרון: כדי לפתור את הבעיה, נסו את הפתרונות הבאים:
- צריך לחכות שהפעולות יסתיימו לפני שיוצרים בקשות חדשות.
- ניסיון חוזר של פעולות עם השהיה מעריכית לפני ניסיון חוזר (exponential backoff).
- דגימת פעולות כדי לבדוק את סטטוס ההשלמה שלהן.
זמינות המשאבים
בהמשך מפורטות דוגמאות לשגיאות נפוצות שקשורות למשאבים, שעשויות להתרחש כשמבקשים משאבים חדשים של Compute Engine או כשיוצרים הזמנות חדשות:
ZONE_RESOURCE_POOL_EXHAUSTED
ZONE_RESOURCE_POOL_EXHAUSTED_WITH_DETAILS
The zone 'projects/PROJECT_ID/zones/ZONE' does not have enough resources available to fulfill the request. Try a different zone, or try again later.
A VM_TYPE_AND_SIZE VM instance with RESOURCE_ATTACHMENT is currently unavailable in the ZONE zone. Capacity changes frequently, so try your request in a different zone, with a different VM hardware configuration, or at a later time. For more options, see troubleshooting documentation.
A VM_TYPE_AND_SIZE VM instance with RESOURCE_ATTACHMENT is currently unavailable in the ZONE zone, because of REASON. Consider trying your request in the ZONE zone(s), which currently has capacity to accommodate your request. If you cannot move your VM to ZONE, review the REASON failure resolution instructions available in troubleshooting documentation, then try your request again. If your workload can't accommodate the suggested resolution, try your request with a different VM hardware configuration or at a later time.
כאן מוסבר איך לפתור שגיאות שקשורות למשאבים.
זמינות באזור
אם מקבלים שגיאה notFound או does not exist in zone כשמבקשים משאבים חדשים, זה אומר שהאזור שבו מבקשים את המשאב לא מציע את המשאב או את סוג המכונה שביקשתם.
הודעות שגיאה:
notFound
does not exist in zone
פתרון: אפשר לעיין במאמר אזורים ואזורי זמינות כדי לגלות אילו תכונות זמינות בכל אזור.
חריגה מהקצב המותר לסוג המשאב
השגיאה הבאה מתרחשת כשיוצרים יותר מדיסק אחד או ממכונה וירטואלית אחת מ-snapshot בפרק זמן של עשר דקות.
הודעת השגיאה:
"code": "RESOURCE_OPERATION_RATE_EXCEEDED", "message": "Operation rate exceeded for resource 'projects/project-id/zones/zone-id/disks/disk-name'. Too frequent operations from the source resource."
הפתרון:
כדי לפתור את הבעיה תוכלו לנסות אחד מהפתרונות הבאים:
יצירת מכונות וירטואליות בכמות גדולה
הוראות מפורטות זמינות במאמר בנושא יצירת מכונות וירטואליות בכמות גדולה. כדי ליצור מכונות וירטואליות מ-snapshot, משתמשים בדגל או בפרמטר הבאים:
אם משתמשים ב-CLI של gcloud, צריך להשתמש בדגל
--source-snapshot.אם משתמשים ב-REST, צריך להשתמש בפרמטר
instanceProperties.disks[].initializeParams.sourceSnapshot.
שימוש בתמונות ליצירת דיסקים
כדי ליצור כמה דיסקים מקובץ snapshot, משתמשים בקובץ ה-snapshot כדי ליצור תמונה ואז יוצרים את הדיסקים מהתמונה:
- יצירת תמונה מקובץ ה-snapshot.
- Create disks from the image (יצירת דיסקים מהתמונה).
במקרה של דיסקים שאינם דיסקים לאתחול, פועלים לפי ההוראות ליצירת דיסקים קבועים מהתמונה ופועלים לפי השלבים הבאים:
- במסוף Google Cloud , בוחרים באפשרות Image (תמונה) בתור סוג המקור של הדיסק.
- ב-CLI של gcloud, משתמשים בדגל
image. - אם משתמשים ב-REST, צריך להשתמש בפרמטר
sourceImage.
מידע נוסף על גיבוי ושכפול של נתונים בדיסק מתמשך זמין במאמר אפשרויות להגנה על נתונים.
הרשאות לא מספיקות
אם מופיעה השגיאה permission כשמנסים ליצור מכונה וירטואלית, סימן שאין לכם את הרשאות ה-IAM הנדרשות ליצירת מכונה וירטואלית.
הודעת השגיאה:
Error: googleapi: Error 403: Google Compute Engine: Required 'compute.regions.get' permission for 'projects/PROJECT_ID/regions/REGION'., forbidden
פתרון: צריך לבקש מהאדמין בארגון להעניק לכם גישה ליצירת מכונות וירטואליות. מידע נוסף זמין במאמר בנושא הענקת גישה למשאבי Compute Engine.
שמות המשאבים
אם מופיעה שגיאת resource already exists כשמנסים ליצור משאב, בקשת היצירה נכשלה כי ציינתם שם לא ייחודי למשאב במיקום ובפרויקט שצוינו.
הודעות שגיאה:
The resource 'projects/PROJECT_NAME/zones/ZONE/RESOURCE_TYPE/RESOURCE_NAME' already exists"
The resource 'projects/PROJECT_NAME/regions/REGION/RESOURCE_TYPE/RESOURCE_NAME' already exists"
פתרון: מנסים שוב לשלוח את בקשת היצירה עם שם משאב ייחודי.
ממשקי רשת
בהמשך מפורטות דוגמאות לשגיאות בממשק הרשת שאולי יופיעו בזמן יצירת מכונה.
יותר מדי ממשקי רשת
אם מקבלים שגיאה Too many network interfaces כשיוצרים מכונה וירטואלית, הבקשה חרגה ממגבלת ממשק הרשת לסוג המכונה של המכונה הווירטואלית.
הודעות שגיאה:
Invalid value for field 'resource': ". Too many network interfaces. The maximum number of network interfaces allowed for this machine type is NUMBER.
Invalid value for field 'resource.networkInterfaces': ". Too many network interfaces. The maximum number of network interfaces allowed for this machine type is NUMBER.
פתרון: כדי להבין איך מחושב מספר ממשקי הרשת המקסימלי לסוגי מכונות שונים, אפשר לעיין במאמר בנושא מספר ממשקי הרשת המקסימלי.
ההגדרה של כרטיס הרשת (NIC) לא תקינה
אם אתם מקבלים שגיאה לגבי כרטיסי ממשק רשת (NIC) כשאתם יוצרים מכונת A3 Ultra או A4, שיש להן סידורי NIC ייחודיים, סימן שהבקשה שלכם כללה הגדרת רשת לא תקינה.
הודעת השגיאה:
On MACHINE_SERIES, the first NIC and the second NIC (if present) must be of type GVNIC. These must be followed by 0 or 8 MRDMA NICs.
פתרון: במאמר יצירת מכונת A3 Ultra או A4 מוסבר איך להגדיר את רשתות ה-VPC וממשקי הרשת למכונות A3 Ultra או A4.
הופרה מגבלה
אם קיבלתם שגיאה Constraint violated כשניסיתם ליצור מכונה וירטואלית, סימן שהבקשה שלכם הפרה אחת או יותר ממגבלות המדיניות של הארגון.
הודעת השגיאה:
לדוגמה, אם הארגון שלכם מגביל את תת-הרשתות של ה-VPC המשותף, יכול להיות שתקבלו את השגיאה הבאה:
Constraint constraints/compute.CONSTRAINT violated for projects/PROJECT_ID. Using the PARAMETER projects/PROJECT_ID/regions/REGION/CONSTRAINTPROJECT_ID is not allowed.
פתרון: פנו לאדמין בארגון שלכם.
פלטפורמת ה-CPU הנדרשת
אם מקבלים שגיאה required CPU platform, סימן שפלטפורמת ה-CPU שצוינה בבקשת היצירה לא נתמכת על ידי סוג המכונה שצוין.
הודעת השגיאה:
Could not fetch resource: - The selected machine type (MACHINE_TYPE) has a required CPU platform of REQUIRED_CPU_PLATFORM. The minimum CPU platform must match this, but was SPECIFIED_CPU_PLATFORM.
הפתרון:
- כדי לדעת איזו פלטפורמת CPU נתמכת בסוג המכונה שלכם, אפשר לעיין במאמר בנושא פלטפורמות CPU.
- נסו לשלוח שוב את הבקשה עם פלטפורמת CPU נתמכת.
מאפייני הזמנה לא תואמים
אם מקבלים שגיאה No available resources in specified reservations כשיוצרים מכונה וירטואלית, זה אומר שהמאפיינים של המכונה הווירטואלית ושל ההזמנה הספציפית שהמכונה הווירטואלית מיועדת לצריכה לא תואמים.
הודעת השגיאה:
Invalid value for field 'resource.reservationAffinity': - No available resources in specified reservations [RESERVATION_NAME].
פתרון: נסו את אחת מהאפשרויות הבאות:
אם המכונה הווירטואלית לא תואמת למאפיינים של ההזמנה, צריך לשנות את המכונה הווירטואלית עד שהמאפיינים שלה יהיו זהים למאפיינים של ההזמנה. אחר כך, נסו שוב ליצור את המכונה הווירטואלית.
אם ל-VM יש את המאפיינים הנכונים, אבל הוא לא תואם למאפיינים של ההזמנה, אי אפשר לשנות את ההזמנה. במקום זאת, צריך לבצע אחת מהפעולות הבאות:
כשיוצרים את המכונה הווירטואלית, צריך לטרגט בקשה ספציפית אחרת לשמירת מקום.
אם אין לכם כבר הזמנה ספציפית עם המאפיינים הנכונים, אתם יכולים ליצור הזמנה ספציפית חדשה עם מאפיינים תואמים. אם כבר אין לכם צורך בהזמנה הספציפית הקודמת, אתם יכולים למחוק אותה כדי שלא תמשיכו לשלם על המשאבים שהוזמנו.
כשיוצרים את המכונה הווירטואלית, מכוונים לכל הזמנה תואמת.
אם יש הזמנה שמוגדרת לשימוש אוטומטי עם מאפיינים שתואמים למכונה הווירטואלית, המכונה הווירטואלית החדשה תשתמש בהזמנה הזו. אחרת, המכונה הווירטואלית עדיין נוצרת, אבל בלי לצרוך משאבים שמורים.
מידע נוסף זמין במאמר בדיקה של התאמת מאפייני המכונה הווירטואלית להזמנה.
הגישה לחשבון השירות נדחתה
יכול להיות שהשגיאה הבאה תופיע ביומני הביקורת של Cloud כשיוצרים מכונות וירטואליות באמצעות חשבון שירות:
הודעת השגיאה:
SERVICE_ACCOUNT_ACCESS_DENIED
פתרון: השגיאה הזו מופיעה כשחשבון השירות שמשמש ליצירת מכונה וירטואלית לא כולל את התפקיד'ניהול זהויות והרשאות גישה' שמאפשר גישה לחשבון השירות של המכונה הווירטואלית החדשה.
מקצים לחשבון השירות שיוצר את המכונה הווירטואלית את התפקיד roles/iam.serviceAccountUser. אפשר להעניק את התפקיד הזה ברמת הפרויקט, וכך חשבון השירות שיוצר מכונות וירטואליות יקבל גישה לכל חשבונות השירות שנוצרו בפרויקט. אפשר גם להעניק את התפקיד הזה רק לחשבון השירות של המכונה הווירטואלית החדשה.
חסרות ההרשאות הנדרשות
יכול להיות שתקבלו את השגיאה הבאה כשאתם מנסים ליצור מכונה וירטואלית ממכונה וירטואלית קיימת
Required 'compute.images.useReadOnly' permission for 'projects/PROJECT_ID/global/images/IMAGE_NAME
לשגיאה יכולות להיות כמה סיבות. הנה סיבה נפוצה לשגיאה הזו:
ניסיתם ליצור מכונה וירטואלית חדשה ממכונה וירטואלית קיימת, אבל אין לכם הרשאת קריאה לתמונת דיסק האתחול של המכונה הווירטואלית הקיימת.
כדי לפתור את הבעיה, צריך לפנות לבעלים של דיסק האתחול ולבקש ממנו לשתף איתכם את התמונה של המכונה הווירטואלית הקיימת.
גרסת ניסיון ללא תשלום
אם תנסו ליצור מכונה וירטואלית של Windows במהלך תקופת ניסיון בחינם של Google Cloud, תקבלו שגיאה.
הודעת השגיאה:
Windows VM instances are not included with free trial. To use them, first enable billing on your account.
פתרון: תמונות של Windows Server לא כלולות בתקופת הניסיון בחינם. שדרוג לחשבון לחיוב ב-Cloud בתשלום
ה-VM לא מופעל
אם מכונת VM של Linux שמשתמשת בסקריפט לטעינה בזמן ההפעלה לא מופעלת אחרי שהיא נוצרה, יכול להיות שהבעיה קשורה לחיבור לשרת המטא-נתונים.
הבעיה הזו יכולה להימשך עד שבע דקות בגלל בעיה זמנית ברשת שנפתרת מעצמה. אם הבעיה לא נפתרת אחרי שבע דקות, צריך ליצור מחדש את המכונה הווירטואלית.
שגיאות בעדכון מכונות וירטואליות
אם לא מצליחים לעדכן מכונה וירטואלית, יכול להיות שזה בגלל הבעיה הבאה.
שגיאה בשינוי סוג המכונה
יכול להיות שתקבלו את השגיאה הבאה כשאתם מנסים לשנות את סוג המכונה של מכונה וירטואלית:
Invalid value for field 'resource.sourceMachineImage': Updating 'sourceMachineImage' is not supported
פתרון:
מוודאים שהמכונה הווירטואלית תומכת במעבד של סוג המכונה החדש. למידע נוסף על המעבדים שנתמכים על ידי סוגי מכונות שונים, אפשר לעיין במאמר השוואה בין משפחות של מכונות.
נסו לשנות את סוג המכונה באמצעות Google Cloud CLI.