אחרי שיוצרים קבוצת מופעי מכונה מנוהלים (MIG), יכול להיות שתרצו להוסיף או להסיר מכונות וירטואליות מהקבוצה כדי לעמוד בדרישות של עומס העבודה. אם הגעתם למגבלה שמוגדרת כברירת מחדל על המספר המקסימלי של מכונות וירטואליות שאפשר להוסיף ל-MIG, ואתם צריכים עוד מכונות וירטואליות, אתם יכולים להגדיל את מגבלת הגודל של ה-MIG.
כדי להוסיף או להסיר מכונות וירטואליות מקבוצת מופעי מכונה מנוהלים (MIG), אפשר לבצע את הפעולות הבאות:
- הוספה אוטומטית של מכונות וירטואליות או הסרה שלהן על ידי הגדרת גודל היעד של ה-MIG:
- שימוש בהתאמה אוטומטית לעומס לאפליקציות בלי שמירת מצב
- יצירת בקשה לשינוי הגודל ב-MIG
- הגדרה ידנית של הגודל של ה-MIG
- מוסיפים, מסירים או מבטלים מופעים ספציפיים באופן ידני:
לפני שמתחילים
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Cloud de Confiance by S3NS . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Cloud de Confiance כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Cloud de Confiance by S3NS
gcloud
-
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud init
-
- הגדרת אזור ותחום כברירת מחדל
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
Terraform
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Terraform שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
הגדרת גודל היעד של הקבוצה
אפשר להגדיר את גודל היעד של MIG באופן אוטומטי באמצעות קנה מידה אוטומטי, או להגדיר את הגודל באופן ידני.
הוספה אוטומטית של מכונות וירטואליות לקבוצת מופעי מכונה מנוהלים (MIG) והסרה אוטומטית שלהן ממנה
אתם יכולים להגדיר קבוצות של מופעי מכונה מנוהלים כך שהמערכת תוסיף או תסיר מכונות וירטואליות באופן אוטומטי בהתאם לעומסי העבודה שלהן. האפליקציות שלכם יכולות להתמודד בצורה חלקה עם עלייה בנפח התנועה, ואתם יכולים להפחית את העלויות כשאין צורך במשאבי מחשוב. כדי להתחיל להרחיב את קבוצות המופעים המנוהלים, אפשר לעיין במאמר בנושא יצירת קבוצת MIG עם שינוי גודל אוטומטי.
מידע נוסף זמין במאמר בנושא קבוצות של מופעים עם שינוי גודל אוטומטי.
יצירת בקשה לשינוי גודל
אתם יכולים להשתמש בבקשות לשינוי גודל כדי להוסיף מכונות וירטואליות עם GPU ל-MIG בבת אחת. התכונה הזו עוזרת לכם להימנע מחיובים על קיבולת חלקית בזמן ש-Compute Engine מקצה את כל המשאבים. בקשות לשינוי גודל של MIG משתמשות במודלים של הקצאת משאבים מסוג flex-start או reservation-bound. המודלים האלה מאפשרים לכם לקבל מעבדי vCPU ומעבדי GPU במחיר מוזל.
מידע נוסף זמין במאמר מידע על בקשות לשינוי גודל בקבוצת MIG.
הגדרה ידנית של הגודל של MIG
אם קבוצת מופעים מנוהלת לא מוגדרת כבר לשינוי גודל אוטומטי, אפשר לשנות את הגודל של הקבוצה באופן ידני כדי לשנות את מספר המופעים. אם מגדילים את הגודל, קבוצת המופעים המנוהלים משתמשת בתבנית הנוכחית של הגדרות המכונה כדי להוסיף מופעים חדשים. אם מקטינים את הגודל, קבוצת מופעי מכונה מנוהלים מוחקת מכונות וירטואליות מהקבוצה על סמך כמה גורמים. מידע נוסף זמין במאמר גורמים שמשפיעים על מחיקת מופעים של מכונות וירטואליות.
אם הקבוצה היא חלק משירות לקצה העורפי שהפעלתם בו זמן להשלמת תהליך (connection draining), יכול להיות שיחלפו עד 60 שניות נוספות אחרי שמשך הזמן של זמן להשלמת תהליך (connection draining) יסתיים, לפני שהמכונה הווירטואלית תוסר או תימחק.
כשמגדירים באופן ידני את הגודל של קבוצת MIG, כברירת מחדל, קבוצת ה-MIG יוצרת את מכונות ה-VM באופן עצמאי ברגע שהמשאבים הופכים לזמינים. כדי לקבל את כל מכונות ה-VM הנדרשות בבת אחת, צריך להגדיר את מצב המדיניות של גודל היעד ל-BULK כשיוצרים את ה-MIG. מידע נוסף על מצב יצירה בכמות גדולה זמין במאמר מידע על יצירת מכונות בכמות גדולה ב-MIG.
המסוף
נכנסים לדף Instance groups במסוף Cloud de Confiance .
בעמודה Name ברשימה, לוחצים על השם של קבוצת המופעים שרוצים לשנות את הגודל שלה.
לוחצים על עריכה כדי לשנות את קבוצת מופעי המכונה המנוהלים הזו.
לוחצים על גודל הקבוצה והתאמה אוטומטית לעומס כדי להרחיב את הקטע.
בשדה Number of instances (מספר המכונות), מציינים את מספר המכונות שרוצים לכלול בקבוצת מופעי מכונה מנוהלים זו.
אם התאמה אוטומטית לעומס מופעלת, הקבוצה מוסיפה או מסירה מכונות באופן אוטומטי לפי הצורך. עם זאת, אפשר לשנות את הערכים של המספר המינימלי של מופעים והמספר המקסימלי של מופעים כדי לשנות את גודל הקבוצה באופן עקיף באמצעות הכלי להתאמה אוטומטית לעומס.
לוחצים על שמירה כדי להחיל את התבנית החדשה.
gcloud
משתמשים בפקודה resize.
gcloud compute instance-groups managed resize INSTANCE_GROUP_NAME \
--size NEW_SIZE \
--zone ZONEREST
מבצעים קריאה ל-resize עבור משאב MIG אזורי או אזורי. מציינים את הגודל החדש של קבוצת המכונות כפרמטר.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resize?size=NEW_SIZE
אם קבוצת המופעים היא קבוצת מופעי מכונה מנוהלים אזורית, מחליפים את zones/ZONE ב-regions/REGION.
אחרי ששולחים בקשה לשינוי הגודל של קבוצת מופעי מכונה מנוהלים, המכונות הווירטואליות מתחילות לפעול או מפסיקות לפעול ברגע שהמערכת יכולה להקצות אותן או למחוק אותן. התהליך הזה יכול להימשך זמן רב, בהתאם למספר המקרים בקבוצה. בודקים את הסטטוס של המופעים בקבוצת מופעי המכונה המנוהלים.
השבתה של מצב ניסיונות חוזרים ליצירה במהלך שינוי גודל
כברירת מחדל, אם היצירה הראשונית של מופע VM נכשלת, קבוצת מופעי המכונה המנוהלים מנסה שוב ושוב ליצור את ה-VM, עד שה-VM נוצר בהצלחה. אבל אם אתם לא רוצים לנסות שוב ליצור את הקבוצה באופן אוטומטי, אתם יכולים להשבית את מצב הניסיונות החוזרים ליצירה כשאתם משנים את הגודל של קבוצת המופעים. במצב הזה, קבוצת מופעי מכונה מנוהלים מנסה ליצור את כל המופעים רק פעם אחת. אם יש שגיאה במהלך יצירת מופע, קבוצת מופעי מכונה מנוהלים מוותרת על המופע הזה, מסירה אותו מרשימת המופעים המנוהלים של הקבוצה ומקטינה את גודל היעד של קבוצת מופעי מכונה מנוהלים.
המצב הזה חל רק במהלך ניסיון היצירה הראשון של מכונה וירטואלית. אם מכונת VM נוצרת בהצלחה בזמן שהמצב הזה מופעל, מכונת ה-VM מתנהגת כמו כל מכונות ה-VM האחרות שנוצרו באמצעות בקשה רגילה לשינוי גודל. בפרט, אם מכונה וירטואלית פועלת מפסיקה לפעול באופן בלתי צפוי בשלב מאוחר יותר וצריך ליצור אותה מחדש, המצב הזה לא משפיע על התנהגות היצירה מחדש בתרחיש הזה.
השבתת מצב הניסיונות החוזרים ליצירה שימושית במיוחד בתרחישים שבהם יש לכם מערכות שיוצרות אוטומטית קבוצות של מכונות וירטואליות, ולא נדרש מספר מדויק של מכונות וירטואליות. יכול להיות שתעדיפו להגיע במהירות לגודל הרצוי של קבוצת מופעי מכונה מנוהלים, ולהיות גמישים במספר מכונות ה-VM בקבוצה, במקום לחכות ללא הגבלת זמן עד שכל המכונות המבוקשות ייווצרו. יכול להיות שיהיו עיכובים זמניים או קבועים ביצירת המכונות בגלל שגיאות שקשורות למכסות או בגלל בעיות אחרות שלא קשורות למכסות.
מגבלות
אי אפשר להשבית ניסיונות חוזרים ליצירה בקבוצת MIG עם ההגדרות הבאות:
- התאמה אוטומטית לעומס
EVENצורת התפלגות היעד ב-MIG אזוריים- מצב Bulk של מדיניות גודל קהל
ב-MIG אזורי עם צורת הפצה של
BALANCEDאוANY_SINGLE_ZONE, צריך להשבית את ההפצה מחדש הפרואקטיבית של מופעים לפני שמשביתים את מצב הניסיונות החוזרים ליצירה.
כדי לשנות את הגודל של קבוצת מופעים מנוהלת כשמצב ניסיונות חוזרים ליצירה מושבת, משתמשים ב-Google Cloud CLI או ב-REST.
gcloud
משתמשים בפקודה beta resize עם הדגל --no-creation-retries.
gcloud beta compute instance-groups managed resize INSTANCE_GROUP_NAME \
--size NEW_SIZE \
--no-creation-retries \
[--region REGION | --zone ZONE]
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_GROUP_NAME: השם של קבוצת המכונות המנוהלת שרוצים לשנות את הגודל שלה. -
NEW_SIZE: מספר היעד של מופעי מכונה פעילים בקבוצת מופעי מכונה מנוהלים. -
ZONE: ב-MIG אזורי, האזור שבו נמצא ה-MIG. -
REGION: במקרים של קבוצות אזוריות של מכונות מנוהלות, האזור שבו נמצאת הקבוצה.
REST
במקרה של MIG אזורי, משתמשים בשיטה beta regionInstanceGroupManagers.resizeAdvanced.instanceGroupManagers.resizeAdvanced
מציינים את הגודל החדש של הקבוצה ואת השדה noCreationRetries בגוף הבקשה.
לדוגמה, מבצעים את הקריאה הבאה כדי לשנות את הגודל של קבוצת MIG אזורית עם השבתה של מצב ניסיונות חוזרים ליצירה.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeAdvanced
{
"targetSize": NEW_SIZE,
"noCreationRetries": true
}מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
ZONE: האזור שבו נמצאת קבוצת ה-MIG. בשביל קבוצת MIG אזורית, מחליפים אתzones/ZONEב-regions/REGIONומציינים את האזור. מידע נוסף זמין במאמר מידע על קבוצות אזוריות של מכונות וירטואליות לניהול מקרים (MIG). -
INSTANCE_GROUP_NAME: השם של קבוצת המכונות המנוהלת שרוצים לשנות את הגודל שלה.
NEW_SIZE: מספר היעד של מופעי מכונה פעילים בקבוצת המופעים המנוהלת.כדי לראות אילו מופעים נוצרים ובאיזה מצב, אפשר להשתמש ב-method
listManagedInstances. כשמשביתים את מצב הניסיונות החוזרים ליצירה, המכונות שיוצרים מקבלותcurrentActionשלCREATING_WITHOUT_RETRIES.
הוספה, הסרה או ביטול של מקרים ספציפיים
בקטעים הבאים מוסבר איך להוסיף, להסיר או לבטל מופעים ספציפיים ב-MIG.
יצירת מכונות עם שמות ספציפיים בקבוצות של מכונות מנוהלות
אם עומס העבודה או מערכת התיזמור שלכם דורשים שמות ספציפיים למופעים, אתם יכולים להוסיף את המופעים האלה לקבוצת מופעים מנוהלת (MIG) קיימת. בקטע הזה מוסבר איך מוסיפים מופעים על סמך הזמינות. אם המשאבים לא זמינים, קבוצת ה-MIG מוסיפה חלק מהמופעים ויוצרת את המופעים הנותרים כשהמשאבים יהיו זמינים. כדי להוסיף בבת אחת ל-MIG מכונות GPU עם שמות ספציפיים, אפשר לעיין במקום זאת במאמר יצירת בקשה לשינוי גודל במסמך הזה.
השמות שאתם מקצים למופעים האלה נשמרים אם קבוצת ה-MIG יוצרת אותם מחדש. מידע נוסף על שמירת הסטטוס של מופעי MIG זמין במאמר בנושא קבוצות MIG עם שמירת סטטוס.
כדי להשתמש בדפוסי שמות ספציפיים למופעים ב-MIG, אפשר לעיין בקטע הגדרת שמות של מופעים של מכונות וירטואליות ב-MIG במסמך הזה.
מגבלות
אם יוצרים מכונות עם שמות ספציפיים:
- במהלך תהליך יצירת המופע, צריך להשבית את שינוי הגודל האוטומטי.
- צריך להגדיר את מדיניות העדכון של קבוצת ה-MIG לopportunistic.
- אם מעדכנים קבוצת מופעים מנוהלת אזורית:
- צריך להשבית את האפשרות חלוקה מחדש יזומה של מופעים.
- אי אפשר לבחור את האזור שבו תיצור את המכונה הווירטואלית.
- אי אפשר להשתמש בשמות כפולים של מכונות וירטואליות באותו פרויקט.
אפשר להשתמש ב-CLI של gcloud או ב-REST כדי להוסיף מכונות וירטואליות עם שמות ספציפיים לקבוצת MIG קיימת.
gcloud
משתמשים בפקודה instance-groups managed create-instance.
gcloud compute instance-groups managed create-instance INSTANCE_GROUP_NAME \
--instance INSTANCE_NAME \
[--region REGION | --zone ZONE]מחליפים את מה שכתוב בשדות הבאים:
- INSTANCE_GROUP_NAME הוא השם של ה-MIG האזורי או האזורי כדי להוסיף אליו מופע חדש.
- INSTANCE_NAME הוא השם שרוצים להקצות למופע החדש.
REST
שליחת בקשת POST ל-method regionInstanceGroupManagers.createInstances. עבור קבוצת מופעי מכונה מנוהלים אזורית, השתמשו בשיטה instanceGroupManagers.createInstances. בגוף הבקשה, כוללים את השדה instances עם שמות של מופע אחד או יותר.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/createInstances
{
"instances": [
{
"name": "INSTANCE_NAME_1"
},
{
"name": "INSTANCE_NAME_2"
}
]
}
מחיקת מקרים ספציפיים מקבוצה
אפשר למחוק מופעי מכונות וירטואליות ספציפיים בקבוצת מופעי מכונה מנוהלים. מחיקה של מופעים מקטינה את הערך targetSize שצוין של קבוצת המופעים ומסירה את המכונות הווירטואליות מכל מאגר יעד שהן חברות בו.
מחיקה של מופעים ספציפיים מקבוצת מופעי מכונה מנוהלים לא משנה הגדרות ספציפיות של שינוי גודל אוטומטי. אם מוחקים מופעים מקבוצת מופעים מנוהלת, יכול להיות שהכלי לשינוי גודל קבוצת המופעים יזהה עלייה בעומס העבודה במופעים האחרים בקבוצה ויגדיל את גודל הקבוצה בחזרה לרמה הקודמת. כדי למנוע את זה, מפסיקים את שינוי הגודל האוטומטי לפני שמנסים למחוק את המופעים.
אם הקבוצה היא חלק משירות לקצה העורפי שהפעלתם בו זמן להשלמת תהליך (connection draining), יכול להיות שיחלפו עד 60 שניות נוספות אחרי שמשך הזמן של זמן להשלמת תהליך (connection draining) יסתיים, לפני שהמכונה הווירטואלית תוסר או תימחק.
המסוף
נכנסים לדף Instance groups במסוף Cloud de Confiance .
בעמודה Name (שם) ברשימה, לוחצים על השם של קבוצת המכונות שרוצים למחוק ממנה מכונות ספציפיות. נפתח דף עם המאפיינים של קבוצת המופעים ורשימה של המופעים שנכללים בקבוצה.
בקטע VM instances, בוחרים מכונה וירטואלית אחת או יותר שרוצים למחוק.
לוחצים על Delete.
בתיבת הדו-שיח לאישור המחיקה, מקלידים
deleteולוחצים על מחיקה.ה-MIG מוחק את המופעים שנבחרו.
gcloud
כדי למחוק מכונה באמצעות ה-CLI של gcloud, משתמשים בפקודה instance-groups managed delete-instances.
gcloud compute instance-groups managed delete-instances INSTANCE_GROUP_NAME \
--instances INSTANCE_NAME_1,INSTANCE_NAME_2 \
[--region REGION | --zone ZONE]הפקודה מחזירה את סטטוס הפעולה לכל מופע:
- הערך
SUCCESSמוחזר אם ה-CLI של gcloud מחק את המכונה. -
FAILמוחזר לכל המקרים אם מקרה כלשהו שצוין בבקשה לא שייך לקבוצה, אם חבר כלשהו כבר נמחק או עזב את הקבוצה, או אם הבקשה נכשלת מסיבה אחרת. - הערך
SKIPPEDמוחזר רק אם משתמשים בדגל--skip-instances-on-validation-errorוהמופע לא שייך לקבוצה או שהוא כבר נמחק או ננטש. -
MEMBER_NOT_FOUNDמוחזר רק עבור קבוצות אזוריות, אם ה-CLI של gcloud לא הצליח לזהות את האזור משם המכונה.
אם אתם צופים שבקשת המחיקה שלכם עלולה להתנגש עם פעולות שמתבצעות במקביל, השתמשו בדגל --skip-instances-on-validation-error. הדגל הזה מציין אם הבקשה צריכה להתבצע גם אם היא כוללת מופעים שלא חברים בקבוצה או שכבר נמצאים בתהליך של מחיקה או ביטול – לדוגמה, מופעים שנמחקים על ידי קנה מידה אוטומטי. כברירת מחדל, אם משמיטים את הדגל הזה ומציינים מופע כזה בבקשה, הפעולה נכשלת. הפעולה תמיד נכשלת אם הבקשה מכילה שם מכונה בפורמט לא תקין או הפניה למכונה שקיימת באזור או באזור אחר מלבד האזור או האזור של הקבוצה.
לדוגמה, הפקודה הבאה מבקשת למחוק ארבעה מופעים, אבל שלושה מהם כבר לא בקבוצה:
gcloud compute instance-groups managed delete-instances example-mig \
--instances=example-instance-1,example-instance-2,example-instance-3,example-instance-4 \
--region=us-central1 \
--skip-instances-on-validation-errorבדוגמה הזו, שלוש דוגמאות לא עברו אימות, ולכן הן דולגו, ואילו example-instance-3 נמחק:
Updated [https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/instanceGroupManagers/example-mig]. PROJECT ZONE INSTANCE STATUS VALIDATION_ERROR example-project us-central1-a example-instance-1 SKIPPED Cannot delete instance https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instances/example-instance-1 that was already deleted. example-project us-central1-a example-instance-2 SKIPPED Cannot delete instance https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instances/example-instance-2 that was already abandoned. example-project us-central1-a example-instance-3 SUCCESS example-project us-central1-a example-instance-4 SKIPPED Cannot find instance https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instances/example-instance-4.
אם לא מציינים את הדגל --skip-instances-on-validation-error ואם יש מופע אחד שלא עובר אימות, לא נמחק אף מופע:
gcloud compute instance-groups managed delete-instances example-mig \
--instances=example-instance-1,example-instance-2,example-instance-3,example-instance-4 \
--region=us-central1
Updated [https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/instanceGroupManagers/example-mig].
PROJECT ZONE INSTANCE STATUS
example-project us-central1-a example-instance-1 FAIL
example-project us-central1-a example-instance-2 FAIL
example-project us-central1-a example-instance-3 FAIL
example-project us-central1-a example-instance-4 FAIL
REST
שליחת בקשת POST ל-method regionInstanceGroupManagers.deleteInstances. עבור קבוצת מופעי מכונה מנוהלים אזורית, השתמשו בשיטה instanceGroupManagers.deleteInstances.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/deleteInstances
{
"instances": [
"zones/ZONE/instances/INSTANCE_NAME_1",
"zones/ZONE/instances/INSTANCE_NAME_2"
]
}אם אתם צופים שהבקשה למחיקה עלולה להתנגש עם פעולות שמתבצעות במקביל, השתמשו בשדה skipInstancesOnValidationError. בשדה הזה מציינים אם הבקשה צריכה להתבצע גם אם היא כוללת מקרים שלא שייכים לקבוצה או שכבר נמצאים בתהליך מחיקה או ביטול – לדוגמה, מקרים שנמחקים על ידי כלי לשינוי קנה מידה אוטומטי. כברירת מחדל, אם משמיטים את הדגל הזה ומציינים מופע כזה בבקשה, הפעולה נכשלת. הפעולה תמיד נכשלת אם הבקשה מכילה שם מכונה בפורמט לא תקין או הפניה למכונה שקיימת באזור או באזור אחר מלבד האזור או האזור של הקבוצה.
לדוגמה, הבקשה הבאה למחיקת 2 מופעים תצליח גם אם אחד מהמופעים כבר נמחק או נמצא בתהליך מחיקה:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/deleteInstances
{
"instances": [
"zones/ZONE/instances/INSTANCE_NAME_1",
"zones/ZONE/instances/INSTANCE_NAME_2"
],
"skipInstancesOnValidationError": true
}כדי לראות את המקרים שבהם המערכת דילגה על פעולות, אפשר לעיין בפרטי הפעולה. ל-MIG אזורי, משתמשים בשיטה regionOperations.get.
ב-MIG אזורי, משתמשים בשיטה zoneOperations.get.
האזהרות מפורטות בשדה האזהרה של הפעולה.
אחרי ששולחים בקשה למחיקת מופעי מכונה בקבוצת מופעי מכונה מנוהלים, מופעי המכונה מפסיקים לפעול ברגע שהמערכת יכולה למחוק אותם. התהליך הזה יכול להימשך זמן רב, בהתאם למספר המקרים שמוחקים מהקבוצה. מאמתים את הסטטוס של הקבוצה או מאמתים את הסטטוס של המופעים המנוהלים.
ביטול של מופעים מקבוצת מופעי מכונה מנוהלים (MIG)
אפשר להפריד מופע של מכונה וירטואלית מקבוצת מופעי מכונה מנוהלים כדי לנפות באגים במופעים ספציפיים בלי להשפיע על הקבוצה כולה. אם מפסיקים להשתמש במופע מכונה מקבוצה, מופע המכונה מוסר גם ממאזני העומסים שהוקצו לקבוצת מופעי המכונה המנוהלים. מאגרי יעדים שהוקצו באופן ידני למופעים ספציפיים לא יוסרו.
אי אפשר להוסיף בחזרה לקבוצה מופע של מכונת VM שהוצאה ממנה.
ביטול מופעים מקטין את הערך targetSize שצוין של קבוצת המופעים,
אבל לא משנה את ההגדרות שצוינו של קנה המידה האוטומטי. קבוצות מנוהלות של מופעי מכונה עם קנה מידה אוטומטי ממשיכות להוסיף או להסיר מופעים באופן אוטומטי לפי הצורך. אם יש לכם קבוצת MIG אזורית עם התאמה אוטומטית לעומס שהוגדרה למצב ONLY_SCALE_OUT, ואתם מבטלים הקצאה של מכונה וירטואלית כדי להקטין את גודל היעד של קבוצת ה-MIG לגודל המומלץ של המידרוג האוטומטי, יכול להיות שהמידרוג האוטומטי ייצור מכונה וירטואלית חדשה באותו תחום של המכונה הווירטואלית שהוקצתה לה הקצאה. במקרים כאלה, כדי להימנע מיצירה של מופע חדש של מכונה וירטואלית, כדאי לנסות לבטל את המכונה הווירטואלית מאזור אחר.
אם הקבוצה היא חלק משירות לקצה העורפי שהפעלתם בו זמן להשלמת תהליך (connection draining), יכול להיות שיחלפו עד 60 שניות נוספות אחרי שמשך הזמן של זמן להשלמת תהליך (connection draining) יסתיים, לפני שהמכונה הווירטואלית תוסר או תימחק.
המסוף
נכנסים לדף Instance groups במסוף Cloud de Confiance .
בעמודה Name (שם) ברשימה, לוחצים על השם של קבוצת המכונות שרוצים להסיר ממנה מכונות. נפתח דף עם המאפיינים של קבוצת המופעים ורשימה של המופעים שנכללים בקבוצה.
בקטע VM instances (מופעי מכונות וירטואליות), בוחרים מופע אחד או יותר שרוצים להסיר מהקבוצה.
לוחצים על הסרה מהקבוצה.
בתיבת הדו-שיח לאישור ההסרה של המופעים שנבחרו, מקלידים
removeולוחצים על הסרה.ה-MIG מסיר את המופעים שנבחרו מהקבוצה. המופעים שהוסרו ממשיכים לפעול מחוץ לקבוצה.
gcloud
כדי להסיר מכונה מקבוצת המכונות בלי למחוק את המכונה הווירטואלית, משתמשים בפקודה instance-groups managed abandon-instances.
gcloud compute instance-groups managed abandon-instances INSTANCE_GROUP_NAME \
--instances INSTANCE_NAME_1,INSTANCE_NAME_2 \
[--region REGION | --zone ZONE]REST
שליחת בקשת POST ל-method regionInstanceGroupManagers.abandonInstances. עבור קבוצת מופעי מכונה מנוהלים אזורית, השתמשו בשיטה instanceGroupManagers.abandonInstances.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/abandonInstances
{
"instances": [
"zones/ZONE/instances/INSTANCE_NAME_1",
"zones/ZONE/instances/INSTANCE_NAME_2"
]
}אחרי שמגישים בקשה לביטול ניהול של מכונות מקבוצת מכונות מנוהלת, הקבוצה מסירה את המכונות בהקדם האפשרי. מאמתים את הסטטוס של הקבוצה או מאמתים את הסטטוס של המופעים המנוהלים.
הגדרת שמות של מכונות וירטואליות בקבוצת מופעי מכונה מנוהלים (MIG)
אפשר להתאים אישית את השמות של מכונות וירטואליות בקבוצת מופעי מכונה מנוהלים (MIG) על ידי הגדרת השדה baseInstanceName. מערכת Compute Engine יוצרת שמות של מכונות על סמך אחד מהדפוסים הבאים:
מספור עוקב: מגדירים את
baseInstanceNameלמחרוזת שכוללת תו סולמית (#) אחד או יותר כדי להגדיר דפוס מספור. Compute Engine מחליף את התווים # במספרים עוקבים, החל מ-0. מספר התווים של הגיבוב קובע את מספר הספרות המינימלי בשם, ואם צריך מוסיפים אפסים מובילים כדי להשלים את האורך.- דוגמה:
"baseInstanceName": "instance-###" - שמות המכונות הווירטואליות שנוצרו:
instance-000,instance-001,instance-002. - כדי להשתמש במספר התחלתי אחר לרצף, מציינים את המספר בסוגריים אחרי התווים של הסולמית – לדוגמה,
PREFIX-###[100]כמוinstance-###[100]. התוצאה היא שמות של מכונות VM: instance-100,instance-101ו-instance-102.
- דוגמה:
קידומת בהתאמה אישית: מגדירים את
baseInstanceNameלמחרוזת שלא כוללת תווים של סולמית (#). Compute Engine משתמש במחרוזת כקידומת, ומוסיף מקף וארבעה תווים אקראיים.- דוגמה:
"baseInstanceName": "my-vm" - שמות מכונות ה-VM שנוצרו:
my-vm-p4k1,my-vm-n2hr.
- דוגמה:
תחילית ברירת המחדל: אם לא מגדירים את
baseInstanceName, Compute Engine משתמש בשם ה-MIG כתחילית, ומוסיף מקף וארבעה תווים אקראיים.- דוגמה לשם של קבוצת MIG:
my-mig - שמות מכונות ה-VM שנוצרו:
my-mig-xz8d,my-mig-4ran.
- דוגמה לשם של קבוצת MIG:
אפשר להגדיר את baseInstanceName כשיוצרים קבוצה משולבת לבחירת רשת או כשמעדכנים קבוצה קיימת.
gcloud
כדי להגדיר שמות של מכונות כשיוצרים קבוצת מופעים מנוהלת, משתמשים בפקודה create עם הדגל --base-instance-name:
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
--template INSTANCE_TEMPLATE \
--size SIZE \
--base-instance-name BASE_INSTANCE_NAME \
[--region REGION | --zone ZONE]
כדי להגדיר שמות של מכונות בקבוצת MIG קיימת, משתמשים בפקודה update עם הדגל --base-instance-name:
gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
--base-instance-name BASE_INSTANCE_NAME \
[--region REGION | --zone ZONE]
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_GROUP_NAME: השם של ה-MIG. -
INSTANCE_TEMPLATE: השם של תבנית של הגדרות מכונה שבה רוצים להשתמש ליצירת מכונות וירטואליות. -
SIZE: מספר המכונות הווירטואליות ב-MIG. -
BASE_INSTANCE_NAME: פורמט השם הבסיסי של המופעים שנוצרו ב-MIG:- כדי להשתמש בשמות רציפים, צריך לכלול תו גיבוב (hash) אחד או יותר (
#) בשם – לדוגמה,PREFIX-###כמוinstance-###. - כדי להשתמש בקידומת מותאמת אישית עם סיומת אקראית, צריך להשתמש בשם שלא כולל תווי סולמית – לדוגמה,
my-vm.
- כדי להשתמש בשמות רציפים, צריך לכלול תו גיבוב (hash) אחד או יותר (
-
REGION: במקרה של MIG אזורי, האזור שבו ה-MIG ממוקם. -
ZONE: ב-MIG אזורי, האזור שבו נמצא ה-MIG.
REST
כדי להגדיר שמות של מופעים כשיוצרים קבוצת מופעים מנוהלת, כוללים את השדה baseInstanceName בבקשה ל-method instanceGroupManagers.insert או ל-method regionInstanceGroupManagers.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
{
"name": "INSTANCE_GROUP_NAME",
"instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE",
"targetSize": "SIZE",
"baseInstanceName": "BASE_INSTANCE_NAME"
}
כדי להגדיר שמות של מכונות בקבוצת MIG קיימת, כוללים את baseInstanceName בבקשה ל-method instanceGroupManagers.patch או ל-method regionInstanceGroupManagers.patch.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME
{
"baseInstanceName": "BASE_INSTANCE_NAME"
}
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
ZONE: ב-MIG אזורי, האזור שבו נמצא ה-MIG. -
INSTANCE_GROUP_NAME: השם של ה-MIG. -
INSTANCE_TEMPLATE: השם של תבנית של הגדרות מכונה שבה רוצים להשתמש ליצירת מכונות וירטואליות. -
SIZE: מספר המכונות הווירטואליות ב-MIG. -
BASE_INSTANCE_NAME: פורמט השם הבסיסי של המופעים שנוצרו ב-MIG:- כדי להשתמש בשמות רציפים, צריך לכלול תו גיבוב (hash) אחד או יותר (
#) בשם – לדוגמה,PREFIX-###כמוinstance-###. - כדי להשתמש בקידומת מותאמת אישית עם סיומת אקראית, צריך להשתמש בשם שלא כולל תווי סולמית – לדוגמה,
my-vm.
- כדי להשתמש בשמות רציפים, צריך לכלול תו גיבוב (hash) אחד או יותר (
הגדלת המגבלה על גודל הקבוצה
כברירת מחדל, מגבלת הגודל של קבוצת MIG אזורית היא 1,000 מכונות וירטואליות, ומגבלת הגודל של קבוצת MIG אזורית היא 2,000 מכונות וירטואליות. אפשר להגדיל את המגבלות האלה ל-2,000 מכונות וירטואליות עבור MIG אזורי ו-4,000 מכונות וירטואליות עבור MIG אזורי.
כדי להגדיל את המגבלות, מגדירים את השדה listManagedInstancesResults של הקבוצה לערך PAGINATED. אם עדיין צריך עוד מכונות וירטואליות בקבוצה, אפשר ליצור כמה קבוצות של מכונות וירטואליות בניהול (MIG) או לפנות לתמיכה.
המסוף
נכנסים לדף Instance groups במסוף Cloud de Confiance .
בעמודה Name (שם) ברשימה, לוחצים על שם קבוצת המכונות שרוצים להגדיל את מגבלת הגודל שלה.
לוחצים על עריכה כדי לשנות את קבוצת המופעים.
לוחצים על הקטע אפשרויות מתקדמות כדי להרחיב אותו.
בקטע Managed instance list API call results (תוצאות של קריאות ל-API של רשימת מכונות מנוהלות), בוחרים באפשרות Paginated (עם חלוקה לדפים).
לוחצים על שמירה כדי להחיל את השינויים.
gcloud
אם כבר יש לכם MIG, משתמשים בפקודה update:
gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
--list-managed-instances-results=PAGINATEDכדי ליצור קבוצת מופעים מנוהלת חדשה, משתמשים בפקודה create:
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
--template INSTANCE_TEMPLATE \
--size SIZE \
--list-managed-instances-results=PAGINATEDTerraform
כדי להגדיל את מגבלת הגודל של MIG, מגדירים את הארגומנט list_managed_instances_results לערך PAGINATED.
בדוגמה הבאה מגדילים את מגבלת הגודל של MIG אזורי. מידע נוסף על המשאב שבו נעשה שימוש בדוגמה זמין במאמר בנושא משאב google_compute_instance_group_manager.
ל-MIG אזורי, משתמשים ב-google_compute_region_instance_group_manager
resource.
כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.
REST
כדי להשתמש ב-MIG אזורי קיים, משתמשים בשיטה instanceGroupManagers.patch. כדי להשתמש ב-MIG אזורי, משתמשים בשיטה regionInstanceGroupManagers.patch. למשל:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/regionInstanceGroupManagers/INSTANCE_GROUP_NAME
{
"listManagedInstancesResults": "PAGINATED",
}
כדי ליצור קבוצת MIG אזורית חדשה, משתמשים בשיטה instanceGroupManagers.insert. כדי ליצור קבוצת MIG אזורית, משתמשים בשיטה regionInstanceGroupManagers.insert.
אם רוצים לחזור לתוצאות של רשימה ללא חלוקה לדפים, צריך גם לחזור למגבלת הגודל שמוגדרת כברירת מחדל לקבוצה. כדי לחזור להגדרות הקודמות, קודם צריך לוודא שהקבוצה לא חורגת ממגבלת הגודל שמוגדרת כברירת מחדל, ואז להגדיר את השדה listManagedInstancesResults לערך PAGELESS.
המאמרים הבאים
- מידע נוסף על עבודה עם מופעים מנוהלים, למשל, כדי למחוק, לנטוש וליצור מחדש מופעים מנוהלים.
- הצגת מידע על קבוצות מנוהלות של מכונות ועל מכונות מנוהלות.
- פתרון בעיות בקבוצות מנוהלות של מכונות וירטואליות