ניהול תגים של משאבים

במדריך הזה מוסבר איך ליצור ולנהל תגים למשאבי Compute Engine. תג הוא צמד מפתח/ערך שאפשר לצרף לGoogle Cloud משאב. התגים משמשים למגוון מטרות, כולל:

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

אחרי שיוצרים תג ומעניקים גישה מתאימה לתג ולמשאב, אפשר לצרף את התג כצמד מפתח/ערך. אפשר לצרף רק ערך אחד לכל משאב של מפתח נתון. לדוגמה, אם מצמידים את התג environment: development, אי אפשר להצמיד את התגים environment: production או environment: test. לכל משאב אפשר לצרף עד 50 צמדי מפתח/ערך.

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

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

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

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

    המסוף

    כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים Google Cloud ולממשקי ה-API, לא צריך להגדיר אימות.

    gcloud

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

      gcloud init

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

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

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

      התקינו את ה-CLI של Google Cloud.

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

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

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

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

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

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

ההרשאות הנדרשות

כדי ליצור ולנהל תגים למשאבי Compute Engine, נדרשות ההרשאות הבאות:

  • הצגת התגים:
    • resourcemanager.tagKeys.get
    • resourcemanager.tagKeys.list
    • resourcemanager.tagValues.list
    • resourcemanager.tagValues.get
    • compute.instances.listTagBindings
    • compute.instances.listEffectiveTags
    • resourcemanager.projects.get
  • יוצרים תגים:
    • resourcemanager.tagKeys.create
    • resourcemanager.tagValues.create
    • resourcemanager.tagKeys.setIamPolicy
    • resourcemanager.tagValues.setIamPolicy
  • ניהול תגים:
    • resourcemanager.tagKeys.update
    • resourcemanager.tagValues.update
    • resourcemanager.tagKeys.delete
    • resourcemanager.tagValues.delete
    • resourcemanager.tagKeys.getIamPolicy
    • resourcemanager.tagValues.getIamPolicy
    • resourcemanager.tagKeys.setIamPolicy
    • resourcemanager.tagValues.setIamPolicy
  • כדי להוסיף או להסיר תגים למופע של מכונת חישוב:
    • compute.instances.createTagBinding
    • compute.instances.deleteTagBinding
    • resourcemanager.tagValueBindings.create
    • resourcemanager.tagValueBindings.delete

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

משאבים נתמכים

‫Compute Engine תומך בתיוג של המשאבים הבאים:

  • רק אחרי יצירת המשאב:

    • קבוצות של מופעי מכונה מנוהלים (MIG)
    • בדיקות תקינות
  • גם במהלך יצירת המשאב וגם אחרי היצירה:

    • מכונות וירטואליות (VM)
    • דיסקים
    • תמונות
    • תמונות מצב
    • רשתות VPC
    • רשתות משנה של VPC
    • כללי חומת אש ב-VPC
    • מסלולי VPC
    • Cloud Routers

הוספת תגים למשאב

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

המסוף

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

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. בוחרים פרויקט ולוחצים על המשך.

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

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

    1. לוחצים על Edit.
    2. בקטע מידע בסיסי, לוחצים על ניהול תגים ומוסיפים את התגים הרצויים למופע.
    3. לוחצים על Save.

gcloud

במאמר צירוף תגים למשאבים שבמסמכי Resource Manager מוסבר איך להשתמש בדגלים האלה.

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

gcloud resource-manager tags bindings create \
    --location=LOCATION_NAME \
    --tag-value=tagValues/TAGVALUE_ID \
    --parent=FULL_RESOURCE_NAME

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

  • ‫LOCATION_NAME: האזור שבו נמצאת המכונה. למשאב גלובלי, משמיטים את הדגל --location.
  • ‫TAGVALUE_ID: המזהה המספרי של ערך התג
  • ‫FULL_RESOURCE_NAME: שם המשאב המלא של משאב היעד. בדוגמה הזו, שם המשאב המלא של מכונת ה-VM:

    //compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/INSTANCE_ID
    

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

REST

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

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

POST https://LOCATION_NAME-cloudresourcemanager.googleapis.com/v3/tagBindings

גוף הבקשה יכול להיות אחת משתי האפשרויות הבאות:

