הגדרת המלצות ל-VM במצב המתנה

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

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

  • אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות. אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Cloud de Confiance by S3NS . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:

    צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:

    gcloud

    1. התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:

      gcloud init
  • הגדרת אזור ותחום כברירת מחדל
  • REST

    כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.

      התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.

    מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .

תמחור

ההמלצות שניתנות להתאמה אישית זמינות ללא תשלום. יישום ההמלצות לצמצום השימוש במשאבים יכול להוביל לחיסכון בעלויות.

הגדרת ההמלצות

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

  1. מקבלים את ההגדרה הנוכחית כדי לקבל את קובץ ה-JSON של ההגדרה.
  2. עורכים את קובץ ההגדרות בפורמט JSON.
  3. מעלים את קובץ ההגדרות החדש כדי להחיל את השינויים.

אחזור ההגדרה הנוכחית

אתם יכולים לקבל את ההגדרה הנוכחית של ההמלצות למכונות וירטואליות במצב ожидания בפרויקט שלכם באמצעות Google Cloud CLI או REST.

gcloud

כדי לקבל את פרמטרי ההגדרה הנוכחיים, משתמשים בפקודה gcloud recommender recommender-config describe ומזינים google.compute.instance.IdleResourceRecommender בתור מזהה המלצות:

gcloud recommender recommender-config describe google.compute.instance.IdleResourceRecommender \
  --project=PROJECT_ID \
  --location=ZONE

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

  • PROJECT_ID: מזהה הפרויקט
  • ZONE: האזור שרוצים לקבל את ההגדרות הנוכחיות שלו

לדוגמה:

gcloud recommender recommender-config describe google.compute.instance.IdleResourceRecommender \
  --project=my-project \
  --location=us-central1-c

הפקודה מחזירה את ההגדרה של הכלי להמלצות, כולל שדה המשנה params.observation_period שאפשר לשנות.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1209600s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2021-02-03T04:41:15.330351Z"
}

REST

כדי לאחזר את ההגדרה הנוכחית, משתמשים בשיטה recommenders.getConfig ומציינים את google.compute.instance.IdleResourceRecommender כמזהה של שירות ההמלצות:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

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

  • PROJECT_ID: מזהה הפרויקט שרוצים לאחזר את הגדרות שירות ההמלצות.
  • ZONE: האזור שמכיל את הפרויקט.

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

PROJECT_ID=PROJECT_ID
ZONE=ZONE
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: ${PROJECT_ID}" \
https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

הפקודה מחזירה את ההגדרות של הכלי להמלצות, כולל שדה המשנה שאפשר לשנות: params.observation_period.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1209600s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2021-02-03T04:41:15.330351Z"
}

עדכון ההגדרה של פרויקט

כדי לעדכן את ההגדרה של ההמלצות למכונות וירטואליות לא פעילות, משנים את הערך של observation_period ומעלים את ההגדרה החדשה של הפרויקט.

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

  • כדי להגדיר תקופת תצפית של יום אחד, משתמשים בערך "86400s".
  • לתקופת תצפית של 14 ימים, משתמשים בערך "1209600s".

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

gcloud

כדי לעדכן את פרמטרי ההגדרה, משתמשים בפקודה gcloud recommender recommender-config update ומזינים google.compute.instance.IdleResourceRecommender כמזהה המערכת להמלצות:

gcloud recommender recommender-config update google.compute.instance.IdleResourceRecommender\
  --project=PROJECT_ID \
  --location=ZONE \
  --config-file=CONFIG_FILE_PATH \
  --etag=ETAG

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

  • PROJECT_ID: מזהה הפרויקט
  • ZONE: האזור שרוצים לקבל את ההגדרות הנוכחיות שלו
  • CONFIG_FILE_PATH: הנתיב לקובץ ה-JSON עם ההגדרה הנוכחית
  • ETAG: ערך ה-etag של ההגדרה הנוכחית

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

{
  "params": {
    "observation_period": "432000s"
  }
}

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

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "432000s"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2021-02-03T05:00:05Z"
}

REST

כדי לעדכן את ההגדרה, משתמשים בשיטה recommenders.updateConfig ומציינים את google.compute.instance.IdleResourceRecommender כמזהה של שירות המלצות:

PATCH https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1209600s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\""
}

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

  • PROJECT_ID: מזהה הפרויקט שרוצים לשנות את ההגדרות של הכלי להמלצות.
  • ZONE: האזור שמכיל את הפרויקט.

שומרים את גוף הבקשה בקובץ, למשל config.json. אחר כך תוכלו להפנות לקובץ כשמעדכנים את הגדרות הכלי להמלצות בפרויקט, באמצעות פקודה שדומה לפקודה הבאה:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "x-goog-user-project: ${PROJECT_ID}" \
-d @config.json \
https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

הפקודה POST מחזירה גוף תגובה שדומה לזה שמוצג בהמשך, עם ההגדרה החדשה והפרמטרים ששיניתם.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "432000s"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2021-02-03T05:00:05Z"
}

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