איסוף יומני אירועים של Vertical Pod Autoscaler

בדף הזה מפורט מידע על אירועי החלטה שמופקים על ידי vertical Pod autoscaler ב-Google Kubernetes Engine ‏ (GKE). ניתוח האירועים האלה מאפשר לכם לקבל תובנות לגבי האופן שבו בקר ה-Vertical Pod Autoscaler מנהל את שינוי גודל עומס העבודה, ולהבין את תהליך קבלת ההחלטות שמאחורי הפעולות שלו.

הכלי Vertical Pod Autoscaler פולט אירועים של החלטות, שמאוחסנים כרשומות ביומן ב-Cloud Logging.

לפני שמתחילים

חשוב לוודא שאתם עומדים בדרישות המוקדמות הבאות:

יצירת פרויקט חדש או בחירה בפרויקט קיים

אתם יכולים להשתמש בפרויקט קיים או ליצור פרויקט חדש בשביל המדריך הזה.

  1. In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Cloud de Confiance project.

הפעלת ממשקי ה-API

מפעילים את ממשקי ה-API של GKE ו-Cloud Logging, אם הם עדיין לא מופעלים.

תפקידים שנדרשים להפעלת ממשקי API

כדי להפעיל ממשקי API, צריך את ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

הפעלת ממשקי ה-API

הגדרת Cloud Shell

במדריך הזה תשתמשו ב-Cloud Shell כדי להריץ פקודות של gcloud ושל kubectl. ‫Cloud Shell היא סביבת מעטפת לניהול משאבים שמתארחים ב- Cloud de Confiance by S3NS. הוא מגיע עם Google Cloud CLI ועם כלי שורת הפקודה kubectl שמותקנים מראש.

במסוף Cloud de Confiance , מפעילים את Cloud Shell.

הפעלת Cloud Shell

בחלק התחתון של המסוף ייפתח סשן של Cloud Shell בתוך מסגרת.

לפני שמריצים פקודות במדריך הזה, מוודאים שפרויקט ברירת המחדל מוגדר למזהה הפרויקט שבו רוצים לפרוס את אפליקציית הדוגמה. אם הוא עדיין לא מוגדר, מריצים את הפקודה הבאה ב-Cloud Shell:

gcloud config set project PROJECT_ID

מחליפים את PROJECT_ID במזהה הפרויקט.

תפקידים והרשאות נדרשים

כדי לקבל את ההרשאות שדרושות בשביל להפעיל את יצירת היומנים, ולגשת ליומנים ולעבד אותם, אתם צריכים לבקש מהאדמין לתת לכם את תפקידי ה-IAM הבאים בפרויקט:

  • כדי להפעיל רישום של אירועים של Vertical Pod Autoscaler באשכול: אדמין של אשכול Kubernetes Engine (roles/container.clusterAdmin)
  • כדי לגשת ליומנים ולהשתמש ב-Logs Explorer וב-Observability Analytics: Logs Viewer (roles/logging.viewer)

להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

דרישות

  • באשכול GKE צריך להפעיל גרסה 1.36.0-gke.1601000 ואילך.
  • מפעילים את Cloud Logging באשכול GKE.
  • מוודאים שיש לכם Vertical Pod Autoscaler שאתם רוצים לעקוב אחריו. חשוב לוודא שבשדות של הכלי האוטומטי לשינוי גודל של Pods לא מופיעים מידע אישי רגיש.

עלויות

התמחור של Cloud Logging חל כשמפעילים את Cloud Logging ואוספים יומני החלטות של Vertical Pod Autoscaler.

הפעלת יומני החלטות של Vertical Pod Autoscaler

הפקודות שמופיעות בקטעים הבאים מאפשרות לייצא את היומנים שנוצרו על ידי KCP_VPA ולשמור את היומנים ביעד logName="projects/PROJECT_ID/logs/container.googleapis.com%2Fvpa-controller" ב-Cloud Logging.

הפעלת יומנים באשכול חדש

