במאמר הזה מוסבר איך ליצור הזמנה לפרויקט יחיד, שניתן להשתמש בה רק במכונות וירטואליות (VM) באותו פרויקט. מידע נוסף על הזמנות זמין במאמר בנושא איך מבקשים מקום שמור למשאבים של תחום מוגדר ב-Compute Engine.
לשיטות אחרות ליצירת הזמנות, אפשר לעיין בדפים הבאים:
כדי ליצור הזמנה שאפשר להשתמש בה בכמה פרויקטים, אפשר לעיין במאמר בנושא יצירת הזמנה משותפת.
כדי ליצור הזמנה כשרוכשים התחייבות לשימוש במשאבים, אפשר לעיין במאמר רכישת התחייבויות לשימוש בציוד עם הזמנות מצורפות. התחייבויות מספקות הנחות, שנקראות הנחות תמורת התחייבות לשימוש (CUD), על עלויות המשאבים לפי דרישה בתמורה לרכישת כמות מינימלית של משאבים או להוצאת סכום מינימלי.
לפני שמתחילים
- כדאי לעיין בדרישות וב הגבלות בנושא הזמנות.
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Cloud de Confiance by S3NS . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Cloud de Confiance כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Cloud de Confiance by S3NS
gcloud
-
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud init
-
- הגדרת אזור ותחום כברירת מחדל
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
Terraform
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Terraform שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות ליצירת הזמנות לפרויקט יחיד, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין של Compute (roles/compute.admin) בפרויקט.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
זהו תפקיד שמוגדר מראש וכולל את ההרשאות שנדרשות ליצירת הזמנות לפרויקט יחיד. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי ליצור הזמנות לפרויקט יחיד, נדרשות ההרשאות הבאות:
-
compute.reservations.createבפרויקט -
כדי לציין תבנית של הגדרות מכונה:
compute.instanceTemplates.useReadOnlyבתבנית של הגדרות המכונה
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
שליחת בקשה לשריון מקום שמור לפרויקט מסוים
כדי להשתמש בהזמנה, למכונה וירטואלית צריכים להיות מאפיינים שזהים לאלה של ההזמנה. כדי לציין את המאפיינים של המכונות הווירטואליות שרוצים לשריין, בוחרים באחד מהקטעים הבאים במסמך הזה:
מומלץ: מציינים תבנית של הגדרות מכונה
בקטע הזה מוסבר איך משתמשים בתבנית של הגדרות מכונה כדי להגדיר את המאפיינים של מקום שמור. באמצעות תבנית של הגדרות מכונה, אתם יכולים להגדיר את המאפיינים של שריין ואת המכונות הווירטואליות שיכולות להשתמש בשריין באותו מקום.
-
בקטע הזה מוסבר איך להשתמש במכונה וירטואלית קיימת כדי להגדיר את המאפיינים של הזמנה. כדי להשתמש בהזמנה, אתם יכולים ליצור מכונות וירטואליות עם מאפיינים שתואמים למכונה הווירטואלית שמשמשת כהפניה, וכך להשתמש במאפיינים של מכונה וירטואלית קיימת.
-
בקטע הזה מוסבר איך להגדיר ישירות את המאפיינים של הזמנה. בשיטה הזו, אתם צריכים לוודא באופן ידני שהמאפיינים של מכונות ה-VM וההזמנות זהים – אם יש מאפיינים לא תואמים, לא ניתן להשתמש בהזמנה.
כברירת מחדל, כל מכונה וירטואלית עם מאפיינים שתואמים להזמנה יכולה להשתמש בה באופן אוטומטי. כדי לשלוט בצריכת ההזמנה, אפשר לבצע אחת או יותר מהפעולות הבאות:
ליצור הזמנה שאפשר להשתמש בה רק במכונות וירטואליות שמטרגטות אותה באופן ספציפי, כמו שמוסבר בקטעים הבאים במסמך הזה. לאחר מכן, מגדירים את המכונות הווירטואליות כך שישתמשו בהזמנה הספציפית הזו.
הגדרת מכונות וירטואליות כך שלא ינצלו את היתרונות של ההזמנות.
בנוסף, כשיוצרים מקום שמור ספציפי לפרויקט יחיד, אפשר לציין מדיניות למיקום קומפקטי. מדיניות מיקום קומפקטי קובעת שהמכונות הווירטואליות ימוקמו כמה שיותר קרוב זו לזו כדי לצמצם את זמן האחזור ברשת.
ציון תבנית של הגדרות מכונה
כדי להימנע משגיאות כשיוצרים הזמנה על ידי ציון תבנית של הגדרות מכונה, חשוב לוודא את הדברים הבאים:
יוצרים את המקום השמור באותו אזור ותחום (zone) שבו נמצאים המשאבים בתבנית של הגדרות מכונה. כל משאב אזורי או משאב של תחום מוגדר שמוגדר בתבנית של הגדרות מכונה – כמו סוג מכונה או נפח של דיסק אחסון מתמיד – מגביל את השימוש בתבנית למיקומים שבהם המשאבים האלה קיימים. לדוגמה, אם בתבנית של הגדרות המכונה מצוין נפח של דיסק אחסון מתמיד קיים באזור
us-central1-a, אפשר ליצור את השריין רק באותו אזור. כדי לבדוק אם תבנית קיימת מציינת משאבים שמקשרים את התבנית לאזור או לאזור זמינות ספציפיים, צופים בפרטים של תבנית הגדרות המכונה ומחפשים בתוכה הפניות למשאבים אזוריים או למשאבים של אזור זמינות.אם בתבנית של הגדרות מכונה יש מדיניות למיקום קומפקטי, צריך לוודא שבתבנית מוגדר סוג מכונה נתמך למדיניות למיקום קומפקטי. אחרת, יצירת ההזמנה תיכשל.
כדי ליצור מקום שמור לפרויקט יחיד על ידי ציון תבנית של הגדרות מכונה, בוחרים באחת מהאפשרויות הבאות:
המסוף
פותחים את הדף Reservations במסוף Cloud de Confiance .
לוחצים על יצירת בקשה לשמירת מקום. ייפתח הדף Create a reservation.
נותנים לבקשה שם בשדה Name.
ברשימות Region ו-Zone, בוחרים את האזור והתחום שבהם רוצים לשריין את המשאבים.
אופציונלי: כדי לאפשר למשימות אימון בהתאמה אישית או למשימות חיזוי ב-Vertex AI להשתמש במכונות וירטואליות של GPU ששמורות במכסת השימוש, בקטע Google Cloud services בוחרים באפשרות Share reservation.
בקטע Use with VM instance (שימוש עם מכונת VM), בוחרים באחת מהאפשרויות הבאות:
כדי להשתמש אוטומטית במכונות וירטואליות שמתאימות לפרטי הבקשה, מסמנים את האפשרות Use reservation automatically.
כדי להשתמש במשאבים שמתאימים לפרטי הבקשה רק כשיוצרים מכונות וירטואליות שמיועדות ספציפית אליה (לפי שם), בוחרים באפשרות Select specific reservation.
בקטע Resource details (פרטי המשאב), מבצעים את הפעולות הבאות:
בשדה Number of VM instances מקלידים את מספר המכונות הווירטואליות שרוצים לשריין.
כדי לציין את ההגדרות של המכונה הווירטואלית באמצעות תבנית של הגדרות מכונה, בוחרים באפשרות Use instance template ואז בוחרים את התבנית של הגדרות המכונה ברשימה שמופיעה.
בקטע Auto-delete, אפשר להפעיל את אפשרות המחיקה האוטומטית כדי ש-Compute Engine ימחק את הבקשה לשמירת מקום אוטומטית בתאריך ובשעה ספציפיים. מתי זה שימושי? למשל כשמתכננים להפסיק את השימוש במשאבים ששוריינו ורוצים למנוע חיובים לא נחוצים.
לוחצים על Create כדי ליצור את הבקשה לשמירת מקום. יופיע הדף Reservations. יצירת ההזמנה עשויה להימשך עד דקה. כדי לראות מתי הבקשה תיווצר ב-Compute Engine, אתם יכולים לפתוח את רשימת הבקשות לשמירת מקום.
gcloud
כדי ליצור הזמנה לפרויקט יחיד, משתמשים בפקודה gcloud compute reservations create.
כדי ליצור מקום שמור לפרויקט יחיד על ידי ציון תבנית של הגדרות מכונה ובלי לכלול דגלים אופציונליים, מריצים את הפקודה הבאה:
gcloud compute reservations create RESERVATION_NAME \
--source-instance-template=INSTANCE_TEMPLATE_URL \
--vm-count=NUMBER_OF_VMS \
--zone=ZONE
מחליפים את מה שכתוב בשדות הבאים:
RESERVATION_NAME: השם של ההזמנה שרוצים ליצור.
INSTANCE_TEMPLATE_URL: כתובת ה-URL של תבנית קיימת של הגדרות מכונה. מציינים אחד מהערכים הבאים:לתבנית של הגדרות מכונה אזורית:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_NAMEלתבנית גלובלית של הגדרות מכונה:
INSTANCE_TEMPLATE_NAME
NUMBER_OF_VMS: מספר המכונות הווירטואליות שרוצים לשריין.
ZONE: האזור שבו רוצים לשריין משאבים.
לדוגמה, כדי ליצור מקום שמור של עשר מכונות וירטואליות בתחום (zone) us-central1-a על ידי ציון תבנית של הגדרות מכונה גלובלית, מריצים את הפקודה הבאה:
gcloud compute reservations create my-reservation \
--source-instance-template=example-instance-template \
--vm-count=10 \
--zone=us-central1-a
אפשר גם לבצע אחת או יותר מהפעולות הבאות:
כדי לציין שרק מכונות וירטואליות שמיועדות ספציפית לשימוש בהזמנה הזו יכולות להשתמש בה, צריך לכלול את הדגל
--require-specific-reservation.gcloud compute reservations create RESERVATION_NAME \ --source-instance-template=INSTANCE_TEMPLATE_URL \ --require-specific-reservation \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEכדי לשמור מקום למכונות וירטואליות של GPU שמיועדות למשימות אימון בהתאמה אישית או למשימות חיזוי ב-Vertex AI, צריך להוסיף את האפשרות
--reservation-sharing-policyעם הערךALLOW_ALL.gcloud compute reservations create RESERVATION_NAME \ --source-instance-template=INSTANCE_TEMPLATE_URL \ --reservation-sharing-policy=ALLOW_ALL \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEכדי לאפשר ל-Compute Engine למחוק אוטומטית את הבקשה לשמירת מקום, בוחרים אחת מהשיטות הבאות:
כדי למחוק את הבקשה לשמירת מקום בתאריך ובשעה ספציפיים, משתמשים בפקודה
gcloud beta compute reservations createעם הדגל--delete-at-time.gcloud beta compute reservations create RESERVATION_NAME \ --delete-at-time=DELETE_AT_TIME \ --source-instance-template=INSTANCE_TEMPLATE_URL \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEמחליפים את
DELETE_AT_TIMEבתאריך ובשעה בפורמט של חותמת זמן RFC 3339, שצריך להיות כזה:none YYYY-MM-DDTHH:MM:SSOFFSETמחליפים את מה שכתוב בשדות הבאים:
YYYY-MM-DD: תאריך בפורמט של שנה בת 4 ספרות, חודש בן 2 ספרות ויום בחודש בן 2 ספרות, מופרדים במקפים (-).
HH:MM:SS: שעה בפורמט של שעה בת 2 ספרות בפורמט של 24 שעות, דקות בנות 2 ספרות ושניות בנות 2 ספרות, מופרדות באמצעות נקודתיים (:).
OFFSET: אזור הזמן בפורמט של היסט מהזמן האוניברסלי המתואם (UTC). לדוגמה, כדי להשתמש בשעון החוף המערבי (PST), מציינים-08:00. לחלופין, כדי לא להשתמש בהזחה, מצייניםZ.
כדי למחוק את ההזמנה אחרי משך זמן מסוים, משתמשים בפקודה
gcloud beta compute reservations createעם הדגל--delete-after-duration.gcloud beta compute reservations create RESERVATION_NAME \ --delete-after-duration=DELETE_AFTER_DURATION \ --source-instance-template=INSTANCE_TEMPLATE_URL \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEמחליפים את
DELETE_AFTER_DURATIONבמשך הזמן בימים, בשעות, בדקות או בשניות. לדוגמה, מציינים30mל-30 דקות, או1d2h3m4sליום אחד, שעתיים, 3 דקות ו-4 שניות.
המשך
Java
Node.js
Python
REST
כדי ליצור הזמנה לפרויקט יחיד, שולחים בקשת POST אל ה-method reservations.insert.
כדי ליצור מקום שמור לפרויקט יחיד על ידי ציון תבנית של הגדרות מכונה ובלי לכלול דגלים אופציונליים, שולחים את הבקשה הבאה:POST
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations
{
"name": "RESERVATION_NAME",
"specificReservation": {
"count": "NUMBER_OF_VMS",
"sourceInstanceTemplate": "INSTANCE_TEMPLATE_URL"
}
}
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: מזהה הפרויקט שבו רוצים לשריין משאבים ושבו קיימת תבנית של הגדרות מכונה.
ZONE: האזור שבו רוצים לשריין משאבים.
RESERVATION_NAME: השם של ההזמנה שרוצים ליצור.
NUMBER_OF_VMS: מספר המכונות הווירטואליות שרוצים לשריין.
INSTANCE_TEMPLATE_URL: כתובת ה-URL של תבנית קיימת של הגדרות מכונה. מציינים אחד מהערכים הבאים:לתבנית של הגדרות מכונה אזורית:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_NAMEלתבנית גלובלית של הגדרות מכונה:
INSTANCE_TEMPLATE_NAME
לדוגמה, כדי ליצור מקום שמור של עשר מכונות וירטואליות בתחום (zone) us-central1-a באמצעות תבנית של הגדרות מכונה גלובלית, שולחים את בקשת POST הבאה:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations
{
"name": "my-reservation",
"specificReservation": {
"count": "10",
"sourceInstanceTemplate": "example-instance-template"
}
}
אפשר גם לבצע אחת או יותר מהפעולות הבאות:
כדי לציין שרק מכונות וירטואליות שמיועדות ספציפית לשריין הזה יכולות להשתמש בו, צריך לכלול את השדה
specificReservationRequiredבגוף הבקשה ולהגדיר את השדה ל-true.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "sourceInstanceTemplate": "INSTANCE_TEMPLATE_URL" }, "specificReservationRequired": true }כדי לאפשר למשימות אימון בהתאמה אישית או למשימות חיזוי ב-Vertex AI להשתמש בשמירת מקום למכונות וירטואליות של GPU, צריך לכלול את השדה
serviceShareTypeולהגדיר אותו לערךALLOW_ALL.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "reservationSharingPolicy": { "serviceShareType": "ALLOW_ALL" }, "specificReservation": { "count": "NUMBER_OF_VMS", "sourceInstanceTemplate": "INSTANCE_TEMPLATE_URL" } }כדי לאפשר ל-Compute Engine למחוק אוטומטית את הבקשה לשמירת מקום, בוחרים אחת מהשיטות הבאות:
כדי למחוק את הבקשה לשמירת מקום בתאריך ובשעה מסוימים, שולחים
POSTבקשה לשיטהbeta.reservations.insert. בגוף הבקשה, כוללים את השדהdeleteAtTime.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "deleteAtTime": "DELETE_AT_TIME", "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "sourceInstanceTemplate": "INSTANCE_TEMPLATE_URL" } }מחליפים את
DELETE_AT_TIMEבתאריך ובשעה בפורמט של חותמת זמן RFC 3339, שצריך להיות כזה:YYYY-MM-DDTHH:MM:SSOFFSETמחליפים את מה שכתוב בשדות הבאים:
YYYY-MM-DD: תאריך בפורמט של שנה בת 4 ספרות, חודש בן 2 ספרות ויום בחודש בן 2 ספרות, מופרדים במקפים (-).
HH:MM:SS: שעה בפורמט של שעה בת 2 ספרות בפורמט של 24 שעות, דקות בנות 2 ספרות ושניות בנות 2 ספרות, מופרדות באמצעות נקודתיים (:).
OFFSET: אזור הזמן בפורמט של היסט מהזמן האוניברסלי המתואם (UTC). לדוגמה, כדי להשתמש בשעון החוף המערבי (PST), מציינים-08:00. לחלופין, כדי לא להשתמש בהזחה, מצייניםZ.
כדי למחוק את ההזמנה אחרי משך זמן מסוים, שולחים
POSTבקשה לשיטהbeta.reservations.insert. בגוף הבקשה, כוללים את השדהdeleteAfterDuration.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "deleteAfterDuration": { "seconds": "DELETE_AFTER_DURATION" }, "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "sourceInstanceTemplate": "INSTANCE_TEMPLATE_URL" } }מחליפים את
DELETE_AFTER_DURATIONבמשך הזמן בשניות. לדוגמה, מציינים86400ל-86,400 שניות (יום אחד).
ציון של מכונה וירטואלית קיימת
אפשר ליצור הזמנה רק על סמך מכונה וירטואלית קיימת באותו אזור כמו המכונה הווירטואלית.
אחרי שיוצרים את ההזמנה, אפשר להשתמש בה כדי ליצור מכונות וירטואליות עם מאפיינים שתואמים למכונה הווירטואלית שמשמשת כהפניה. כדי לעשות את זה, מבצעים אחת מהפעולות הבאות:
כך יוצרים תבנית של הגדרות מכונה ומשתמשים בה:
יוצרים תבנית של הגדרות מכונה על סמך המכונה הווירטואלית להפניה בלי לדרוס את המאפיינים של המכונה הווירטואלית להפניה.
כדי ליצור מכונות וירטואליות באמצעות התבנית החדשה, מבצעים אחת מהפעולות הבאות או את שתיהן:
יוצרים מכונה וירטואלית על סמך המכונה הווירטואלית של קובץ העזר, ומוודאים שהמאפיינים של המכונה הווירטואלית החדשה ושל המכונה הווירטואלית של קובץ העזר זהים.
כדי ליצור הזמנה לפרויקט יחיד שמשתמשת במאפיינים של מכונה וירטואלית קיימת, מבצעים את הפעולות הבאות:
פותחים את הדף Reservations במסוף Cloud de Confiance .
לוחצים על Create reservation (יצירת בקשה לשמירת מקום). ייפתח הדף Create a reservation.
נותנים לבקשה שם בשדה Name.
ברשימות Region ו-Zone, בוחרים את האזור והתחום שבהם רוצים לשריין את המשאבים.
אופציונלי: כדי לאפשר למשימות אימון בהתאמה אישית או למשימות חיזוי ב-Vertex AI להשתמש במכונות וירטואליות של GPU ששמורות במכסת השימוש, בקטע Google Cloud services בוחרים באפשרות Share reservation.
בקטע Use with VM instance (שימוש עם מכונת VM), בוחרים באחת מהאפשרויות הבאות:
כדי להשתמש אוטומטית במכונות וירטואליות שמתאימות לפרטי הבקשה, מסמנים את האפשרות Use reservation automatically.
כדי להשתמש במשאבים שמתאימים לפרטי הבקשה רק כשיוצרים מכונות וירטואליות שמיועדות ספציפית אליה (לפי שם), בוחרים באפשרות Select specific reservation.
בקטע Resource details (פרטי המשאב), מבצעים את הפעולות הבאות:
בשדה Number of VM instances, מקלידים את מספר המכונות הווירטואליות שרוצים לשריין.
כדי לציין הגדרות של מכונה וירטואלית באמצעות תבנית של הגדרות מכונה, בוחרים באפשרות Use existing VM ואז בוחרים את המכונה הווירטואלית מהרשימה שמופיעה.
אופציונלי: כדי לציין מדיניות מיקום קומפקטית להזמנה שעומדת בדרישות, בקטע מדיניות מיקום של קבוצה, לוחצים על הרשימה בחירה או יצירה של מדיניות מיקום של קבוצה, ואז מבצעים אחת מהפעולות הבאות:
כדי ליצור מדיניות למיקום קומפקטי שאפשר לציין בהזמנה הזו:
לוחצים על יצירת מדיניות למיקום קבוצות. מופיעה החלונית Create a group placement policy.
בשדה Policy name, כותבים את השם של המדיניות.
לוחצים על יצירה. יצירת המדיניות למיקום קומפקטי עשויה להימשך כמה שניות.
אחרת, בוחרים מדיניות קיימת למיקום קומפקטי.
בקטע Auto-delete, אפשר להפעיל את אפשרות המחיקה האוטומטית כדי ש-Compute Engine ימחק אוטומטית את הבקשה לשמירת מקום בתאריך ובשעה ספציפיים. מתי זה שימושי? למשל כשמתכננים להפסיק את השימוש במשאבים ששוריינו ורוצים למנוע חיובים לא נחוצים.
לוחצים על Create כדי ליצור את הבקשה לשמירת מקום. יופיע הדף Reservations. יצירת ההזמנה עשויה להימשך עד דקה. כדי לראות מתי הבקשה תיווצר ב-Compute Engine, אתם יכולים לפתוח את רשימת הבקשות לשמירת מקום.
ציון מאפיינים ישירות
כדי ליצור הזמנה לפרויקט יחיד על ידי ציון מאפיינים ישירות, בוחרים באחת מהאפשרויות הבאות:
המסוף
פותחים את הדף Reservations במסוף Cloud de Confiance .
לוחצים על יצירת בקשה לשמירת מקום. ייפתח הדף Create a reservation.
נותנים לבקשה שם בשדה Name.
ברשימות Region ו-Zone, בוחרים את האזור והתחום שבהם רוצים לשריין את המשאבים.
אופציונלי: כדי לאפשר למשימות אימון בהתאמה אישית או למשימות חיזוי ב-Vertex AI להשתמש במכונות וירטואליות של GPU ששמורות במכסת השימוש, בקטע Google Cloud services בוחרים באפשרות Share reservation.
בקטע Use with VM instance (שימוש עם מכונת VM), בוחרים באחת מהאפשרויות הבאות:
כדי להשתמש אוטומטית במכונות וירטואליות שמתאימות לפרטי הבקשה, מסמנים את האפשרות Use reservation automatically.
כדי להשתמש במשאבים שמתאימים לפרטי הבקשה רק כשיוצרים מכונות וירטואליות שמיועדות ספציפית אליה (לפי שם), בוחרים באפשרות Select specific reservation.
בקטע Resource details (פרטי המשאב), מבצעים את הפעולות הבאות:
בשדה Number of VM instances מקלידים את מספר המכונות הווירטואליות שרוצים לשריין.
מציינים את סדרת המכונות ואת הסוג שרוצים לשריין.
אופציונלי: כדי לציין מדיניות מיקום קומפקטית להזמנה שעומדת בדרישות ההזמנה, בקטע מדיניות מיקום של קבוצה, לוחצים על הרשימה בחירה או יצירה של מדיניות מיקום של קבוצה ואז מבצעים אחת מהפעולות הבאות:
כדי ליצור מדיניות מיקום קומפקטית שאפשר לציין בהזמנה הזו:
לוחצים על יצירת מדיניות למיקום קבוצות. מופיעה החלונית Create a group placement policy.
בשדה Policy name, כותבים את השם של המדיניות.
לוחצים על יצירה. יצירת המדיניות למיקום קומפקטי עשויה להימשך כמה שניות.
אחרת, בוחרים מדיניות קיימת למיקום קומפקטי.
בקטע Auto-delete, אפשר להפעיל את אפשרות המחיקה האוטומטית כדי לאפשר ל-Compute Engine למחוק את הבקשה לשמירת מקום באופן אוטומטי בתאריך ובשעה ספציפיים. מתי זה שימושי? למשל כשמתכננים להפסיק את השימוש במשאבים ששוריינו ורוצים למנוע חיובים לא נחוצים.
לוחצים על Create כדי ליצור את הבקשה לשמירת מקום. יופיע הדף Reservations. יצירת ההזמנה עשויה להימשך עד דקה. כדי לראות מתי הבקשה תיווצר ב-Compute Engine, אתם יכולים לפתוח את רשימת הבקשות לשמירת מקום.
gcloud
כדי ליצור הזמנה לפרויקט יחיד, משתמשים בפקודה gcloud compute reservations create.
כדי ליצור הזמנה לפרויקט יחיד על ידי ציון מאפיינים ישירות וללא הוספת דגלים אופציונליים, מריצים את הפקודה הבאה:
gcloud compute reservations create RESERVATION_NAME \
--machine-type=MACHINE_TYPE \
--vm-count=NUMBER_OF_VMS \
--zone=ZONE
מחליפים את מה שכתוב בשדות הבאים:
RESERVATION_NAME: השם של ההזמנה שרוצים ליצור.
MACHINE_TYPE: סוג המכונה לשימוש בכל מכונה וירטואלית.
NUMBER_OF_VMS: מספר המכונות הווירטואליות שרוצים לשריין.
ZONE: האזור שבו רוצים לשריין משאבים.
לדוגמה, כדי ליצור מקום שמור באזור us-central1-a לעשר מכונות וירטואליות שכל אחת מהן משתמשת בסוג מכונה עם קונפיגורציה מוגדרת (predefined) מסוג N2 עם 4 vCPU, מריצים את הפקודה הבאה:
gcloud compute reservations create my-reservation \
--machine-type=n2-standard-4 \
--vm-count=10 \
--zone=us-central1-a
אפשר גם לבצע אחת או יותר מהפעולות הבאות:
כדי לצרף יחידות GPU למכונות וירטואליות מסוג N1 שהוזמנו, צריך לכלול את הדגל
--accelerator.gcloud compute reservations create RESERVATION_NAME \ --accelerator=count=NUMBER_OF_ACCELERATORS,type=ACCELERATOR_TYPE \ --machine-type=MACHINE_TYPE \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEמחליפים את מה שכתוב בשדות הבאים:
NUMBER_OF_ACCELERATORS: מספר יחידות ה-GPU שרוצים להוסיף לכל מכונה וירטואלית (VM) שהוזמנה.
ACCELERATOR_TYPE: דגם GPU נתמך למכונות וירטואליות מסוג N1. מוודאים שדגם ה-GPU שבחרתם זמין בתחום שבו אתם רוצים לשריין משאבים. אחרת, יצירת ההזמנה תיכשל.
כדי לצרף דיסקים של SSD מקומיים לסוג מכונה שלא כולל דיסקים של SSD מקומיים כברירת מחדל, צריך לכלול את הדגל
--local-ssd. אפשר לצרף רק דיסקים מסוג Local SSD בנפח של 375GB.gcloud compute reservations create RESERVATION_NAME \ --local-ssd=count=NUMBER_OF_LOCAL_SSD_DISKS,size=375,interface=INTERFACE_TYPE \ --machine-type=MACHINE_TYPE \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEמחליפים את מה שכתוב בשדות הבאים:
NUMBER_OF_LOCAL_SSD_DISKS: מספר דיסקי ה-SSD המקומיים לצירוף.
INTERFACE_TYPE: סוג ממשק הדיסק שבו רוצים להשתמש בכל דיסק SSD מקומי, ושסוג המכונה שצוין תומך בו. מציינים אחד מהערכים הבאים:לממשק הדיסק NVME:
nvmeלממשק דיסק SCSI:
scsi
כדי שמכונות ה-VM השמורות ישתמשו בפלטפורמת CPU מינימלית ספציפית במקום בפלטפורמת ה-CPU שמוגדרת כברירת מחדל לאזור, צריך לכלול את הדגל
--min-cpu-platform.gcloud compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --min-cpu-platform="MIN_CPU_PLATFORM" \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEמחליפים את
MIN_CPU_PLATFORMבפלטפורמת מעבד מינימלית. כדי לוודא שפלטפורמת CPU זמינה באזור שבו אתם מזמינים משאבים, אפשר לראות את פלטפורמות ה-CPU הזמינות לפי אזור.כדי לציין שרק מכונות וירטואליות שמיועדות ספציפית לשימוש בהזמנה הזו יכולות להשתמש בה, צריך לכלול את הדגל
--require-specific-reservation.gcloud compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --require-specific-reservation \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEכדי לציין מדיניות מיקום קומפקטית לזמן אחזור נמוך יותר ברשת בין מכונות וירטואליות, צריך לכלול את הדגל
--resource-policies=policy.gcloud compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --resource-policies=policy=COMPACT_PLACEMENT_POLICY_NAME \ --require-specific-reservation \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEמחליפים את COMPACT_PLACEMENT_POLICY_NAME בשם של מדיניות למיקום קומפקטי קיימת. בנוסף, כדי להימנע משגיאות כשיוצרים הזמנה לפרויקט יחיד שמציינת מדיניות מיקום קומפקטית, חשוב לציין את הפרטים הבאים:
סוג מכונה נתמך ומספר מקסימלי של מכונות וירטואליות למדיניות מיקום קומפקטית.
תחום בתוך האזור שבו נמצאת המדיניות למיקום קומפקטי.
הדגל של
--require-specific-reservation. המשמעות היא שרק מכונות וירטואליות שמיועדות ספציפית למקום השמור יכולות להשתמש בו.
כדי לאפשר למשימות אימון בהתאמה אישית או למשימות חיזוי ב-Vertex AI להשתמש במכונות וירטואליות של GPU ששמורות, צריך לכלול את הדגל
--reservation-sharing-policyעם הערךALLOW_ALL.gcloud compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --reservation-sharing-policy=ALLOW_ALL \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEכדי לאפשר ל-Compute Engine למחוק אוטומטית את הבקשה לשמירת מקום, בוחרים אחת מהשיטות הבאות:
כדי למחוק את הבקשה לשמירת מקום בתאריך ובשעה ספציפיים, משתמשים בפקודה
gcloud beta compute reservations createעם הדגל--delete-at-time.gcloud beta compute reservations create RESERVATION_NAME \ --delete-at-time=DELETE_AT_TIME \ --machine-type=MACHINE_TYPE \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEמחליפים את
DELETE_AT_TIMEבתאריך ובשעה בפורמט של חותמת זמן RFC 3339, שצריך להיות כזה:YYYY-MM-DDTHH:MM:SSOFFSETמחליפים את מה שכתוב בשדות הבאים:
YYYY-MM-DD: תאריך בפורמט של שנה בת 4 ספרות, חודש בן 2 ספרות ויום בחודש בן 2 ספרות, מופרדים במקפים (-).
HH:MM:SS: שעה בפורמט של שעה בת 2 ספרות בפורמט של 24 שעות, דקות בנות 2 ספרות ושניות בנות 2 ספרות, מופרדות באמצעות נקודתיים (:).
OFFSET: אזור הזמן בפורמט של היסט מהזמן האוניברסלי המתואם (UTC). לדוגמה, כדי להשתמש בשעון החוף המערבי (PST), מציינים-08:00. לחלופין, כדי לא להשתמש בהזחה, מצייניםZ.
כדי למחוק את ההזמנה אחרי משך זמן מסוים, משתמשים בפקודה
gcloud beta compute reservations createעם הדגל--delete-after-duration.gcloud beta compute reservations create RESERVATION_NAME \ --delete-after-duration=DELETE_AFTER_DURATION \ --machine-type=MACHINE_TYPE \ --vm-count=NUMBER_OF_VMS \ --zone=ZONEמחליפים את
DELETE_AFTER_DURATIONבמשך הזמן בימים, בשעות, בדקות או בשניות. לדוגמה, מציינים30mל-30 דקות, או1d2h3m4sליום אחד, שעתיים, 3 דקות ו-4 שניות.
המשך
Java
Node.js
Python
Terraform
כדי ליצור הזמנה לפרויקט יחיד, משתמשים במשאב google_compute_reservation של Terraform.
לדוגמה, כדי ליצור שריון מקום שמור לפרויקט מסוים עבור סוג מכונה מוגדר מראש N2 עם 2 vCPU, משתמשים במשאב הבא:
מידע נוסף על השימוש ב-Terraform זמין במאמר שימוש ב-Terraform עם Cloud de Confiance by S3NS.
REST
כדי ליצור הזמנה לפרויקט יחיד, שולחים בקשת POST אל ה-method reservations.insert.
כדי ליצור הזמנה לפרויקט יחיד על ידי ציון מאפיינים ישירות וללא הכללה של שדות אופציונליים, שולחים את הבקשה הבאה: POST
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations
{
"name": "RESERVATION_NAME",
"specificReservation": {
"count": "NUMBER_OF_VMS",
"instanceProperties": {
"machineType": "MACHINE_TYPE"
}
}
}
מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: מזהה הפרויקט שבו רוצים לשריין משאבים.
ZONE: האזור שבו רוצים לשריין משאבים.
RESERVATION_NAME: השם של ההזמנה שרוצים ליצור.
NUMBER_OF_VMS: מספר המכונות הווירטואליות שרוצים לשריין.
MACHINE_TYPE: סוג המכונה לשימוש בכל מכונה וירטואלית.
לדוגמה, כדי ליצור מקום שמור באזור us-central1-a ל-10 מכונות וירטואליות שכל אחת מהן משתמשת במכונה עם קונפיגורציה מוגדרת (predefined) מסוג N2 עם 4 vCPU, שולחים את בקשת POST הבאה:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations
{
"name": "my-reservation",
"specificReservation": {
"count": "10",
"instanceProperties": {
"machineType": "n2-standard-4",
}
}
}
אפשר גם לבצע אחת או יותר מהפעולות הבאות:
כדי לצרף יחידות GPU למכונות וירטואליות מסוג N1 שהוזמנו, צריך לכלול את השדה
guestAcceleratorsבגוף הבקשה.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "guestAccelerators": [ { "acceleratorCount": NUMBER_OF_ACCELERATORS, "acceleratorType": "ACCELERATOR_TYPE" } ], "machineType": "MACHINE_TYPE" } } }מחליפים את מה שכתוב בשדות הבאים:
NUMBER_OF_ACCELERATORS: מספר יחידות ה-GPU שרוצים להוסיף לכל מכונה וירטואלית (VM) שהוזמנה.
ACCELERATOR_TYPE: דגם GPU נתמך למכונות וירטואליות מסוג N1. מוודאים שדגם ה-GPU שבחרתם זמין בתחום שבו אתם רוצים לשריין משאבים. אחרת, יצירת ההזמנה תיכשל.
כדי לצרף דיסקים של SSD מקומי לסוג מכונה שלא כולל דיסקים של SSD מקומי כברירת מחדל, צריך לכלול את השדה
localSsdsבגוף הבקשה. אפשר לצרף רק דיסקים מקומיים מסוג SSD בנפח של 375 GB.לדוגמה, כדי לצרף שני דיסקים מקומיים מסוג SSD לסוג המכונה שרוצים לשריין, שולחים בקשה באופן הבא:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "localSsds": [ { "diskSizeGb": "375", "interface": "INTERFACE_TYPE" }, { "diskSizeGb": "375", "interface": "INTERFACE_TYPE" } ], "machineType": "MACHINE_TYPE" } } }מחליפים את
INTERFACE_TYPEבסוג של ממשק דיסק שרוצים שכל דיסק SSD מקומי ישתמש בו ושסוג המכונה שצוין תומך בו. מציינים אחד מהערכים הבאים:לממשק הדיסק NVME:
NVMEלממשק דיסק SCSI:
SCSI
כדי שמכונות ה-VM השמורות ישתמשו בפלטפורמת CPU מינימלית ספציפית במקום בפלטפורמת ה-CPU שמוגדרת כברירת מחדל לאזור, צריך לכלול את השדה
minCpuPlatformבגוף הבקשה.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE", "minCpuPlatform": "MIN_CPU_PLATFORM" } } }מחליפים את
MIN_CPU_PLATFORMבפלטפורמת מעבד מינימלית. כדי לוודא שפלטפורמת CPU זמינה באזור שבו אתם מזמינים משאבים, אפשר לראות את פלטפורמות ה-CPU הזמינות לפי אזור.כדי לציין מדיניות מיקום קומפקטית כדי לצמצם את זמן האחזור ברשת בין המכונות הווירטואליות השמורות, צריך לכלול את השדה
resourcePoliciesבגוף הבקשה.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "resourcePolicies": { "policy" : "projects/PROJECT_ID/regions/REGION/resourcePolicies/COMPACT_PLACEMENT_POLICY_NAME" }, "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } }, "specificReservationRequired": true }מחליפים את מה שכתוב בשדות הבאים:
REGION: האזור שבו נמצאת מדיניות המיקום הקומפקטי. אפשר ליצור את ההזמנה רק באזור של מדיניות מיקומי המודעות.
COMPACT_PLACEMENT_POLICY_NAME: השם של מדיניות קיימת למיקום קומפקטי.
בנוסף, כדי להימנע משגיאות כשיוצרים הזמנה לפרויקט יחיד שמציין מדיניות מיקום קומפקטית, חשוב לציין את הפרטים הבאים:
סוג מכונה נתמך למדיניות למיקום קומפקטי.
השדה
specificReservationRequiredמוגדר ל-true. המשמעות היא שרק מכונות וירטואליות שמיועדות ספציפית לפרטי הבקשה הזו יכולות להשתמש בה.
כדי לציין שרק מכונות וירטואליות שמיועדות ספציפית לשימוש במקום השמור הזה יכולות להשתמש בו, צריך לכלול את השדה
specificReservationRequiredבגוף הבקשה ולהגדיר את השדה לערךtrue.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } }, "specificReservationRequired": true }כדי לשמור מקום למכונות וירטואליות של GPU שמיועדות למשימות אימון בהתאמה אישית או למשימות חיזוי של Vertex AI, צריך לכלול את השדה
serviceShareTypeולהגדיר אותו לערךALLOW_ALL.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "reservationSharingPolicy": { "serviceShareType": "ALLOW_ALL" }, "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } } }כדי לאפשר ל-Compute Engine למחוק אוטומטית את הבקשה לשמירת מקום, בוחרים אחת מהשיטות הבאות:
כדי למחוק את הבקשה לשמירת מקום בתאריך ובשעה מסוימים, שולחים
POSTבקשה לשיטהbeta.reservations.insert. בגוף הבקשה, כוללים את השדהdeleteAtTime.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "deleteAtTime": "DELETE_AT_TIME", "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } } }מחליפים את
DELETE_AT_TIMEבתאריך ובשעה בפורמט של חותמת זמן RFC 3339, שצריך להיות כזה:YYYY-MM-DDTHH:MM:SSOFFSETמחליפים את מה שכתוב בשדות הבאים:
YYYY-MM-DD: תאריך בפורמט של שנה בת 4 ספרות, חודש בן 2 ספרות ויום בחודש בן 2 ספרות, מופרדים במקפים (-).
HH:MM:SS: שעה בפורמט של שעה בת 2 ספרות בפורמט של 24 שעות, דקות בנות 2 ספרות ושניות בנות 2 ספרות, מופרדות באמצעות נקודתיים (:).
OFFSET: אזור הזמן בפורמט של היסט מהזמן האוניברסלי המתואם (UTC). לדוגמה, כדי להשתמש בשעון החוף המערבי (PST), מציינים-08:00. לחלופין, כדי לא להשתמש בהזחה, מצייניםZ.
כדי למחוק את ההזמנה אחרי משך זמן מסוים, שולחים
POSTבקשה לשיטהbeta.reservations.insert. בגוף הבקשה, כוללים את השדהdeleteAfterDuration.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "deleteAfterDuration": { "seconds": "DELETE_AFTER_DURATION" }, "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } } }מחליפים את
DELETE_AFTER_DURATIONבמשך הזמן בשניות. לדוגמה, מציינים86400ל-86,400 שניות (יום אחד).