במאמר הזה מוסבר איך לבצע את הפעולות הבאות אחרי יצירת בקשה לשינוי גודל בקבוצת מופעי מכונה מנוהלים (MIG):
אפשר לראות את הבקשות לשינוי גודל כדי לעקוב אחרי הסטטוס שלהן או לפתור בעיות שקשורות אליהן.
כדי למנוע את יצירת מספר המכונות הווירטואליות (VM) המבוקש על ידי קבוצת ה-MIG, צריך לבטל את הבקשות לשינוי הגודל.
למחוק בקשות לשינוי גודל כשאין בהן יותר צורך.
לפני שמתחילים
- אם עדיין לא עשיתם זאת, כדאי לעיין במאמר איך מתבצעות בקשות לשינוי גודל.
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Google Cloud
gcloud
-
התקינו את ה-CLI של Google Cloud. אחר כך, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud initאם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
- הגדרת אזור ותחום כברירת מחדל
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות להצגה, לביטול או למחיקה של בקשות לשינוי גודל בקבוצת MIG, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין מכונות של Compute (v1) (roles/compute.instanceAdmin.v1) בפרויקט.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקיד המוגדר מראש הזה כולל את ההרשאות שנדרשות לצפייה בבקשות לשינוי גודל בקבוצת MIG, לביטול שלהן או למחיקה שלהן. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי להציג, לבטל או למחוק בקשות לשינוי גודל בקבוצת MIG, נדרשות ההרשאות הבאות:
-
כדי לבטל או למחוק בקשות לשינוי גודל בקבוצת MIG:
compute.instanceGroupManagers.update -
כדי לראות רשימה של בקשות לשינוי גודל ב-MIG:
compute.instanceGroupManagers.list -
כדי לראות את הפרטים של בקשה לשינוי גודל:
compute.instanceGroupManagers.get
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
הצגת בקשות לשינוי גודל
כדי לראות מידע על בקשות לשינוי גודל בקבוצת MIG, משתמשים באחת מהשיטות הבאות:
כדי לראות סקירה כללית של כל הבקשות ב-MIG, אפשר לעיין ברשימת הבקשות לשינוי גודל ב-MIG.
כדי לראות את הפרטים המלאים של בקשה ספציפית, צופים בפרטים של בקשה לשינוי גודל.
הצגת רשימה של בקשות לשינוי גודל בקבוצת MIG
כדי לראות רשימה של כל הבקשות לשינוי גודל בקבוצת MIG, בוחרים באחת מהאפשרויות הבאות:
כדי לראות רשימה של כל הבקשות לשינוי גודל ב-MIG אזורי, משתמשים ב-CLI של gcloud או ב-API בארכיטקטורת REST. אחרת, כדי לראות רשימה של כל בקשות השינוי של גודל ה-MIG האזורי, בוחרים באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף Instance groups במסוף Google Cloud .
בעמודה Name (שם), לוחצים על השם של ה-MIG שמכיל בקשות לשינוי גודל.
ייפתח דף הסקירה הכללית של ה-MIG.
בשורה Resize requests לוחצים על Edit resize requests.
החלונית Resize requests מופיעה. אם בעמודה פרטים של בקשה לשינוי גודל מופיע הערך חריגה מהמכסה או זמן משוער להשלמה: לא מוגדר, סימן שהבקשה נתקלה בשגיאה. אפשר ללחוץ על הערכים האלה כדי לקבל מידע נוסף.
מידע נוסף על פתרון בעיות בשגיאות מופיע במאמר הצגת הפרטים של בקשה לשינוי גודל במסמך הזה.
gcloud
כדי לראות רשימה של בקשות לשינוי גודל בקבוצת MIG, משתמשים בפקודה instance-groups managed resize-requests list.
ב-MIG אזורי, מריצים את הפקודה הבאה:
gcloud compute instance-groups managed resize-requests list MIG_NAME \ --zone=ZONEב-MIG אזורי, מריצים את הפקודה הבאה:
gcloud compute instance-groups managed resize-requests list MIG_NAME \ --region=REGION
מחליפים את מה שכתוב בשדות הבאים:
MIG_NAME: השם של קבוצת מופעים מנוהלת עם בקשות לשינוי גודל שאושרו, הצליחו, בוטלו או נכשלו.
ZONE: האזור שבו נמצאת קבוצת ה-MIG.
REGION: האזור שבו נמצאת קבוצת ה-MIG.
הפלט של MIG אזורי אמור להיראות כך:
NAME: rr-01
LOCATION: us-central1-a
SCOPE: zone
RESIZE_BY: 5
STATE: SUCCEEDED
REQUESTED_RUN_DURATION: P1D
NAME: rr-02
LOCATION: us-central1-a
SCOPE: zone
RESIZE_BY: 10
STATE: ACCEPTED
REQUESTED_RUN_DURATION: P3D
REST
כדי לראות רשימה של בקשות לשינוי גודל ב-MIG אזורי, שולחים בקשת
GETבאמצעות השיטהinstanceGroupManagerResizeRequests.list.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequestsכדי לראות רשימה של בקשות לשינוי גודל ב-MIG אזורי, שולחים בקשת
GETבאמצעות השיטהregionInstanceGroupManagerResizeRequests.list.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/regionInstanceGroupManagers/MIG_NAME/resizeRequests
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: מזהה הפרויקט שבו נמצאת קבוצת ה-MIG עם בקשות לשינוי גודל שהתקבלו, הצליחו, בוטלו או נכשלו.
ZONE: האזור שבו נמצאת קבוצת ה-MIG.
REGION: האזור שבו נמצאת קבוצת ה-MIG.
MIG_NAME: השם של קבוצת MIG קיימת עם בקשות לשינוי גודל שהתקבלו, הצליחו, בוטלו או נכשלו.
הפלט של קבוצת מופעים מנוהלת אזורית דומה לזה:
{
"kind": "compute#instanceGroupManagerResizeRequestList",
"id": "projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests",
"items": [
{
"kind": "compute#instanceGroupManagerResizeRequest",
"id": "4247139565532196982",
"creationTimestamp": "2024-01-08T07:51:53.034-08:00",
"name": "rr-01",
"zone": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a",
"count": 5,
"resizeBy": 5,
"requestedRunDuration": {
"seconds": "86400",
"nanos": 0
},
"state": "SUCCEEDED",
"status": {},
"selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/rr-01",
"selfLinkWithId": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/4247139565532196982"
},
{
"kind": "compute#instanceGroupManagerResizeRequest",
"id": "8095866098849525652",
"creationTimestamp": "2024-01-11T08:04:11.851-08:00",
"name": "rr-02",
"zone": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a",
"count": 10,
"resizeBy": 10,
"requestedRunDuration": {
"seconds": "259200",
"nanos": 0
},
"state": "ACCEPTED",
"status": {},
"selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/rr-02",
"selfLinkWithId": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/8095866098849525652"
}
],
"selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests"
}
צפייה בפרטים של בקשה לשינוי גודל
אתם יכולים לראות את הפרטים של בקשה לשינוי גודל כדי לבדוק את ההגדרה שלה, ואם הבקשה עדיין לא הושלמה, אתם יכולים לנסות לפתור את הבעיה.
אם בקשה שאושרה לשינוי גודל לא מצליחה, אפשר לפתור את הבעיה על ידי בדיקת השדה status.lastAttempt.error.errors.code בפרטי הבקשה. אלה קודי השגיאה האפשריים:
QUOTA_EXCEEDED: בפרויקט שלכם אין מכסה למשאבים המבוקשים. כדי להגדיל את המכסה של הפרויקט, אפשר לעיין במאמר בנושא בקשה לשינוי המכסות.
ZONE_RESOURCE_POOL_EXHAUSTED_WITH_DETAILS: המשאבים המבוקשים לא זמינים באופן זמני. המערכת של Compute Engine תזמנה את היצירה של המשאבים המבוקשים ותיצור אותם כשהם יהיו זמינים. אם השדהmessageמכילExpected time is indefinite, מומלץ לבטל את הבקשה ולנסות אחת או יותר מהאפשרויות הבאות:יוצרים בקשה חדשה לשינוי גודל עם מספר נמוך יותר של מכונות וירטואליות.
משתמשים בסוג מכונה אחר ב-MIG, ואז יוצרים בקשה חדשה לשינוי הגודל. כדי להשתמש בסוג מכונה אחר, יוצרים תבנית של הגדרות מכונה, ואז משתמשים בתבנית הזו כדי ליצור או לעדכן קבוצת מופעים מנוהלת (MIG).
יוצרים בקשה לשינוי גודל ב-MIG שנמצא באזור או באזור זמינות אחר.
כדי לראות את הפרטים של בקשה לשינוי גודל, בוחרים באחת מהאפשרויות הבאות:
gcloud
כדי לראות את הפרטים של בקשת שינוי גודל ב-MIG, משתמשים בפקודה instance-groups managed resize-requests describe.
ב-MIG אזורי, מריצים את הפקודה הבאה:
gcloud compute instance-groups managed resize-requests describe MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --zone=ZONEב-MIG אזורי, מריצים את הפקודה הבאה:
gcloud compute instance-groups managed resize-requests describe MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --region=REGION
מחליפים את מה שכתוב בשדות הבאים:
MIG_NAME: השם של קבוצת MIG.
RESIZE_REQUEST_NAME: השם של בקשת שינוי גודל שרוצים לראות את הפרטים שלה.
ZONE: האזור שבו נמצאת קבוצת ה-MIG.
REGION: האזור שבו נמצאת קבוצת ה-MIG.
הפלט של MIG אזורי אמור להיראות כך:
creationTimestamp: '2024-09-23T02:27:09.575-07:00'
id: '6386622402379156098'
kind: compute#instanceGroupManagerResizeRequest
name: example-request
requestedRunDuration:
nanos: 0
seconds: '86400'
resizeBy: 10
selfLink: https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/example-request
selfLinkWithId: https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/6386622402379156098
state: ACCEPTED
status:
lastAttempt:
error:
errors:
- code: QUOTA_EXCEEDED
message: Quota 'NVIDIA_A100_GPUS' exceeded. Limit: 1500 in region us-central1.
- code: ZONE_RESOURCE_POOL_EXHAUSTED_WITH_DETAILS
message: There are currently not enough resources available to fulfill the request. Expected time is indefinite.
- errorDetails:
- errorInfo:
- metadatas:
- estimatedAvailabilityTime: '9999-12-31T23:59:59.999999999Z'
zone: https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a
REST
כדי לראות את הפרטים של בקשה לשינוי גודל ב-MIG אזורי, שולחים בקשה באמצעות השיטה
instanceGroupManagerResizeRequests.get.GETGET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests/RESIZE_REQUEST_NAMEכדי לראות את הפרטים של בקשה לשינוי גודל ב-MIG אזורי, שולחים בקשת
GETבאמצעות השיטהregionInstanceGroupManagerResizeRequests.get.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/regionInstanceGroupManagers/MIG_NAME/resizeRequests/RESIZE_REQUEST_NAME
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: מזהה הפרויקט שבו נמצאת קבוצת ה-MIG האזורית.
ZONE: האזור שבו נמצאת קבוצת ה-MIG.
REGION: האזור שבו נמצאת קבוצת ה-MIG.
MIG_NAME: השם של קבוצת ה-MIG שבה נמצאת בקשת השינוי.
RESIZE_REQUEST_NAME: השם של בקשת שינוי גודל קיימת שרוצים לראות את הפרטים שלה.
הפלט אמור להיראות כך:
{
"kind": "compute#instanceGroupManagerResizeRequest",
"id": "6386622402379156098",
"creationTimestamp": "2024-09-23T02:27:09.575-07:00",
"name": "example-request",
"zone": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a",
"resizeBy": 10,
"requestedRunDuration": {
"seconds": "86400",
"nanos": 0
},
"state": "SUCCEEDED",
"status": {
"lastAttempt": {
"error": {
"errors": [
{
"code": "QUOTA_EXCEEDED",
"message": "Quota 'NVIDIA_A100_GPUS' exceeded. Limit: 1500 in region us-central1."
},
{
"code": "ZONE_RESOURCE_POOL_EXHAUSTED_WITH_DETAILS",
"message": "There are currently not enough resources available to fulfill the request. Expected time is indefinite.",
"errorDetails": [
{
"errorInfo":{
"metadatas":{
"estimatedAvailabilityTime": "9999-12-31T23:59:59.999999999Z"
}
}
}
]
}
]
}
}
},
"selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/example-request",
"selfLinkWithId": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instanceGroupManagers/example-mig/resizeRequests/6386622402379156098"
}
ביטול בקשות לשינוי גודל בקבוצת MIG
אפשר לבטל בקשות לשינוי גודל בקבוצת MIG כדי למנוע מקבוצת ה-MIG לנסות ליצור את מספר מכונות ה-VM המבוקש. אפשר לבטל רק בקשות שאושרו (ACCEPTED) לשינוי גודל. אחרי ביטול בקשה לשינוי גודל, אפשר למחוק אותה או לאפשר ל-Compute Engine למחוק אותה באופן אוטומטי אחרי 14 ימים.
כדי לבטל כמה בקשות לשינוי גודל בו-זמנית, משתמשים במסוףGoogle Cloud או ב-Google Cloud CLI. אחרת, כדי לבטל בקשה אחת לשינוי גודל, בוחרים באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף Instance groups במסוף Google Cloud .
בעמודה Name (שם), לוחצים על השם של ה-MIG שמכיל בקשות לשינוי גודל.
ייפתח דף הסקירה הכללית של ה-MIG.
בשורה Resize requests לוחצים על Edit resize requests.
החלונית Resize requests מופיעה.
בוחרים את הבקשות לשינוי גודל שרוצים לבטל.
לוחצים על ביטול ואז על אישור.
gcloud
כדי לבטל בקשות לשינוי גודל בקבוצת MIG, משתמשים בפקודה instance-groups managed resize-requests cancel.
ב-MIG אזורי, מריצים את הפקודה הבאה:
gcloud compute instance-groups managed resize-requests cancel MIG_NAME \ --resize-requests=RESIZE_REQUEST_NAMES \ --zone=ZONEב-MIG אזורי, מריצים את הפקודה הבאה:
gcloud compute instance-groups managed resize-requests cancel MIG_NAME \ --resize-requests=RESIZE_REQUEST_NAMES \ --region=REGION
מחליפים את מה שכתוב בשדות הבאים:
MIG_NAME: השם של קבוצת מכונות מנוהלת עם בקשות לשינוי גודל שאושרו.
RESIZE_REQUEST_NAMES: רשימה מופרדת בפסיקים של שמות של בקשות לשינוי גודל שאושרו ב-MIG הספציפי באזור. לדוגמה, מצייניםrequest-1,request-2.
ZONE: האזור שבו נמצאת קבוצת ה-MIG.
REGION: האזור שבו נמצאת קבוצת ה-MIG.
REST
כדי לבטל בקשה לשינוי גודל של MIG אזורי, שולחים בקשת
POSTבאמצעות השיטהinstanceGroupManagerResizeRequests.cancel.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests/RESIZE_REQUEST_NAME/cancelכדי לבטל בקשה לשינוי גודל של קבוצת MIG אזורית, שולחים בקשת
POSTבאמצעות השיטהregionInstanceGroupManagerResizeRequests.cancel.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/regionInstanceGroupManagers/MIG_NAME/resizeRequests/RESIZE_REQUEST_NAME/cancel
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: מזהה הפרויקט שבו נמצאת קבוצת MIG אזורית קיימת עם בקשה מאושרת לשינוי גודל.
ZONE: האזור שבו נמצאת קבוצת ה-MIG.
REGION: האזור שבו נמצאת קבוצת ה-MIG.
MIG_NAME: השם של ה-MIG.
RESIZE_REQUEST_NAME: השם של בקשת שינוי הגודל שרוצים לבטל.
מחיקת בקשות לשינוי גודל בקבוצת MIG
כברירת מחדל, Compute Engine מוחק באופן אוטומטי בקשה לשינוי גודל 14 ימים אחרי שהסטטוס של הבקשה מוגדר לאחד מהערכים הבאים:
הושלם בהצלחה (
SUCCEEDED)נכשל (
FAILED)בוטל (
CANCELLED)
עם זאת, אפשר למחוק מיד בקשה לשינוי גודל לפני כן, כמו שמתואר בקטע הזה.
מחיקה של בקשת שינוי גודל שהסתיימה בהצלחה לא מוחקת את מכונות ה-VM שנוצרו באמצעות הבקשה. קבוצת ה-MIG מוחקת את המכונות הווירטואליות האלה באופן אוטומטי בסוף משך ההפעלה המבוקש. אבל אם העבודה הסתיימה ואין לכם יותר צורך במכונות הווירטואליות, תמחקו אותן.
כדי למחוק כמה בקשות לשינוי גודל בו-זמנית, משתמשים במסוףGoogle Cloud או ב-CLI של gcloud. אחרת, כדי למחוק בקשה אחת לשינוי גודל, בוחרים באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף Instance groups במסוף Google Cloud .
בעמודה Name (שם), לוחצים על השם של ה-MIG שמכיל בקשות לשינוי גודל.
ייפתח דף הסקירה הכללית של ה-MIG.
בשורה Resize requests לוחצים על Edit resize requests.
החלונית Resize requests מופיעה.
בוחרים את הבקשות לשינוי הגודל שרוצים למחוק.
לוחצים על מחיקה ואז על אישור.
gcloud
כדי למחוק בקשות לשינוי גודל בקבוצת MIG, משתמשים בפקודה instance-groups managed resize-requests delete.
ב-MIG אזורי, מריצים את הפקודה הבאה:
gcloud compute instance-groups managed resize-requests delete MIG_NAME \ --resize-requests=RESIZE_REQUEST_NAMES \ --zone=ZONEב-MIG אזורי, מריצים את הפקודה הבאה:
gcloud compute instance-groups managed resize-requests delete MIG_NAME \ --resize-requests=RESIZE_REQUEST_NAMES \ --region=REGION
מחליפים את מה שכתוב בשדות הבאים:
MIG_NAME: השם של קבוצת MIG עם בקשות לשינוי גודל שהצליחו, נכשלו או בוטלו.
RESIZE_REQUEST_NAMES: רשימה מופרדת בפסיקים של שמות של בקשות לשינוי גודל שרוצים למחוק ב-MIG. לדוגמה, מציינים את הערךrequest-1,request-2.
ZONE: האזור שבו נמצאת קבוצת ה-MIG.
REGION: האזור שבו נמצאת קבוצת ה-MIG.
REST
כדי למחוק בקשה לשינוי גודל ב-MIG אזורי, שולחים בקשת
DELETEבאמצעות השיטהinstanceGroupManagerResizeRequests.delete.DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests/RESIZE_REQUEST_NAMEכדי למחוק בקשה לשינוי גודל של קבוצת MIG אזורית, שולחים בקשת
DELETEבאמצעות השיטהregionInstanceGroupManagerResizeRequests.delete.DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/regionInstanceGroupManagers/MIG_NAME/resizeRequests/RESIZE_REQUEST_NAME
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: המזהה של הפרויקט שבו נמצאת קבוצת MIG אזורית קיימת עם בקשות לשינוי גודל שהצליחו, נכשלו או בוטלו.
ZONE: האזור שבו נמצאת קבוצת ה-MIG.
REGION: האזור שבו נמצאת קבוצת ה-MIG.
MIG_NAME: השם של ה-MIG.
RESIZE_REQUEST_NAME: השם של בקשת שינוי הגודל שרוצים למחוק.