כדי ליצור אשכול חדש שבו מופעלים יומני ההחלטות של KCP_VPA, מריצים את הפקודה הבאה:

gcloud container clusters create CLUSTER_NAME \
    --location=LOCATION \
    --project=PROJECT_ID \
    --logging=SYSTEM,KCP_VPA

מחליפים את מה שכתוב בשדות הבאים:

  • ‫CLUSTER_NAME: השם של אשכול ה-Kubernetes שרוצים ליצור או לעדכן.
  • ‫PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance .
  • ‫LOCATION: אזורי המחשוב של האשכול.

הפעלת יומנים באשכול קיים

כדי להפעיל את יומני ההחלטות KCP_VPA באשכול קיים:

  1. בודקים את ההגדרות הקיימות של האשכול. אם באשכול כבר מוגדרים רכיבי רישום ספציפיים, צריך להחליט אם רוצים להוסיף להגדרת הרישום הקיימת או להחליף אותה.

  2. כדי להפעיל את יומני ההחלטות של הכלי לשינוי גודל ה-Pod באופן אוטומטי, מריצים את הפקודה הבאה. אם אתם מוסיפים להגדרה קיימת, הוסיפו לפקודה גם את הגדרת הרישום ביומן הקיימת.

    gcloud container clusters update CLUSTER_NAME \
        --location=LOCATION \
        --project=PROJECT_ID \
        --logging=SYSTEM,KCP_VPA
    

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫CLUSTER_NAME: שם האשכול שרוצים ליצור או לעדכן.
    • ‫PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance .
    • ‫LOCATION: אזורי מחשוב לאשכול.

מוודאים שהרישום ביומן מופעל

כדי לוודא שיומני ההחלטות של KCP_VPA מופעלים באשכול, מאחזרים את הגדרות הרישום ביומן המעודכנות של האשכול ובודקים את רשימת היומנים. כדי לעשות זאת, מריצים את הפקודה הבאה:

gcloud container clusters describe CLUSTER_NAME \
    --location=LOCATION \
    --flatten=loggingConfig \
    --format='csv[delimiter=",",no-heading](componentConfig.enableComponents)'

מחליפים את מה שכתוב בשדות הבאים:

כשיומני ההחלטות של KCP_VPA מופעלים באשכול, הפלט נראה כך:

SYSTEM_COMPONENTS,APISERVER,CONTROLLER_MANAGER,SCHEDULER,KCP_VPA

צפייה ביומנים של Vertical Pod Autoscaler ב-Logs Explorer

אפשר לעקוב אחרי ההתנהגות של הכלי האוטומטי לשינוי גודל של Pods אנכיים באמצעות הכלי Logs Explorer. כדי לראות את היומנים של Vertical Pod Autoscaler:

  1. עוברים לדף Logs Explorer:

    כניסה לדף Logs Explorer

  2. בוחרים באפשרות כל שמות היומנים ומחפשים את שמות היומנים vpa-controller.

    ב-Logs Explorer מוצגים כל יומני ההתאמה האנכית של קבוצות Pod לעומס, כולל יומנים מכל האשכולות שבהם הופעלו יומני ההתאמה האנכית של קבוצות Pod לעומס בפרויקט.

  3. אפשר לסנן את היומנים לפי שם האשכול או שם עומס העבודה. לדוגמה, כדי להציג רשימה של אירועים מתוך עומס עבודה ספציפי באשכול, מציינים את שם האשכול ואת שם עומס העבודה באמצעות השאילתה הבאה:

    resource.labels.cluster_name="CLUSTER_NAME" AND
    jsonPayload.target.name="WORKLOAD_NAME"
    

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫CLUSTER_NAME: שם האשכול.
    • ‫WORKLOAD_NAME: שם עומס העבודה.

