כברירת מחדל, אי אפשר ליצור או לשנות הזמנות משותפות בפרויקטים. במאמר הזה מוסבר איך לאפשר או להגביל את האפשרות של פרויקטים בארגון Google Cloud ליצור ולשנות הזמנות משותפות. הזמנות משותפות עוזרות לכם למקסם את השימוש בקיבולת השמורה בפרויקטים, וגם לנהל הזמנה אחת במקום הרבה.
במאמר שיטות מומלצות לשימוש בהזמנות משותפות תוכלו לקרוא מידע נוסף על השיטות המומלצות ליצירה ולשימוש בהזמנות משותפות.
לפני שמתחילים
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא התהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים ולממשקי ה-API של Google Cloud , לא צריך להגדיר אימות.
gcloud
-
התקינו את ה-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) מופעל בפרויקט או בארגון, בוחרים באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף Organization policies במסוף Google Cloud .
בתפריט לבחירת פרויקט, בוחרים את הפרויקט או הארגון שרוצים לראות את מדיניות הארגון שלהם.
בשדה Filter, מזינים
constraints/compute.sharedReservationsOwnerProjects.בעמודה Name (שם), לוחצים על Shared reservations owner projects (פרויקטים של בעלי הזמנות משותפות). יופיע הדף Policy details.
בקטע מדיניות בתוקף, בודקים אם מותר בפרויקט או בארגון ליצור ולשנות הזמנות משותפות.
gcloud
כדי לראות אילו פרויקטים מאפשרים ליצור ולשנות הזמנות משותפות בהתאם למגבלת compute.sharedReservationsOwnerProjects:
כדי להוריד את המדיניות של הארגון כקובץ בשם
policy.yaml, משתמשים בפקודהgcloud resource-manager org-policies describe:gcloud resource-manager org-policies describe compute.sharedReservationsOwnerProjects \ --organization=ORGANIZATION_ID > policy.yamlמחליפים את ORGANIZATION_ID במזהה הארגון.
פותחים את הקובץ
policy.yamlבכלי לעריכת טקסט לבחירתכם.צופים באילוץ
compute.sharedReservationsOwnerProjects. הפרויקטים שבהם אפשר ליצור ולשנות הזמנות משותפות מפורטים בשדהallowedValues, כמו בדוגמה הבאה:... constraint: constraints/compute.sharedReservationsOwnerProjects listPolicy: allowedValues: - projects/EXAMPLE_PROJECT_NUMBER1 - projects/EXAMPLE_PROJECT_NUMBER2 - projects/EXAMPLE_PROJECT_NUMBER3 ... ...אופציונלי: כדי למחוק את הקובץ
policy.yaml, מבצעים אחת מהפעולות הבאות:אם אתם משתמשים בטרמינל של Linux או macOS, הריצו את הפקודה הבאה:
rm policy.yamlאם אתם משתמשים בטרמינל של Windows, מריצים את הפקודה הבאה:
del policy.yaml
עריכת האילוץ של מדיניות הארגון בנושא הזמנות משותפות
כדי לערוך את הפרויקטים בארגון שבהם אפשר ליצור ולשנות הזמנות משותפות, בוחרים באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף Organization policies במסוף Google Cloud .
בכלי לבחירת פרויקטים, בוחרים את הארגון שבו רוצים לערוך את כללי מדיניות הארגון.
בשדה Filter, מזינים
constraints/compute.sharedReservationsOwnerProjects.בעמודה Name, לוחצים על Shared reservations owner projects. מופיע הדף Policy details.
לוחצים על ניהול המדיניות. הדף Policy details יופיע.
בוחרים באפשרות במקום המדיניות של המשאב הראשי. בקטע אכיפת מדיניות, בוחרים איך להחיל את המדיניות:
מיזוג עם ההורה: האפשרות הזו משלבת את המדיניות ברמת הפרויקט עם המדיניות ברמת הארגון. בפרויקטים שמותרים בכל אחת מהרמות אפשר ליצור מקומות שמורים משותפים.
החלפה: האפשרות הזו מבטלת את כל המדיניות שעברה בירושה מרמות גבוהות יותר. רק פרויקטים שמורשים באופן מפורש ברמה הזו יכולים ליצור הזמנות משותפות.
לוחצים על הוספת כלל.
ברשימה ערכי מדיניות, בוחרים באפשרות בהתאמה אישית.
ברשימה Policy type (סוג המדיניות), בוחרים באחת מהאפשרויות הבאות:
כדי לאשר לפרויקט אחד או יותר ליצור או לשנות הזמנות משותפות, בוחרים באפשרות Allow.
כדי למנוע מפרויקט אחד או יותר ליצור או לשנות הזמנות משותפות, בוחרים באפשרות Deny (דחייה).
בשדה ערך מותאם אישית, מזינים את מספר הפרויקט שרוצים להחיל עליו את הכלל הזה. לכל פרויקט נוסף שרוצים להחיל עליו את הכלל, לוחצים על הוספת ערך וחוזרים על השלב הזה.
כדי להחיל את השינויים האלה, לוחצים על הגדרת מדיניות. מופיע הדף 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מחליפים את מה שכתוב בשדות הבאים:
PROJECT_NUMBER: מספר הפרויקט.
ORGANIZATION_ID: מזהה הארגון.
כדי להעניק או לבטל את ההרשאות לכמה פרויקטים ליצור ולשנות הזמנות משותפות, צריך להחליף את האילוץ של מדיניות הארגון. כדי לעשות זאת, מבצעים את השלבים הבאים:
כדי להוריד את המדיניות של הארגון כקובץ בשם
policy.yaml, משתמשים בפקודהgcloud resource-manager org-policies describe:gcloud resource-manager org-policies describe compute.sharedReservationsOwnerProjects \ --organization=ORGANIZATION_ID > policy.yamlפותחים את הקובץ
policy.yamlבכלי לעריכת טקסט לבחירתכם.משנים את השדה
allowedValuesכדי להציג את כל הפרויקטים שיכולים ליצור ולשנות הזמנות משותפות.לכל פרויקט שרוצים לתת לו הרשאה, מוסיפים את מספר הפרויקט בשורה חדשה בשדה
allowedValues.לכל פרויקט שרוצים לבטל את ההרשאה ליצור ולשנות הזמנות משותפות, מסירים את מספר הפרויקט מהשדה
allowedValues.
קובץ
policy.yamlאמור להיראות כמו בדוגמה הבאה:... constraint: constraints/compute.sharedReservationsOwnerProjects listPolicy: allowedValues: - projects/EXAMPLE_PROJECT_NUMBER1 - projects/EXAMPLE_PROJECT_NUMBER2 - projects/EXAMPLE_PROJECT_NUMBER3 ... ...שומרים את קובץ ה-
policy.yamlוסוגרים את הכלי לעריכת טקסט.כדי לעדכן את המדיניות של הארגון, משתמשים בפקודה
gcloud resource-manager org-policies set-policy:gcloud resource-manager org-policies set-policy \ --organization=ORGANIZATION_ID policy.yamlאופציונלי: כדי למחוק את הקובץ
policy.yaml, מבצעים אחת מהפעולות הבאות:אם משתמשים בטרמינל של Linux או macOS, מריצים את הפקודה הבאה:
rm policy.yamlאם משתמשים בטרמינל של Windows, מריצים את הפקודה הבאה:
del policy.yaml
השינויים ייכנסו לתוקף תוך 15 דקות לכל היותר.