{
  "parent": "FULL_RESOURCE_NAME",
  "tagValue": "tagValue/TAGVALUE_ID"
}
{
  "parent": "FULL_RESOURCE_NAME",
  "tagValueNamespacedName": TAGVALUE_NAMESPACED_NAME
}

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

  • ‫LOCATION_NAME: המיקום של המשאב באזור או באזור משנה. למכונת VM, מציינים את האזור. למשאב גלובלי, משמיטים את הפרמטר LOCATION_NAME-
  • ‫FULL_RESOURCE_NAME: שם המשאב המלא של משאב היעד. בדוגמה הזו, שם המשאב המלא של מכונת ה-VM:

    //compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/INSTANCE_ID
    

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

  • ‫TAGVALUE_ID: המזהה הקבוע של ערך התג שמצורף. לדוגמה: 4567890123

  • ‫TAGVALUE_NAMESPACED_NAME: שם מרחב השמות של ערך התג שמצורף, בפורמט: parentNamespace/tagKeyShortName/tagValueShortName

הוספת תגים למשאב במהלך יצירת המשאב

בתרחישים מסוימים, יכול להיות שתרצו לתייג משאבים במהלך יצירת המשאבים, ולא אחרי שהמשאב נוצר.

המסוף

השלבים המדויקים עשויים להשתנות בהתאם לסוג המשאב. השלבים הבאים מיועדים למכונה וירטואלית:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. בוחרים פרויקט ולוחצים על המשך.

  3. לוחצים על Create instance. הדף Create an instance מופיע ובו החלונית Machine configuration.

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

    1. מרחיבים את הקטע ניהול תגים ותוויות.
    2. לוחצים על הוספת תגים.
    3. בחלונית Tags (תגים) שנפתחת, פועלים לפי ההוראות כדי להוסיף תג למופע.
    4. לוחצים על Save.
  5. מציינים אפשרויות הגדרה אחרות למופע. מידע נוסף זמין במאמר אפשרויות הגדרה במהלך יצירת מכונה.

  6. כדי ליצור את המכונה הווירטואלית ולהפעיל אותה, לוחצים על Create.

gcloud

כדי לצרף תג למשאב במהלך יצירת המשאב, מוסיפים את הדגל --resource-manager-tags לפקודה המתאימה create. לדוגמה, כדי לצרף תג למכונה וירטואלית, משתמשים בפקודה הבאה:

  gcloud compute instances create INSTANCE_NAME \
      --zone=ZONE \
      --resource-manager-tags=tagKeys/TAGKEY_ID=tagValues/TAGVALUE_ID

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

  • ‫INSTANCE_NAME: השם של מופע ה-VM
  • ‫ZONE: האזור שמכיל את המופע של המכונה הווירטואלית
  • ‫TAGKEY_ID: המזהה המספרי של מפתח התג
  • ‫TAGVALUE_ID: המזהה המספרי הקבוע של ערך התג שמצורף – לדוגמה: 4567890123

כדי לציין כמה תגים, מפרידים ביניהם באמצעות פסיק, למשל, TAGKEY1=TAGVALUE1,TAGKEY2=TAGVALUE2.

REST

שולחים בקשת POST לכתובת ה-URL הבאה:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances

כוללים את תוכן בקשת ה-JSON הבא:

{
  "name": INSTANCE_NAME,
  "params": {
    "resourceManagerTags": {
      "tagKeys/TAGKEY_ID": "tagValues/TAGVALUE_ID",
    },
  }
  // other fields omitted
}

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

  • ‫INSTANCE_NAME: השם של מופע ה-VM
  • ‫TAGKEY_ID: המזהה המספרי של מפתח התג
  • ‫TAGVALUE_ID: המזהה המספרי הקבוע של ערך התג שמצורף – לדוגמה: 4567890123

שימוש בתגים עם כללים לחומת אש

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

לדוגמה, נניח שיש לכם מופע חישוב שמריץ שרת אינטרנט, ויצרתם אפליקציית אינטרנט חדשה שצריכה להיות נגישה לציבור ביציאת HTTP רגילה (80). אפשר להשתמש בתג רשת או בתג מאובטח כדי להטמיע כלל חומת אש שמעניק גישת HTTP רק למופע החישוב שבו פועל שרת האינטרנט.

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

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

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

ניתוק תג ממשאב

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

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

המסוף

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

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. בוחרים פרויקט ולוחצים על המשך.

  3. בעמודה Name (שם), לוחצים על שם המכונה שרוצים להסיר ממנה תגים.

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

    1. לוחצים על Edit.
    2. בקטע Basic information (מידע בסיסי) של תגים לניהול משאבים, לוחצים על Manage Tags (ניהול תגים). מסירים את התגים שרוצים מהמופע. אפשר להסיר רק תגים שנוספו ישירות למופע.
    3. בקטע Networking (רשת), מסירים את התג מהרשימה Network tags (תגי רשת).
    4. לוחצים על Save.

gcloud