השבתת יומני ההחלטות של התאמה אנכית של קבוצות Pod לעומס

  1. כדי להשבית את יומני ההחלטות של KCP_VPA באשכול קיים, מריצים את הפקודה הבאה:

    gcloud container clusters update CLUSTER_NAME \
        --location=LOCATION \
        --project=PROJECT_ID \
        --logging=SYSTEM
    
  2. מוודאים שיומני ההחלטות KCP_VPA מושבתים. כדי לעשות את זה, מריצים את הפקודה הבאה:

    gcloud container clusters describe CLUSTER_NAME \
        --location=LOCATION \
        --flatten=loggingConfig \
        --format='csv[delimiter=",",no-heading](componentConfig.enableComponents)'
    

    כשיומני ההחלטות של KCP_VPA מושבתים באשכול, הפלט דומה לזה:

    SYSTEM_COMPONENTS,APISERVER,CONTROLLER_MANAGER,SCHEDULER
    

סוגים של יומנים

אירועי ההחלטה של הכלי לשינוי גודל ה-Pod באופן אנכי מאוחסנים ב-Cloud Logging, במיקום logName="projects/PROJECT_ID/logs/container.googleapis.com%2Fvpa-controller" שנמצא ב-_Default bucket באותו פרויקט כמו אשכול GKE. כל האירועים שמתועדים הם בפורמט JSON ואפשר למצוא אותם בשדה jsonPayload של רשומה ביומן.

הסוג והתדירות של היומנים שנוצרים תלויים במצב ההתאמה האנכית של קבוצות Pod לעומס שהוגדר לעומס העבודה. יש ארבעה סוגים של יומני VPA, שמסווגים לפי הפעולה שהם מבצעים:

  • ‫Update recommendation: כל Vertical Pod Autoscaler יוצר יומן חדש של המלצות לעדכון בכל דקה.
  • ‫Evict Pod: כל Vertical Pod Autoscaler יוצר יומן Evict Pod אחד לכל Pod, כשהוא מחליט לשנות את הגודל במצב Recreate.
  • המלצה להחלה על פינוי: כל Vertical Pod Autoscaler יוצר יומן המלצות להחלה אחד לכל Pod, כשה-Vertical Pod Autoscaler מחליט לשנות את הגודל במצב Recreate.
  • החלת המלצה במקום: כל כלי להתאמה אנכית של קבוצות Pod לעומס יוצר יומן אחד של החלת המלצה במקום לכל Pod, כשהכלי מחליט לשנות את הגודל במצב InPlaceOrRecreate.

סוגי היומנים שהבקר יכול להפיק תלויים במצב של הכלי האוטומטי לשינוי גודל של ה-Pod האנכי. בטבלה הבאה מפורטים היומנים שאפשר להפיק לכל מצב.

מצב של Vertical Pod Autoscaler סוגי היומנים שאפשר להפיק
Auto (הוצא משימוש) או Recreate
  • עדכון ההמלצה
  • פינוי Pod
  • יישום המלצה לגבי פינוי
InPlaceOrRecreate
  • עדכון ההמלצה
  • יישום ההמלצה במקום
  • פינוי Pod (סוג כזה של יומן אפשרי כששינוי הגודל של In-place נכשל)
  • החלת המלצה על פינוי (סוג היומן הזה אפשרי אם שינוי הגודל של In-place נכשל)

ב-Vertical Pod Autoscaler עם מצב InPlaceOrRecreate, אם In-place resize נכשל, ההתנהגות של ה-Autoscaler זהה להתנהגות במצב Recreate.

עדכון ההמלצה

אפשר ליצור יומן המלצות לעדכון באמצעות המצבים הבאים של Vertical Pod Autoscaler: ‏ Auto (הוצא משימוש), Recreate ו-InPlaceOrRecreate.

השדה jsonPayload ביומן ההחלטות הזה כולל את השדות הבאים:

שדה תיאור
vpaName שם העוזר האישי הווירטואלי.
vpaNamespace מרחב השמות של ה-VPA.
target עומס העבודה שה-VPA הזה מטרגט.
  • ‫name: שם עומס העבודה.
  • ‫kind: סוג עומס העבודה.
  • ‫apiVersion: גרסת ה-API של עומס העבודה.
