אופטימיזציה של השימוש ב-GKE בעזרת תובנות והמלצות

עם Google Kubernetes Engine‏ (GKE), אתם יכולים לקבל הנחיות מפורטות לאופטימיזציה של האשכולות.

‫GKE עוקב אחרי האשכולות שלכם, ואם יש אופטימיזציות פוטנציאליות, הוא מספק הנחיות באמצעות Recommender, שירות של Cloud de Confiance by S3NS שמפיק תובנות והמלצות לשימוש במשאבים ב- Cloud de Confiance by S3NS. ב-GKE, הכלי Recommenders מספק שני סוגי מידע:

  • תובנה מסבירה שמערכת GKE זיהתה שאפשר לבצע אופטימיזציה של השימוש באשכול.
  • המלצה מסבירה איך לשפר את השימוש באשכול.

GKE מספק את המידע הזה במסוף, ואפשר גם למצוא אותו באמצעות Google Cloud CLI ו-Recommender API. Cloud de Confiance ‫GKE מספקת כלי המלצות לנושאים הבאים:

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

לפני שמתחילים, חשוב לוודא שביצעתם את הפעולות הבאות:

  • מפעילים את ממשק Google Kubernetes Engine API.
  • הפעלת Google Kubernetes Engine API
  • כדי להשתמש ב-CLI של Google Cloud למשימה הזו, צריך להתקין ואז להפעיל את gcloud CLI. אם התקנתם בעבר את ה-CLI של gcloud, מריצים את הפקודה gcloud components update כדי לקבל את הגרסה העדכנית. יכול להיות שגרסאות קודמות של ה-CLI של gcloud לא יתמכו בהרצת הפקודות שמופיעות במסמך הזה.

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

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

צפייה בתובנות ובהמלצות

אפשר לראות את התובנות וההמלצות באמצעות Google Cloud CLI, במסוףCloud de Confiance או באמצעות Recommender API.

המסוף

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

אפשר גם לראות רשימה של המלצות לכל אשכול.

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

  1. נכנסים לדף Google Kubernetes Engine במסוף Cloud de Confiance :

    מעבר אל Google Kubernetes Engine

  2. כדי לראות את מספר האשכולות שהושפעו מהמלצות ספציפיות, לוחצים על View recommendations (הצגת המלצות) מתחת לקטגוריה הרצויה – Health (תקינות), Upgrade (שדרוג) או Cost (עלות). בחלונית סרגל הצד שנפתחת, רשימת ההמלצות מציינת כמה קלאסטרים מושפעים מכל המלצה.

  3. כדי לראות מידע נוסף, כולל שמות האשכולות המושפעים, לוחצים על שם ההמלצה.

  4. כדי לראות פרטים נוספים על כל אשכול שהושפע, לוחצים שוב על ההמלצה.

כדי לראות המלצות לכל אשכול, מבצעים את השלבים הבאים:

  1. נכנסים לדף Google Kubernetes Engine במסוף Cloud de Confiance :

    מעבר אל Google Kubernetes Engine

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

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

gcloud