כדי לנתק תג ממכונת Compute, משתמשים בפקודה resource-manager tags bindings delete:

gcloud resource-manager tags bindings delete \
    --location=LOCATION_NAME \
    --tag-value=tagValues/TAGVALUE_ID \
    --parent=FULL_RESOURCE_NAME

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

  • ‫LOCATION_NAME: האזור שבו נמצאת המכונה. למשאב גלובלי, משמיטים את הדגל --location=LOCATION_NAME \
  • ‫TAGVALUE_ID: המזהה המספרי של ערך התג
  • ‫FULL_RESOURCE_NAME: שם המשאב המלא של משאב היעד. בדוגמה הזו, שם המשאב המלא של המופע:

    //compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/INSTANCE_ID
    

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

    • ‫PROJECT_NUMBER: המזהה המספרי של הפרויקט שמכיל את משאב היעד
    • ‫ZONE: האזור שבו נמצאת המכונה
    • ‫INSTANCE_ID: מזהה המופע

כדי לעדכן או להחליף קישור תגים קיים בקישור אחר, צריך לבטל את הקישור הישן ולצרף את הקישור החדש.

REST

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

DELETE https://LOCATION_NAME-cloudresourcemanager.googleapis.com/v3/{name=TAGBINDINGS_NAME}

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

  • ‫LOCATION_NAME: המיקום של המשאב באזור או באזור משנה. לדוגמה, מציינים את האזור של מכונה. למשאב גלובלי, משמיטים את הפרמטר LOCATION_NAME-
  • ‫TAGBINDINGS_NAME: המזהה הקבוע של TagBinding. לדוגמה: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F1234567890/tagValues/567890123456

איך רואים את התגים שמצורפים למשאב

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

המסוף

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

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. בוחרים פרויקט ולוחצים על המשך.

  3. בעמודה Name (שם), לוחצים על השם של המופע שרוצים לראות את התגים שלו.

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

gcloud

כדי לקבל רשימה של תגי tag bindings שמצורפים ישירות למשאב, משתמשים בפקודה gcloud resource-manager tags bindings list. אם מוסיפים את הדגל --effective, הפונקציה מחזירה גם רשימה של תגים שהמשאב הזה ירש מההורה שלו. לדוגמה:

gcloud resource-manager tags bindings list \
    --location=LOCATION_NAME \
    --parent=FULL_RESOURCE_NAME

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

  • ‫LOCATION_NAME: האזור שבו נמצאת המכונה. למשאב גלובלי, משמיטים את הדגל --location=LOCATION_NAME \.
  • ‫FULL_RESOURCE_NAME: שם המשאב המלא של משאב היעד. בדוגמה הזו, שם המשאב המלא של המופע:

      //compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/INSTANCE_ID
      

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

    • ‫PROJECT_NUMBER: המזהה המספרי של הפרויקט שמכיל את משאב היעד
    • ‫ZONE: האזור שבו נמצאת המכונה
    • ‫INSTANCE_ID: מזהה המופע

אם מוסיפים את הדגל --effective לפקודה tags bindings list, מקבלים גם רשימה של כל התגים שהמשאב הזה קיבל בירושה.

הפלט אמור להיראות כך:

namespacedTagKey: 961309089256/environment
namespacedTagValue: 961309089256/environment/production
tagKey: tagKeys/417628178507
tagValue: tagValues/247197504380
inherited: true

אם כל התגים שמוערכים במשאב מצורפים ישירות, השדה inherited הוא false ומושמט.

REST

כדי להציג רשימה של צירופי תגים שמצורפים למשאב אזורי, כמו מכונות של Compute Engine, משתמשים בשיטה tagBindings.list עם נקודת הקצה האזורית שבה נמצא המשאב. לדוגמה:

GET https://LOCATION_NAME-cloudresourcemanager.googleapis.com/v3/tagBindings

{
    "parent": "FULL_RESOURCE_NAME"
}

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

  • ‫LOCATION_NAME: המיקום של המשאב באזור או באזור משנה. לדוגמה, מציינים את האזור של מכונה. למשאב גלובלי, משמיטים את הפרמטר LOCATION_NAME-
  • ‫FULL_RESOURCE_NAME: שם המשאב המלא של משאב היעד. בדוגמה הזו, שם המשאב המלא של המופע:

      //compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/INSTANCE_ID
      

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

    • ‫PROJECT_NUMBER: המזהה המספרי של הפרויקט שמכיל את משאב היעד
    • ‫ZONE: האזור שבו נמצאת המכונה
    • ‫INSTANCE_ID: מזהה המופע

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