operation הפעולה שמתבצעת. הערך הוא אחד מהבאים:
  • UPDATE_RECOMMENDATION
  • EVICT_POD
  • APPLY_RECOMMENDATION_IN_PLACE
  • APPLY_RECOMMENDATION_ON_EVICTION
state המצב של הפעולה. הערך הוא אחד מהערכים הבאים:
  • SUCCEEDED
  • SKIPPED
  • FAILED
reason

הסיבה מסבירה למה הפעולה נכשלה או למה המערכת דילגה עליה.

במקרה של הצלחה בפעולות APPLY_RECOMMENDATION_IN_PLACE ו-APPLY_RECOMMENDATION_ON_EVICTION, ההודעה מבהירה שההמלצה שיושמה יכולה להיות שונה מההמלצה הגולמית בפעולה UPDATE_RECOMMENDATION בגלל שינויים שבוצעו (כמו מכסת משאבים או יחס משאבים ב-Autopilot).

recommendedResources ההמלצה הגולמית. השדה הזה זהה לחלוטין לשדה Status.Recommendation באובייקט VPA.
  • ‫containerName: שם הקונטיינר שההמלצה מתייחסת אליו.
  • ‫target: ההמלצה בפועל שאפשר ליישם.
  • ‫lowerBound: הגבול התחתון של ההמלצה.
  • ‫upperBound: הגבול העליון של ההמלצה.
  • ‫uncappedTarget: ההמלצה לפני הגבלת הגבול התחתון או העליון.
confidence רמת הביטחון בהמלצה. השדה הזה קיים כשהסטטוס הוא succeeded. הערך הוא אחד מהערכים הבאים:
  • ‫LOW: המערכת של VPA עיבדה פחות מ-10 דגימות של מדדים.
  • ‫HIGH: ה-VPA עיבד 10 דגימות של מדדים או יותר.

דוגמה ליומן של המלצות לעדכון:

{
 "insertId": "ehz6w9d304v4zttg",
 "jsonPayload": {
   "state": "SUCCEEDED",
   "instance": {
     "vm_name": "my-unique-vm-identifier",
     "zone": "us-central1-c"
   },
   "recommendedResources": [
     {
       "lowerBound": {
         "memory": "5Mi",
         "cpu": "5m"
       },
       "containerName": "nginx",
       "uncappedTarget": {
         "memory": "5Mi",
         "cpu": "1m"
       },
       "upperBound": {
         "memory": "5Mi",
         "cpu": "5m"
       },
       "target": {
         "memory": "5Mi",
         "cpu": "5m"
       }
     }
   ],
   "operation": "UPDATE_RECOMMENDATION",
   "target": {
     "name": "my-workload",
     "kind": "Deployment",
     "apiVersion": "apps/v1"
   },
   "vpaNamespace": "default",
   "vpaName": "my-vpa"
 },
 "resource": {
   "type": "k8s_control_plane_component",
   "labels": {
     "component_location": "us-central1-c",
     "project_id": "my-project",
     "cluster_name": "my-cluster",
     "location": "us-central1-c",
     "component_name": "vpa-controller"
   }
 },
 "timestamp": "2026-01-22T19:28:16.069635605Z",
 "severity": "INFO",
 "labels": {
   "compute.googleapis.com/resource_name": "my-unique-vm-identifier"
 },
 "logName": "projects/my-project/logs/container.googleapis.com%2Fvpa-controller",
 "sourceLocation": {
   "file": "vpa_event_logger.go",
   "line": "23"
 },
 "receiveTimestamp": "2026-01-22T19:28:17.750678359Z"
}

הוצאת Pod

יומן פינוי Pod זמין במצב VPA‏ Auto (הוצא משימוש) ו-Recreate. סוג היומן הזה אפשרי גם במצב VPA‏ InPlaceOrRecreate אם הפעולה In-place resize נכשלת.