בדרך כלל, לכל תובנה יש המלצה תואמת. התובנות מאוחזרות באמצעות gcloud recommender insights וההמלצות מאוחזרות באמצעות gcloud recommender recommendations.

  1. כדי לראות את רשימת התובנות לגבי אשכולות באזור ספציפי (לאשכולות אזוריים) או באזור ספציפי (לאשכולות אזוריים):

    gcloud recommender insights list \
        --insight-type=google.container.DiagnosisInsight \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT \
        --filter="insightSubtype:SUBTYPE"
    

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

    • PROJECT_ID: Cloud de Confiance by S3NS מזהה הפרויקט שבו נמצאים האשכולות.
    • LOCATION: האזור או התחום המדויקים של האשכול. באזורים, צריך לציין את האזור המדויק (לדוגמה, us-central1-c). באזורים, צריך לציין את האזור המדויק (לדוגמה, us-central1).
    • FORMAT: שינוי פורמט הפלט ל-YAML. הדגל הזה הוא אופציונלי.
    • SUBTYPE: תת-סוג של תובנה, לדוגמה: DEPRECATION_K8S_1_23_CERTIFICATE. כך מגבילים את הפלט לתובנות מסוג משנה ספציפי. הדגל הזה הוא אופציונלי.

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

    gcloud recommender insights describe INSIGHT \
        --insight-type=google.container.DiagnosisInsight \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT
    

    מחליפים את INSIGHT בערך של מזהה התובנה, שמופיע בסוף כתובת ה-URL מהשדה name של התובנה.

    הפלט כולל פרטים נוספים על ההתנהגות ש-GKE זיהה באשכול.

  2. כדי לראות את רשימת ההמלצות עבור האשכולות באזור מסוים (עבור אשכולות אזוריים) או באזור מסוים (עבור אשכולות אזוריים):

    gcloud recommender recommendations list \
        --recommender=google.container.DiagnosisRecommender \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT \
        --filter="recommenderSubtype:SUBTYPE"
    

    מחליפים את SUBTYPE בסוג משנה של מערכת המלצות, למשל DEPRECATION_K8S_1_23_CERTIFICATE. כך אפשר להגביל את הפלט להמלצות של סוג משנה ספציפי. הדגל הזה הוא אופציונלי.

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

    gcloud recommender recommendations describe RECOMMENDATION_ID \
        --recommender=google.container.DiagnosisRecommender \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT
    

    מחליפים את RECOMMENDATION_ID בערך השמור של associatedRecommendations.recommendation מהפלט של הפקודה בשלב 1.

    הפלט כולל הנחיות לגבי פעולות שאולי תצטרכו לבצע כדי לייעל את השימוש באשכול ב-GKE.

API

לכל תובנה יש המלצה תואמת. התובנות מאוחזרות באמצעות REST Resource: projects.locations.insightTypes.insights וההמלצות מאוחזרות באמצעות REST Resource: projects.locations.recommenders.recommendations.

  1. כדי לראות את רשימת התובנות לגבי אשכולות באזור ספציפי (לאשכולות אזוריים) או באזור ספציפי (לאשכולות אזוריים):

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights?filter=insightSubtype%20%3D%20SUBTYPE
    

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

    • PROJECT_ID: Cloud de Confiance by S3NS מזהה הפרויקט שבו נמצאים האשכולות.
    • LOCATION: האזור או התחום המדויקים של האשכול. באזורים, צריך לציין את האזור המדויק (לדוגמה, us-central1-c). באזורים, צריך לציין את האזור המדויק (לדוגמה, us-central1).
    • SUBTYPE: תת-סוג של תובנה, לדוגמה: DEPRECATION_K8S_1_23_CERTIFICATE. כך מגבילים את הפלט לתובנות מסוג משנה ספציפי. הדגל הזה הוא אופציונלי.

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

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights/INSIGHT
    

    מחליפים את INSIGHT בערך של מזהה התובנה, שמופיע בסוף כתובת ה-URL מהשדה name של התובנה.

    גוף התגובה כולל פרטים על ההתנהגות ש-GKE זיהה באשכול.

  2. כדי לראות את רשימת ההמלצות עבור האשכולות באזור מסוים (עבור אשכולות אזוריים) או באזור מסוים (עבור אשכולות אזוריים):

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations?filter=recommenderSubtype%20%3D%20SUBTYPE
    

    מחליפים את SUBTYPE בסוג משנה של כלי המלצות, לדוגמה, DEPRECATION_K8S_1_23_CERTIFICATE. כך מגבילים את הפלט להמלצות של סוג משנה ספציפי. הדגל הזה הוא אופציונלי.

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

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations/RECOMMENDATION_ID
    

    מחליפים את RECOMMENDATION_ID בערך השמור של associatedRecommendations.recommendation מגוף התגובה בשלב 1.

    גוף התגובה כולל הנחיות לגבי פעולות שאולי תצטרכו לבצע כדי לבצע אופטימיזציה של השימוש באשכול ב-GKE.

