במאמר הזה מוסבר איך לבצע את הפעולות הבאות אחרי יצירת בקשה לשינוי גודל בקבוצת מופעי מכונה מנוהלים (MIG):
אפשר לראות את הבקשות לשינוי גודל כדי לעקוב אחרי הסטטוס שלהן או לפתור בעיות שקשורות אליהן.
כדי למנוע את יצירת מספר המכונות הווירטואליות (VM) המבוקש על ידי קבוצת ה-MIG, צריך לבטל את הבקשות לשינוי הגודל.
מומלץ למחוק בקשות לשינוי גודל כשכבר לא צריך אותן.
לפני שמתחילים
- אם עדיין לא עשיתם זאת, כדאי לעיין במאמר איך מתבצעות בקשות לשינוי גודל.
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים Google Cloud ולממשקי ה-API, לא צריך להגדיר אימות.
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: השם של קבוצת MIG עם בקשות לשינוי גודל שאושרו, הצליחו, בוטלו או נכשלו.
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 שנמצא באזור או בתחום (zone) אחר.
כדי לראות את הפרטים של בקשה לשינוי גודל, בוחרים באחת מהאפשרויות הבאות:
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 אזורי, שולחים בקשת
GETבאמצעות השיטהinstanceGroupManagerResizeRequests.get.GET 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: השם של בקשת שינוי הגודל שרוצים למחוק.