ניהול יצירת הזמנות משותפות

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

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

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

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

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

    המסוף

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

    gcloud

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

      gcloud init

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

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

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

כדי לקבל את ההרשאות שדרושות כדי לאפשר או להגביל פרויקטים ליצירת הזמנות משותפות, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Organization Policy Administrator (אדמין של מדיניות הארגון) (roles/orgpolicy.policyAdmin) בארגון. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

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

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

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

  • כדי לערוך את מדיניות הארגון: orgpolicy.policy.set בארגון
  • כדי לראות את כללי מדיניות הארגון: orgpolicy.policy.get בארגון

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

איך מאפשרים או מגבילים יצירה של הזמנות משותפות בפרויקטים

כדי לאפשר או להגביל יצירה של מקומות שמורים משותפים בפרויקט, צריך לשנות את רשימת ההיתרים באילוץ מדיניות הארגון פרויקטים של בעלים של מקומות שמורים משותפים (compute.sharedReservationsOwnerProjects).

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

הצגת המגבלה של מדיניות הארגון לגבי הזמנות משותפות

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

המסוף

  1. נכנסים לדף Organization policies במסוף Google Cloud .

    אל מדיניות הארגון

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

  3. בשדה Filter, מזינים constraints/compute.sharedReservationsOwnerProjects.

  4. בעמודה Name (שם), לוחצים על Shared reservations owner projects (פרויקטים של בעלי הזמנות משותפות). יופיע הדף Policy details.

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

gcloud

כדי לראות אילו פרויקטים מאפשרים ליצור ולשנות הזמנות משותפות בהתאם למגבלת compute.sharedReservationsOwnerProjects:

  1. כדי להוריד את המדיניות של הארגון כקובץ בשם policy.yaml, משתמשים בפקודה gcloud resource-manager org-policies describe:

    gcloud resource-manager org-policies describe compute.sharedReservationsOwnerProjects \
        --organization=ORGANIZATION_ID > policy.yaml
    

    מחליפים את ORGANIZATION_ID במזהה הארגון.

  2. פותחים את הקובץ policy.yaml בכלי לעריכת טקסט לבחירתכם.

  3. צופים באילוץ compute.sharedReservationsOwnerProjects. הפרויקטים שבהם אפשר ליצור ולשנות הזמנות משותפות מפורטים בשדה allowedValues, כמו בדוגמה הבאה:

    ...
    constraint: constraints/compute.sharedReservationsOwnerProjects
    listPolicy:
      allowedValues:
      - projects/EXAMPLE_PROJECT_NUMBER1
      - projects/EXAMPLE_PROJECT_NUMBER2
      - projects/EXAMPLE_PROJECT_NUMBER3
      ...
    ...
    
  4. אופציונלי: כדי למחוק את הקובץ policy.yaml, מבצעים אחת מהפעולות הבאות:

    • אם אתם משתמשים בטרמינל של Linux או macOS, הריצו את הפקודה הבאה:

      rm policy.yaml
      
    • אם אתם משתמשים בטרמינל של Windows, מריצים את הפקודה הבאה:

      del policy.yaml
      

עריכת האילוץ של מדיניות הארגון בנושא הזמנות משותפות

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

המסוף

  1. נכנסים לדף Organization policies במסוף Google Cloud .

    אל מדיניות הארגון

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

  3. בשדה Filter, מזינים constraints/compute.sharedReservationsOwnerProjects.

  4. בעמודה Name, לוחצים על Shared reservations owner projects. מופיע הדף Policy details.

  5. לוחצים על ניהול המדיניות. הדף Policy details יופיע.

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

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

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

  7. לוחצים על הוספת כלל.

  8. ברשימה ערכי מדיניות, בוחרים באפשרות בהתאמה אישית.

  9. ברשימה Policy type (סוג המדיניות), בוחרים באחת מהאפשרויות הבאות:

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

    • כדי למנוע מפרויקט אחד או יותר ליצור או לשנות הזמנות משותפות, בוחרים באפשרות Deny (דחייה).

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

  11. כדי להחיל את השינויים האלה, לוחצים על הגדרת מדיניות. מופיע הדף Organization policies.

gcloud

כדי לערוך את הפרויקטים שהאילוץ compute.sharedReservationsOwnerProjects מאפשר ליצור ולשנות בהם הזמנות משותפות, משתמשים באחת מהשיטות הבאות:

  • כדי להעניק הרשאה לפרויקט יחיד ליצור ולשנות הזמנות משותפות, משתמשים בפקודה gcloud resource-manager org-policies allow. אפשר לחזור על הפקודה הזו לכל פרויקט שרוצים להעניק לו את ההרשאה הזו.

    gcloud resource-manager org-policies allow compute.sharedReservationsOwnerProjects projects/PROJECT_NUMBER \
        --organization=ORGANIZATION_ID
    

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

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

    1. כדי להוריד את המדיניות של הארגון כקובץ בשם policy.yaml, משתמשים בפקודה gcloud resource-manager org-policies describe:

      gcloud resource-manager org-policies describe compute.sharedReservationsOwnerProjects \
          --organization=ORGANIZATION_ID > policy.yaml
      
    2. פותחים את הקובץ policy.yaml בכלי לעריכת טקסט לבחירתכם.

    3. משנים את השדה allowedValues כדי להציג את כל הפרויקטים שיכולים ליצור ולשנות הזמנות משותפות.

      • לכל פרויקט שרוצים לתת לו הרשאה, מוסיפים את מספר הפרויקט בשורה חדשה בשדה allowedValues.

      • לכל פרויקט שרוצים לבטל את ההרשאה ליצור ולשנות הזמנות משותפות, מסירים את מספר הפרויקט מהשדה allowedValues.

      קובץ policy.yaml אמור להיראות כמו בדוגמה הבאה:

      ...
      constraint: constraints/compute.sharedReservationsOwnerProjects
      listPolicy:
        allowedValues:
        - projects/EXAMPLE_PROJECT_NUMBER1
        - projects/EXAMPLE_PROJECT_NUMBER2
        - projects/EXAMPLE_PROJECT_NUMBER3
        ...
      ...
      
    4. שומרים את קובץ ה-policy.yaml וסוגרים את הכלי לעריכת טקסט.

    5. כדי לעדכן את המדיניות של הארגון, משתמשים בפקודה gcloud resource-manager org-policies set-policy:

      gcloud resource-manager org-policies set-policy \
          --organization=ORGANIZATION_ID policy.yaml
      
    6. אופציונלי: כדי למחוק את הקובץ policy.yaml, מבצעים אחת מהפעולות הבאות:

      • אם משתמשים בטרמינל של Linux או macOS, מריצים את הפקודה הבאה:

        rm policy.yaml
        
      • אם משתמשים בטרמינל של Windows, מריצים את הפקודה הבאה:

        del policy.yaml
        

השינויים ייכנסו לתוקף תוך 15 דקות לכל היותר.

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