ייצוא תובנות והמלצות ל-BigQuery

אתם יכולים להשתמש ב-BigQuery כדי לייצא ולנתח תובנות והמלצות לכל הארגון. מידע נוסף על ייצוא המלצות אל BigQuery

דחייה או שחזור של המלצות

אם אתם לא רוצים לראות יותר המלצה לגבי אשכול במסוףCloud de Confiance , אתם יכולים למחוק אותה. לדוגמה, אם בדקתם את ההמלצה והחלטתם לא ליישם אותה.

אם תסגרו את ההמלצה, היא לא תופיע יותר לאף משתמש שצופה באשכול במסוף. אחרי שסוגרים את ההמלצה, היא לא מופיעה שוב גם אם GKE מזהה את אותו דפוס התנהגות.

כשדוחים המלצה, היא מוסתרת רק מכל המשתמשים במסוף. ההמלצה תמשיך להיות זמינה באמצעות Google Cloud CLI ו-Recommender API.

סגירת המלצה

כדי לבטל את ההמלצה, פועלים לפי ההוראות שבקטע הצגת תובנות והמלצות במסוףCloud de Confiance כדי לפתוח את חלונית סרגל הצד, שבה מופיעים פרטים נוספים. בחלונית הזו, לוחצים על הלחצן סגירה.

דחיית המלצות באמצעות Google Cloud CLI

כדי לסגור המלצה באמצעות gcloud CLI, צריך לאתר את הערך etag של ההמלצה הפעילה ולסמן אותה כהמלצה שנסגרה.

  1. רשימת ההמלצות הפעילות: כדי למצוא את ההמלצה שרוצים לבטל, מציגים את רשימת ההמלצות הפעילות עבור האשכול. כדי להחריג המלצות שכבר נדחו, או שהצליחו או נכשלו, משתמשים בדגל --filter:

    gcloud recommender recommendations list \
        --recommender=RECOMMENDER_ID \
        --project=PROJECT_ID \
        --location=LOCATION \
        --filter="stateInfo.state=ACTIVE"
    

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

    • RECOMMENDER_ID: המזהה של שירות ההמלצות.
    • PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance by S3NS שבו נמצאים האשכולות.
    • LOCATION: האזור או התחום המדויקים של האשכול. במקרה של אשכולות אזוריים, צריך לספק את האזור המדויק (למשל us-central1-c). במקרה של אשכולות אזוריים, צריך לספק את האזור המדויק (למשל us-central1).
  2. מאחזרים את ה-etag: מוצאים את RECOMMENDATION_ID מהפלט הקודם ומתארים אותו כדי לאחזר את המצב הנוכחי שלו ואת etag:

    gcloud recommender recommendations describe RECOMMENDATION_ID \
        --recommender=RECOMMENDER_ID \
        --project=PROJECT_ID \
        --location=LOCATION
    

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

    • RECOMMENDATION_ID: המזהה של ההמלצה שרוצים לבטל.

    שימו לב לערך etag בפלט (לדוגמה, "a770e444b0088a35").

  3. סימון כהתראה שנסגרה: מריצים את הפקודה mark-dismissed. ‫Recommender API דורש את הערך המדויק של etag כדי למנוע מרוץ תהליכים.

    gcloud recommender recommendations mark-dismissed RECOMMENDATION_ID \
        --recommender=RECOMMENDER_ID \
        --project=PROJECT_ID \
        --location=LOCATION \
        --etag='"ETAG_VALUE"'
    

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

    • ETAG_VALUE: הערך etag שמוחזר מהפקודה describe.

שחזור המלצה שנסגרה

אפשר לשחזר המלצה שנמחקה על ידי ביצוע ההוראות לשחזור המלצה.

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