השדה jsonPayload ביומן ההחלטות הזה כולל את השדות הבאים:

שדה תיאור
vpaName שם העוזר האישי הווירטואלי.
vpaNamespace מרחב השמות של ה-VPA.
target עומס העבודה שה-VPA הזה מטרגט.
  • ‫name: שם עומס העבודה.
  • ‫kind: סוג עומס העבודה.
  • ‫apiVersion: גרסת ה-API של עומס העבודה.
operation הפעולה שמתבצעת. הערך הוא אחד מהבאים:
  • UPDATE_RECOMMENDATION
  • EVICT_POD
  • APPLY_RECOMMENDATION_IN_PLACE
  • APPLY_RECOMMENDATION_ON_EVICTION
state המצב של הפעולה. הערך הוא אחד מהבאים:
  • SUCCEEDED
  • SKIPPED
  • FAILED
reason

הסיבה מסבירה למה הפעולה נכשלה או למה המערכת דילגה עליה.

במקרה של הצלחה בפעולות APPLY_RECOMMENDATION_IN_PLACE ו-APPLY_RECOMMENDATION_ON_EVICTION, הסיבה מבהירה שההמלצה שיושמה יכולה להיות שונה מההמלצה הגולמית בפעולה UPDATE_RECOMMENDATION בגלל שינויים שבוצעו (כמו מכסת משאבים או יחס משאבים של טייס אוטומטי).

pod השם של ה-Pod.

דוגמה ליומן של הוצאת Pod:

{
 "insertId": "8x278gc4f75oowf4",
 "jsonPayload": {
   "target": {
     "kind": "Deployment",
     "apiVersion": "apps/v1",
     "name": "my-deployment"
   },
   "operation": "EVICT_POD",
   "vpaName": "my-vpa",
   "pod": "my-deployment-856ff7966-gr4rh",
   "state": "SUCCEEDED",
   "vpaNamespace": "default",
   "instance": {
     "vm_name": "my-unique-vm-identifier",
     "zone": "us-central1-c"
   }
 },
 "resource": {
   "type": "k8s_control_plane_component",
   "labels": {
     "component_name": "vpa-controller",
     "cluster_name": "my-cluster",
     "component_location": "us-central1-c",
     "location": "us-central1-c",
     "project_id": "my-project"
   }
 },
 "timestamp": "2026-01-22T19:26:25.283067078Z",
 "severity": "INFO",
 "labels": {
   "compute.googleapis.com/resource_name": "my-unique-vm-identifier"
 },
 "logName": "projects/my-project/logs/container.googleapis.com%2Fvpa-controller",
 "sourceLocation": {
   "file": "vpa_event_logger.go",
   "line": "23"
 },
 "receiveTimestamp": "2026-01-22T19:26:27.766941073Z"
}

יישום המלצה לגבי פינוי

אפשר להחיל המלצה על יומן ההוצאה מהזיכרון במצב VPA Auto (הוצא משימוש) וRecreate. סוג היומן הזה אפשרי גם במצב VPA InPlaceOrRecreate אם In-place resize נכשל.

השדה jsonPayload של יומן ההחלטות הזה כולל את השדות הבאים:

שדה תיאור
vpaName שם העוזר האישי הווירטואלי.
vpaNamespace מרחב השמות של ה-VPA.
target עומס העבודה שה-VPA הזה מטרגט.
  • ‫name: שם עומס העבודה.
  • ‫kind: סוג עומס העבודה.
  • ‫apiVersion: גרסת ה-API של עומס העבודה.
operation הפעולה שמתבצעת. הערך הוא אחד מהבאים:
  • UPDATE_RECOMMENDATION
  • EVICT_POD
  • APPLY_RECOMMENDATION_IN_PLACE
  • APPLY_RECOMMENDATION_ON_EVICTION
state המצב של הפעולה. הערך הוא אחד מהערכים הבאים:
  • SUCCEEDED
  • SKIPPED
  • FAILED
