כשמפעילים את התכונה 'התאמה אוטומטית לעומס (automatic scaling)', המידרוג האוטומטי מקבל החלטות לגבי התאמה לעומס (scaling) על סמך האפשרויות שאתם מציינים. כל החלטה לגבי שינוי גודל נרשמת ביומן על ידי Cloud Logging. כדי להבין טוב יותר את ההחלטות של הכלי לשינוי גודל אוטומטי, כדאי לקרוא את היומנים האלה בכלי לבדיקת יומנים.
באמצעות Logs Explorer, אפשר לראות אירועים שקשורים ל:
- המלצה לשינוי הגודל של קבוצת מופעי מכונה מנוהלים (MIG) באמצעות Autoscaler. אם הכלי לשינוי גודל אוטומטי מחשב גודל מומלץ חדש ל-MIG, השינוי בגודל המומלץ מתואר ביומני הכלי לשינוי גודל אוטומטי. שינוי הגודל של רשומה ביומן
- שינויים בסטטוס של קנה המידה האוטומטי. לדוגמה, אם שינוי הגודל האוטומטי פעל כמצופה אבל נתקל בבעיה, השינוי בסטטוס יתואר ביומני שינוי הגודל האוטומטי. יומן שינויים בסטטוס
לפני שמתחילים
- קוראים את מסמכי התיעוד בנושא התאמה אוטומטית לעומס.
- יש לכם מידרוג אוטומטי פעיל שאתם רוצים לראות את היומנים שלו.
- אפשר להיעזר בהוראות שבמאמר איך משתמשים ב-Logs Explorer.
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי 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
-
- הגדרת אזור ותחום כברירת מחדל
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
צפייה ביומנים של שינוי הגודל האוטומטי
כדי לראות את היומנים של שינוי הגודל האוטומטי, משתמשים במסוף Cloud de Confiance , ב-CLI של gcloud או ב-REST.
המסוף
אם הפעלתם את התכונה 'שינוי גודל אוטומטי', תוכלו לראות את היומנים של שינוי הגודל האוטומטי ב-Cloud de Confiance console.
- עוברים לדף Logs Explorer.
- פותחים את התפריט הנפתח Resource ובוחרים באפשרות Autoscaler.
אפשר גם לעבור לדף Logs Explorer מ-MIG באופן הבא:
נכנסים לדף Instance groups במסוף Cloud de Confiance .
לוחצים על השם של קבוצת ה-MIG שרוצים להציג את היומנים שלה.
לוחצים על הכרטיסייה Monitoring (מעקב).
בכרטיסייה מעקב, החלונית יומנים מופיעה בתחתית הדף. מרחיבים את החלונית על ידי לחיצה על keyboard_capslock החלפת החלונית 'יומנים' בסוף החלונית.
כדי לפתוח את הדף Logs explorer (כלי לבדיקת יומנים), לוחצים על open_in_new View in logs explorer (הצגה בכלי לבדיקת יומנים).
כלי הניתוח של היומנים נפתח עם שאילתת ברירת מחדל לאחזור כל היומנים של קבוצת המופעים המנוהלת (MIG) של קנה המידה האוטומטי.
gcloud
כדי לחפש את כל היומנים שקשורים להתאמה אוטומטית לעומס, משתמשים בפקודה logging read.
לדוגמה:
gcloud logging read "resource.type=autoscaler" --limit 10 \
--format json
כדי לראות את היומנים של קבוצת מופעים מנוהלת מסוימת, מציינים את instance_group_manager_name באופן הבא:
gcloud logging read "resource.type=autoscaler AND \
resource.labels.instance_group_manager_name=example-igm" \
--limit 10 --format json
כדי לעיין ברשומות ביומן שקשורות לפעולות שינוי הגודל של Autoscaler, מציינים את שם השיטה compute.autoscalers.resize:
gcloud logging read "resource.type=autoscaler AND \
resource.labels.instance_group_manager_name=example-igm AND \
protoPayload.methodName=compute.autoscalers.resize" \
--limit 10 --format json
כדי לראות את רשומות היומן שקשורות לשינויים בסטטוס של Autoscaler, מציינים את שם השיטה compute.autoscalers.changeStatus:
gcloud logging read "resource.type=autoscaler AND \
resource.labels.instance_group_manager_name=example-igm AND \
protoPayload.methodName=compute.autoscalers.changeStatus" \
--limit 10 --format json
REST
שולחים בקשה ל-Logging V2 API.
גוף הבקשה צריך להכיל את הפרמטר filter שבו יש להשתמש כשמחפשים יומנים, ואת הפרמטר project של היומנים שרוצים לראות. לדוגמה, כדי לשלוח בקשה לקבלת רשימה של פעולות שינוי גודל של קבוצת מופעים מנוהלת ספציפית:
POST https://logging.googleapis.com/v2/entries:list
{
"filter": "resource.type=autoscaler AND
resource.labels.instance_group_manager_name=example-igm AND
protoPayload.methodName=compute.autoscalers.resize",
"pageSize": 10,
"resourceNames": [
"projects/example-project"
]
}
כדי לשלוח בקשה לקבלת רשימה של שינויי סטטוס של קבוצת מופעים מנוהלת ספציפית:
POST https://logging.googleapis.com/v2/entries:list
{
"filter": "resource.type=autoscaler AND
resource.labels.instance_group_manager_name=example-igm AND
protoPayload.methodName=compute.autoscalers.changeStatus",
"pageSize": 10,
"resourceNames": [
"projects/example-project"
]
}
שינוי הגודל של רשומה ביומן
כשכלי ההתאמה האוטומטית של קבוצות מופעים מנוהלות (MIG) מחשב גודל מומלץ לקבוצת ה-MIG, Compute Engine יוצר רשומה ביומן. הערך הזה כולל את הגדלים המומלצים החדשים והישנים, ואת הסיבה לשינוי בהמלצה.
בדוגמה הבאה מוצגת רשומה ביומן של קבוצת MIG אזורית. בדוגמה הזו, המידרוג האוטומטי חישב 3 מכונות וירטואליות כדי להשיג את יעד ניצול המעבד של 35%, על סמך התאמה אוטומטית לעומס מבוססת-תחזיות. אבל המספר המקסימלי של מופעים שהוגדר במדיניות ההתאמה האוטומטית לעומס הוא רק 2. לכן, הכלי לשינוי גודל אוטומטי מגביל את הגודל המומלץ ל-2.
{
insertId: "1l68z7sg4jw7kzo"
logName: "projects/example-project/logs/cloudaudit.googleapis.com%2Fsystem_event"
protoPayload: {
@type: "type.googleapis.com/google.cloud.audit.AuditLog"
metadata: {
@type: "type.googleapis.com/autoscaler.AutoscalerSizeChangeExplanation"
autoscalingMode: "ON"
autoscalingReason: {
scalingLimit: {
limitPolicy: {
maxNumReplicas: 2
}
limitSize: 2
name: "MAX_INSTANCES"
}
scalingSignal: {
calculatedSize: 3
calculationDetails: {
servingSize: 1
signalTarget: 0.35
signalValue: 1.03533
}
name: "PREDICTED_CPU_UTILIZATION"
signalPolicy: {
coolDownPeriodSec: 15
cpuUtilization: {
predictiveMethod: "OPTIMIZE_AVAILABILITY"
utilizationTarget: 0.35
}
}
}
summary: "The autoscaler's recommended size changed from 1 to 2
because the autoscaler predicted that in 15 seconds the average CPU
utilization across 1 serving instance will be 103.533%, which is above
the utilization target of 35%. The calculated size was 3 to achieve
the target CPU utilization but the size was limited by the maximum
number of instances set in the autoscaling policy."
}
newSize: 2
oldSize: 1
}
methodName: "compute.autoscalers.resize"
resourceName: "projects/example-project/zones/us-east1-d/autoscalers/example-autoscaler"
serviceName: "compute.googleapis.com"
}
receiveTimestamp: "2022-06-13T22:34:43.045973046Z"
resource: {
labels: {
autoscaler_id: "1234567890123456789"
autoscaler_name: "example-autoscaler"
instance_group_manager_id: "1357908642148074125"
instance_group_manager_name: "example-igm"
location: "us-east1-d"
project_id: "example-project"
}
type: "autoscaler"
}
severity: "INFO"
timestamp: "2022-06-13T22:34:42.810216614Z"
}
בטבלה הבאה מתוארים השדות מרשומת היומן:
| מאפיין (property) | ערך |
|---|---|
autoscalingMode |
מצב התאמה אוטומטית לעומס
בזמן שהרשומה נרשמה ביומן. בכל מצב, הכלי לשינוי גודל אוטומטי מחשב את הגודל המומלץ, שמיוצג על ידי newSize ביומן. בהתאם למצב של התאמה אוטומטית לעומס, המידרוג האוטומטי משנה את הגודל של ה-MIG באופן הבא:
|
autoscalingReason |
פרטים על הסיבה להתאמה אוטומטית לעומס. |
autoscalingReason.scalingLimit
|
פרטים על התכונה של התאמה אוטומטית לעומס שהגבילה את calculatedSize, שהוא הגודל שחושב על ידי המידרוג האוטומטי על סמך אות ההתאמה האוטומטית לעומס. התכונות של התאמה אוטומטית לעומס שיכולות להגביל את calculatedSize הן מספר מקסימלי או מינימלי של מופעים, אמצעי הבקרה של הקטנת הקיבולת או תקופת הייצוב.
אם לא חלה מגבלה על calculatedSize, השדה scalingLimit לא מופיע ביומנים.
|
autoscalingReason.scalingLimit.limitPolicy
|
ההגדרה של התכונה 'שינוי גודל אוטומטי' שהגבילה את calculatedSize. השדה limitPolicy לא מוגדר כשהייצוב מגביל את calculatedSize, כי הייצוב הוא תכונת ברירת מחדל של שינוי גודל אוטומטי.
|
autoscalingReason.scalingLimit.limitSize
|
מספר המכונות הווירטואליות שמבוססות על התכונה של שינוי גודל אוטומטי שהגבילה את calculatedSize.
|
autoscalingReason.scalingLimit.name
|
השם של תכונת ההתאמה האוטומטית לעומס שהגבילה את calculatedSize. |
autoscalingReason.scalingSignal
|
פרטים על אות ההתאמה האוטומטית לעומס שמשמש לחישוב מספר המכונות הווירטואליות שצריכות להיות ב-MIG. אם במדיניות ההתאמה האוטומטית לעומס יש כמה אותות, המידרוג האוטומטי מתחשב באות שדורש את המספר הגדול ביותר של מכונות וירטואליות. |
autoscalingReason.scalingSignal.calculatedSize
|
מספר המכונות הווירטואליות שצריכות להיות בקבוצת ה-MIG על סמך אות ההתאמה האוטומטית לעומס. אם scalingLimit חל, אז המערכת להגדלת הקיבולת באופן אוטומטי מגבילה את calculatedSize ל-scalingLimit.limitSize.
|
autoscalingReason.scalingSignal.calculationDetails
|
פרטים שמשמשים לקביעת calculatedSize.
|
autoscalingReason.scalingSignal.name
|
השם של אות ההתאמה האוטומטית לעומס שעל פיו המידרוג האוטומטי חישב את מספר המכונות הווירטואליות, שמיוצג על ידי calculatedSize ביומן.
|
autoscalingReason.scalingSignal.signalPolicy
|
ההגדרה של אות שינוי הגודל האוטומטי שלפיו נקבע calculatedSize על ידי הכלי לשינוי גודל אוטומטי.
|
autoscalingReason.summary
|
תיאור של הסיבה להגדרה של התאמה אוטומטית לעומס. |
newSize
|
הגודל המומלץ הנוכחי של ה-MIG. בהתאם לautoscalingMode, המערכת לשינוי גודל אוטומטי משנה את גודל ה-MIG לnewSize באופן הבא:
|
oldSize
|
הגודל המומלץ הקודם של ה-MIG. |
מידע על שדות אחרים ברשומה ביומן מופיע במאמר פורמט של רשומות ביומן הביקורת.
רשומה ביומן השינויים של הסטטוס
כשסטטוס ההרחבה האוטומטית משתנה, Compute Engine יוצר רשומה ביומן שכוללת את הודעות הסטטוס הישנות והחדשות. אפשר להשתמש בהודעות הסטטוס האלה כדי להבין למה המערכת האוטומטית לשינוי גודל לא מתנהגת כמו שציפיתם, או כדי לנפות באגים בבעיות שזיהיתם בעבר. כמה מהודעות הסטטוס הנפוצות מפורטות במאמר הודעות סטטוס נפוצות שמוחזרות.
השדות הבאים ב-protoPayload מתארים את הסטטוסים הישנים והחדשים:
-
metadata.newStatus.details: הסטטוס החדש של הכלי להתאמת גודל הקבוצה. metadata.oldStatus.details: הסטטוס הקודם של שינוי הגודל האוטומטי.
בדוגמה הבאה מוצגת רשומה ביומן שמתארת שינוי בסטטוס. בדוגמה הזו, יכול להיות שתבחינו בהודעת הסטטוס החדשה שמציינת בעיות בהגדרת איזון העומסים.
{
insertId: "ivho6kg4icqfio"
logName: "projects/example-project/logs/cloudaudit.googleapis.com%2Fsystem_event"
protoPayload: {
metadata: {
@type: "type.googleapis.com/autoscaler.AutoscalerStatusChange"
newStatus: {
details: "The autoscaler is configured to scale based on a load
balancing signal but the instance group has not received any
utilization data from the load balancer or the utilization is
constantly 0. Check that the load balancing configuration is
working"
}
oldStatus: {
details: "OK"
},
methodName: "compute.autoscalers.changeStatus"
resourceName: "projects/example-project/zones/us-east1-b/autoscalers/example-autoscaler"
serviceName: "compute.googleapis.com"
}
receiveTimestamp: "2022-06-08T03:54:12.332329320Z"
resource: {
labels: {
autoscaler_id: "1234567890123456789"
autoscaler_name: "example-autoscaler"
instance_group_manager_id: "1357908642148074125"
instance_group_manager_name: "example-igm"
location: "us-east1-b"
project_id: "example-project"
}
type: "autoscaler"
}
severity: "INFO"
timestamp: "2022-06-08T03:54:10.675416812Z"
}
}
מידע על שדות אחרים ברשומה ביומן מופיע במאמר פורמט של רשומות ביומן הביקורת.
המאמרים הבאים
- מעדכנים את הכלי להרחבת נפח האחסון האוטומטית באמצעות המידע שקיבלתם מהיומנים.
- איך הכלי לשינוי גודל אוטומטי מקבל החלטות
- בודקים את האפשרויות להתאמה אוטומטית לעומס.