reason

הסיבה מסבירה למה הפעולה נכשלה או למה המערכת דילגה עליה.

במקרה השימוש של פעולה APPLY_RECOMMENDATION_IN_PLACE ופעולה APPLY_RECOMMENDATION_ON_EVICTION, מוסבר שההמלצה שיושמה עשויה להיות שונה מההמלצה הגולמית בפעולה UPDATE_RECOMMENDATION בגלל שינויים שבוצעו (כמו הגבלת הוצאות או יחס משאבים של טייס אוטומטי).

pod שם ה-Pod.
appliedResources המשאבים שמוגדרים ב-Pod.
  • ‫containerName: השם של הקונטיינר.
  • ‫requests: בקשות המשאבים שהוחלו.
    • ‫cpu: יחידת ה-CPU שהוקצתה.
    • ‫memory: הזיכרון שהוקצה.
  • ‫limits: מגבלות המשאבים שהוחלו.
    • ‫cpu: יחידת ה-CPU שהוקצתה.
    • ‫memory: הזיכרון שהוקצה.
confidence רמת הוודאות של ההמלצה. השדה הזה קיים כשהסטטוס הוא succeeded. הערך הוא אחד מהערכים הבאים:
  • ‫LOW: המערכת של VPA עיבדה פחות מ-10 דגימות של מדדים.
  • ‫HIGH: ה-VPA עיבד 10 דגימות של מדדים או יותר.

דוגמה להחלת המלצה ביומן הפינוי:

{
 "insertId": "366tcmgdkq94eppg",
 "jsonPayload": {
   "appliedResources": [
     {
       "containerName": "my-container",
       "requests": {
         "memory": "15Mi",
         "cpu": "15m"
       }
     }
   ],
   "vpaName": "my-vpa",
   "vpaNamespace": "default",
   "instance": {
     "zone": "us-central1-c",
     "vm_name": "my-unique-vm-identifier"
   },
   "pod": "my-deployment-856ff7966-%",
   "state": "SUCCEEDED",
   "target": {
     "name": "my-deployment",
     "kind": "Deployment",
     "apiVersion": "apps/v1"
   },
   "operation": "APPLY_RECOMMENDATION_ON_EVICTION"
 },
 "resource": {
   "type": "k8s_control_plane_component",
   "labels": {
     "location": "us-central1-c",
     "component_location": "us-central1-c",
     "cluster_name": "my-cluster",
     "component_name": "vpa-controller",
     "project_id": "my-project"
   }
 },
 "timestamp": "2026-01-22T19:26:25.344313199Z",
 "severity": "INFO",
 "labels": {
   "compute.googleapis.com/resource_name": "my-unique-vm-identifier"
 },
 "logName": "projects/my-project/logs/container.googleapis.com%2Fvpa-controller",
 "sourceLocation": {
   "file": "vpa_event_logger.go",
   "line": "23"
 },
 "receiveTimestamp": "2026-01-22T19:26:32.744122156Z"
}

יישום ההמלצה במקום

יומן המיקומים של ההמלצות שיושמו זמין במצב VPA InPlaceOrRecreate.

השדה jsonPayload ביומן ההחלטות הזה כולל את השדות הבאים:

שדה תיאור
vpaName שם העוזר האישי הווירטואלי.
vpaNamespace מרחב השמות של ה-VPA.
target עומס העבודה שה-VPA הזה מטרגט.
  • ‫name: שם עומס העבודה.
  • ‫kind: סוג עומס העבודה.
  • ‫apiVersion: גרסת ה-API של עומס העבודה.
operation הפעולה שמתבצעת. הערך הוא אחד מהבאים:
  • UPDATE_RECOMMENDATION
  • EVICT_POD
  • APPLY_RECOMMENDATION_IN_PLACE
  • APPLY_RECOMMENDATION_ON_EVICTION
state המצב של הפעולה. הערך הוא אחד מהבאים:
  • SUCCEEDED
  • SKIPPED
  • FAILED
reason

הסיבה מסבירה למה הפעולה נכשלה או למה המערכת דילגה עליה.

במקרה של הצלחה בפעולות APPLY_RECOMMENDATION_IN_PLACE ו-APPLY_RECOMMENDATION_ON_EVICTION, הסיבה מבהירה שההמלצה שיושמה יכולה להיות שונה מההמלצה הגולמית בפעולה UPDATE_RECOMMENDATION בגלל שינויים שבוצעו (כמו מכסת משאבים או יחס משאבים של טייס אוטומטי).

pod השם של ה-Pod.
appliedResources המשאבים שמוגדרים ב-Pod.
  • ‫containerName: השם של הקונטיינר.
  • ‫requests: בקשות המשאבים שהוחלו.
    • ‫cpu: יחידת ה-CPU שהוקצתה.
    • ‫memory: הזיכרון שהוקצה.
  • ‫limits: מגבלות המשאבים שהוחלו.
    • ‫cpu: יחידת ה-CPU שהוקצתה.
    • ‫memory: הזיכרון שהוקצה.
confidence רמת הוודאות של ההמלצה. השדה הזה קיים כשהסטטוס הוא succeeded. הערך הוא אחד מהערכים הבאים:
  • ‫LOW: המערכת של VPA עיבדה פחות מ-10 דגימות של מדדים.
  • ‫HIGH: ה-VPA עיבד 10 דגימות של מדדים או יותר.

דוגמה ליומן של יישום המלצה במקום:

{
 "insertId": "suzfuepgyiwap7hb",
 "jsonPayload": {
   "pod": "my-deployment-cdc7fd7b4-grxlk",
   "vpaNamespace": "default",
   "state": "SUCCEEDED",
   "target": {
     "name": "my-deployment",
     "apiVersion": "apps/v1",
     "kind": "Deployment"
   },
   "operation": "APPLY_RECOMMENDATION_IN_PLACE",
   "appliedResources": [
     {
       "containerName": "my-container",
       "limits": {
         "cpu": "10m",
         "memory": "10Mi"
       },
       "requests": {
         "cpu": "5m",
         "memory": "5Mi"
       }
     }
   ],
   "instance": {
     "zone": "us-central1-c",
     "vm_name": "my-unique-vm-identifier"
   },
   "vpaName": "my-vpa"
 },
 "resource": {
   "type": "k8s_control_plane_component",
   "labels": {
     "project_id": "my-project",
     "component_location": "us-central1-c",
     "cluster_name": "my-cluster",
     "location": "us-central1-c",
     "component_name": "vpa-controller"
   }
 },
 "timestamp": "2026-01-22T19:26:25.214095375Z",
 "severity": "INFO",
 "labels": {
   "compute.googleapis.com/resource_name": "my-unique-vm-identifier"
 },
 "logName": "projects/my-project/logs/container.googleapis.com%2Fvpa-controller",
 "sourceLocation": {
   "file": "vpa_event_logger.go",
   "line": "23"
 },
 "receiveTimestamp": "2026-01-22T19:26:27.766941073Z"
}

פתרון בעיות

בקטע הזה מוסבר איך לפתור בעיות שקשורות לאירועים של Vertical Pod Autoscaler.

אין אירועים

אם לא מופיעים אירועים של החלטות לגבי שינוי גודל אנכי של Pod, צריך לוודא שביצעתם את כל הפעולות הבאות:

  • הפעלתם את Cloud Logging באשכול.
  • הפעלת את היומנים KCP_VPA עבור האשכול.
  • פרסתם לפחות אובייקט vpa אחד שהוגדר בצורה נכונה באשכול.

כדי להציג את הגדרות האובייקט של vpa, מריצים את הפקודה הבאה:

kubectl describe vpa $VPA_NAME

אם עדיין לא מופיעים יומנים של KCP_VPA, פנו Cloud de Confiance לתמיכה של.

המאמרים הבאים