ב-Compute Engine יש מכונות עם קונפיגורציה מוגדרת (predefined) שאפשר להשתמש בהן כשיוצרים מכונת VM. למכונה עם קונפיגורציה מוגדרת (predefined) יש מספר מוגדר מראש של יחידות vCPU, נפח זיכרון מוגדר מראש ומחיר קבוע. אם המכונות הווירטואליות שהוגדרו מראש לא מתאימות לצרכים שלכם, אתם יכולים ליצור מכונה וירטואלית עם הגדרות חומרה וירטואליות בהתאמה אישית. באופן ספציפי, אתם יכולים ליצור מכונה וירטואלית עם מספר מותאם אישית של יחידות vCPU וכמות זיכרון, ולהשתמש בפועל בסוג מכונה בהתאמה אישית. אפשר להשתמש בסוגי מכונות בהתאמה אישית במקרים הבאים:
- משפחת מכונות לשימוש כללי, רק לסדרות המכונות N ו-E. אפשר ליצור מכונה וירטואלית בהתאמה אישית בסדרות המכונות N4, N4D, N4A, N2, N2D, E2 או N1.
- משפחת מכונות שעברו אופטימיזציה למאיצים, רק לסדרת המכונות G2.
מכונות וירטואליות בהתאמה אישית מתאימות במיוחד בתרחישים הבאים:
- עומסי עבודה שלא מתאימים לסוגי המכונות הווירטואליות שהוגדרו מראש.
- עומסי עבודה שדורשים יותר כוח עיבוד או יותר זיכרון, אבל לא זקוקים לכל השדרוגים שסוג המכונה ברמה הבאה מספק.
- עומסי עבודה שבהם עלויות רישיון התוכנה הן לכל מעבד, שבהם אתם יכולים להתאים אישית את מספר המעבדים הווירטואליים כדי להימנע מעלויות רישיון על כוח עיבוד שלא בשימוש, או כדי להתאים למספר רישיונות התוכנה הזמינים.
לפני שמתחילים
- למסמכי התיעוד בנושא משפחות מכונות
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא התהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי 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
אם מופיעה שגיאת אימות, ודאו ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי בחשבון המשתמש:
gcloud auth application-default login
אם מופיעה שגיאת אימות, ודאו ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי בחשבון המשתמש:
gcloud auth application-default login
אם מופיעה שגיאת אימות, ודאו ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי בחשבון המשתמש:
gcloud auth application-default login
אם מופיעה שגיאת אימות, ודאו ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי בחשבון המשתמש:
gcloud auth application-default login
אם מופיעה שגיאת אימות, ודאו ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
Terraform
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Terraform שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
המשך
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Go שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Java
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Java שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Node.js
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Node.js שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Python
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Python שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות ליצירת מכונה וירטואלית עם סוג מכונה בהתאמה אישית, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין מכונות של Compute (v1) (roles/compute.instanceAdmin.v1) בפרויקט.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
זהו תפקיד שמוגדר מראש וכולל את ההרשאות שנדרשות ליצירת מכונה וירטואלית עם סוג מכונה בהתאמה אישית. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי ליצור מכונה וירטואלית עם סוג מכונה בהתאמה אישית, צריך את ההרשאות הבאות:
-
כדי להוסיף זיכרון מורחב למכונה וירטואלית קיימת:
compute.instances.setMachineTypeבמכונה הווירטואלית -
כדי ליצור מכונה וירטואלית עם סוג מכונה בהתאמה אישית:
-
compute.instances.createבפרויקט - כדי להשתמש באימג' בהתאמה אישית ליצירת המכונה הווירטואלית (VM):
compute.images.useReadOnlyבקובץ אימג' - כדי להשתמש ב-snapshot ליצירת המכונה הווירטואלית:
compute.snapshots.useReadOnlyבקובץ snapshot - כדי להשתמש בתבנית של הגדרות מכונה ליצירת המכונה הווירטואלית:
compute.instanceTemplates.useReadOnlyבתבנית של הגדרות המכונה - כדי להקצות רשת מדור קודם למכונה הווירטואלית:
compute.networks.useבפרויקט - כדי לציין כתובת IP סטטית למכונה הווירטואלית:
compute.addresses.useבפרויקט - כדי להקצות כתובת IP חיצונית למכונה הווירטואלית כשמשתמשים ברשת מדור קודם:
compute.networks.useExternalIpבפרויקט - כדי לציין רשת משנה למכונה הווירטואלית:
compute.subnetworks.useבפרויקט או ברשת המשנה שנבחרה - כדי להקצות כתובת IP חיצונית למכונה הווירטואלית כשמשתמשים ברשת VPC:
compute.subnetworks.useExternalIpבפרויקט או ברשת המשנה שנבחרה - כדי להגדיר מטא-נתונים של המכונה הווירטואלית:
compute.instances.setMetadataבפרויקט - כדי להגדיר תגים למכונה הווירטואלית:
compute.instances.setTagsבמכונה הווירטואלית - כדי להגדיר תוויות למכונה הווירטואלית:
compute.instances.setLabelsבמכונה הווירטואלית - כדי להגדיר חשבון שירות לשימוש של המכונה הווירטואלית:
compute.instances.setServiceAccountבמכונה הווירטואלית - כדי ליצור דיסק חדש למכונה הווירטואלית:
compute.disks.createבפרויקט - כדי לצרף דיסק קיים במצב קריאה-בלבד או במצב קריאה וכתיבה:
compute.disks.useבדיסק - כדי לצרף דיסק קיים במצב קריאה-בלבד:
compute.disks.useReadOnlyבדיסק
-
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
מגבלות
- אם למכונה הווירטואלית יש דיסקים מסוג Local SSD, אי אפשר לשנות את ההגדרות של ה-vCPU והזיכרון.
אפשר להשתמש בזיכרון מורחב בסוגי מכונות בהתאמה אישית מסוג N4, N4A, N4D, N2, N2D ו-N1. במאמר הוספת זיכרון מורחב לסוג מכונה מפורטות המגבלות על זיכרון מורחב.
אי אפשר להרחיב את הזיכרון במכונות עם קונפיגורציה מוגדרת (predefined) ובסוגי מכונות בהתאמה אישית מסוג G2 ו-E2.
זיכרון מורחב לא עומד בדרישות להנחות תמורת התחייבות לשימוש במשאבים.
לכל סוג מכונה יש טווחים וערכים ספציפיים של מעבדי vCPU וזיכרון, כמו שמוצג בטבלה הבאה:
| סדרת מכונות | מספר מינימלי של מעבדים וירטואליים | מספר מקסימלי של מעבדים וירטואליים | מעבדים וירטואליים מותרים | זיכרון מינימלי לכל vCPU (GB) | זיכרון מקסימלי לכל vCPU (ב-GB) | גודל השלב (MB) | זיכרון מורחב |
|---|---|---|---|---|---|---|---|
| N4 | 2 | 80 | כל כפולה של 2 | 2 | 8 | 256 | כן |
| N4D | 2 | 96 | 2, 4, 8, 16, 32, 48, 64, 80, 96 | 0.5 | 8 | 256 | כן |
| N4A | 1 | 64 | הכול | 2 | 8 | 256 | כן |
| N2 | 2 | 80 | כפולות של 2 (עד 32) או 4 (32 עד 80) | 0.5 | 8 | 256 | כן |
| N2D | 2 | 96 | 2, 4, 8, 16, 32, 48, 64, 80, 96 | 0.5 | 8 | 256 | כן |
| N1 | 1 | 96 | 1 או כל כפולה של 2 | 0.9 (1 ל-1 או 2 מעבדי vCPU) | 6.5 | 256 | כן |
| E2 | 2 | 32 | כל כפולה של 2 | 0.5 | 8 | 256 | לא |
| ליבת מעבד משותפת E2 | 0.25 | 1 | 0.25, 0.5, 1 | סה"כ 1 | 8 (2 בסך הכול לעסקים זעירים, 4 בסך הכול לעסקים קטנים, 8 בסך הכול לעסקים בינוניים) | 256 | לא |
הזיכרון מוצג ב-GB או ב-MB
מסיבות היסטוריות, הכלים והמסמכים של Cloud de Confiance by S3NS מתייחסים לזיכרון של סוג המכונה כמגה-בייט (MB) וג'יגה-בייט (GB) עשרוניים. עם זאת, היחידות האלה מייצגות גיביבייטים (GiB) ומביבייטים (MiB) בינאריים, כאשר 1GB הוא 230 בייטים, או 1,024MB.
כשמגדירים זיכרון לסוג מכונה בהתאמה אישית, דרישות היחידה וההמרות תלויות בכלי שבו משתמשים:
- במסוף Cloud de Confiance , מציינים את הזיכרון ב-GB. לדוגמה, אם המערכת צריכה זיכרון של 1,024MB, בוחרים 1GB במסוף Cloud de Confiance .
- ב-Compute Engine API, צריך לספק זיכרון ב-MB כמספר שלם שהוא כפולה של 256MB (או 1,024MB למכונות וירטואליות מסוג G2). לדוגמה, אם תנסו להקצות 5GB של זיכרון על ידי ציון 5,000MB בבקשת API, ה-API יחזיר שגיאה כי 5,000 הוא לא כפולה של 256 (5GB הם 5,120MB).
- ב-Google Cloud CLI, אפשר לציין את נפח הזיכרון הכולל של VM ב-GB או ב-MB:
- אם לא מציינים יחידה בדגל
--custom-memory, ברירת המחדל היא GB. כדי לציין את הזיכרון ב-MB, צריך לכלול את הסיומת של היחידהMB. לדוגמה, אם רוצים 2,048MB (2GB) של זיכרון ומציינים את הדגל--custom-memory=2048בלי יחידה, ה-CLI של gcloud מבקש 2,048GB של זיכרון במקום 2,048MB. - ערכים ללא יחידות שמועברים אל
--custom-memoryחייבים להיות מספרים שלמים. כדי לציין מרווחים של 0.25GB (256MB), כמו 5.75GB, צריך להמיר את הערך למספר שלם ב-MB (--custom-memory=5888MB) או לכלול את הסיומת של היחידהGB (--custom-memory=5.75GB). - בדגל
--machine-type, צריך לציין את הזיכרון ב-MB כמספר שלם בלי סיומת של יחידה, לדוגמה--machine-type=n2-custom-2-5120.
- אם לא מציינים יחידה בדגל
תמחור של סוגי מכונות בהתאמה אישית
החיובים של Compute Engine על מכונות וירטואליות בהתאמה אישית מבוססים על מספר המעבדים הווירטואליים ושעות הזיכרון שבהם המכונה הווירטואלית משתמשת. מודל התמחור הזה שונה מהאופן שבו Compute Engine מחייב על מכונות עם קונפיגורציה מוגדרת (predefined). המחירים של סוגי מכונות בהתאמה אישית על פי דרישה כוללים תוספת של 5% על המחירים של סוגי מכונות עם קונפיגורציה מוגדרת על פי דרישה.
כשמשתמשים בסוג מכונה בהתאמה אישית, כל זיכרון עד לכמות ברירת המחדל לכל vCPU, כולל, מחויב לפי התמחור של סוג המכונה בהתאמה אישית של משפחת המכונות. למכונות E2 בהתאמה אישית ולמכונות E2 עם ליבת מעבד משותפת בהתאמה אישית יש אותה תוכנית תמחור.
אם אתם משתמשים בהתחייבויות כדי להריץ סוגי מכונות בהתאמה אישית, Compute Engine גובה תוספת של 5% על מחירי ההתחייבויות. התשלום הנוסף הזה נגבה ב-Compute Engine על החלק והמשך של ההתחייבות שבהם אתם מפעילים את המכונות הווירטואליות האלה מסוג מכונה בהתאמה אישית.
במאמר תמחור של מכונות וירטואליות תוכלו לראות את המחירים לפי סדרת המכונות.
מכונות וירטואליות בהתאמה אישית כפופות לאותו חיוב מינימלי של דקה אחת כמו כל מכונה אחרת, אבל ההנחות על שימוש קבוע בסוגי מכונות בהתאמה אישית מחושבות באופן שונה. מידע נוסף זמין במאמר הנחות על שימוש קבוע למכונות וירטואליות בהתאמה אישית.
תמחור של זיכרון מורחב
ב-Compute Engine, על זיכרון שחורג מהטווח המקסימלי של מספר המעבדים הווירטואליים שמוגדרים כזיכרון מורחב, תחויבו בתשלום נוסף בהתאם לתמחור של זיכרון מורחב בהתאמה אישית של משפחת המכונות. המחיר של זיכרון מורחב גבוה יותר מהמחיר של זיכרון מתחת לטווח המקסימלי.
המחירים של הרחבת הזיכרון משתנים בהתאם לאזור. מכונות שפועלות עם זיכרון מורחב כפופות לאותו חיוב מינימלי של דקה אחת כמו כל מכונה אחרת. זיכרון מורחב לא עומד בקריטריונים להנחות תמורת התחייבות לשימוש במשאבים, אבל הוא כן עומד בקריטריונים להנחות גמישות תמורת התחייבות לשימוש ב-Compute ולהנחות על שימוש קבוע.
הוספת זיכרון מורחב לסוג מכונה
לכל סוג מכונה בהתאמה אישית מסדרת מכונות יש כמות מקסימלית של זיכרון RAM לכל vCPU שמוגדרת כברירת מחדל. בעומסי עבודה מסוימים, יכול להיות שהמקסימום שמוגדר כברירת מחדל לא יספיק לזיכרון לכל vCPU. תמורת תשלום נוסף, תוכלו לקבל יותר זיכרון לכל vCPU מעבר למקסימום שמוגדר כברירת מחדל, עד למגבלה של סדרת המכונות. האפשרות הזו נקראת זיכרון מורחב. בטבלה הבאה מפורטות מגבלות ה-vCPU והזיכרון המורחב לכל סדרת מכונות נתמכת:
| סדרת מכונות | מגבלת vCPU | מגבלת הזיכרון |
|---|---|---|
| N4 | 80 | 640 GB |
| N4D | 96 | 768 GB |
| N4A | 64 | 512 GB |
| N2 | 80 | 864 GB |
| N2D | 96 | 768 GB |
| N1 | 96 | 624 GB |
ליחסים גבוהים יותר של RAM ל-vCPU, אפשר לעיין גם במכונות עם זיכרון אופטימלי (memory-optimized).
איך מחליטים אם צריך זיכרון מורחב
כדי להשיג תוצאות אופטימליות, עומסי עבודה מסוימים דורשים יותר מנפח הזיכרון שמוגדר כברירת מחדל לכל vCPU. עומסי עבודה שמבוססים על מסדי נתונים אנליטיים בעלי ביצועים גבוהים בזיכרון, כולל מסדי נתונים רלציוניים ו-NoSQL כמו Microsoft SQL Server, MongoDB, Memcached או Redis, נכללים בקטגוריה הזו. בנוסף, רישוי של מערכות הפעלה ומחסניות תוכנה שמבוסס על vCPU מקשה על בחירת הגדרת הזיכרון האופטימלית של VM עם מכונות עם קונפיגורציה מוגדרת (predefined). באמצעות זיכרון מורחב, אתם יכולים להוסיף למכונות הווירטואליות את כמות הזיכרון שהן צריכות כדי להשיג את היחס הטוב ביותר בין מחיר לביצועים.
יצירת מכונה וירטואלית עם סוג מכונה בהתאמה אישית
לפני שיוצרים מכונה וירטואלית בהתאמה אישית, כדאי לקרוא את המפרטים המותאמים אישית ליצירת סוג המכונה הזה.המסוף
נכנסים לדף Create an instance במסוף Cloud de Confiance .
בחלונית Machine configuration:
- בוחרים את האזור (Region) והתחום (Zone) שבהם רוצים לארח את המכונה.
- בוחרים את הגדרת המכונה של המכונה הווירטואלית:
- כדי ליצור מכונה וירטואלית בהתאמה אישית לשימוש כללי, בוחרים באפשרות General purpose, ובקטע Series בוחרים באחת מהאפשרויות הבאות: N4, N4A, N4D, N2, N2D, E2 או N1.
- כדי ליצור מכונה וירטואלית בהתאמה אישית עם מעבדי GPU מצורפים, בוחרים באפשרות GPUs ומבצעים את הפעולות הבאות:
- ברשימה GPU type, בוחרים GPU לסדרת המכונות שבה רוצים להשתמש:
- במכונות וירטואליות מסוג G2, בוחרים באפשרות NVIDIA L4.
- למכונות וירטואליות מסוג N1, בוחרים באפשרות NVIDIA T4, NVIDIA V100 או NVIDIA Tesla P4.
- ברשימה Number of GPUs, בוחרים את מספר יחידות ה-GPU.
- ברשימה GPU type, בוחרים GPU לסדרת המכונות שבה רוצים להשתמש:
- בקטע Machine type, בוחרים באפשרות Custom.
- כדי לציין את מספר ה-vCPU ואת כמות הזיכרון של המכונה, גוררים את הסליידרים Cores ו-Memory או מזינים את הערכים בשדות. במסוף מוצגת העלות המשוערת של המכונה, בהתאם לשינויים במספר המעבדים הווירטואליים ובכמות הזיכרון.
אופציונלי: מציינים אפשרויות הגדרה אחרות. למידע נוסף, ראו אפשרויות הגדרה במהלך יצירת מכונה.
כדי ליצור את המכונה ולהפעיל אותה, לוחצים על Create.
gcloud
יוצרים סוג מכונה בהתאמה אישית באמצעות הפקודה gcloud compute instances create עם הדגל --machine-type:
gcloud compute instances create INSTANCE_NAME \
--zone=ZONE \
--machine-type=MACHINE_SERIES-custom-NUMBER_OF_VCPUS-AMOUNT_OF_MEMORY_MB
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_NAME: שם המכונה. -
ZONE: האזור שבו רוצים ליצור את המכונה. -
MACHINE_SERIES: סדרת המכונות באותיות קטנות, כמוn4,n4d,n4a,n2,n2d,e2אוg2. ב-N1, משמיטים אתMACHINE_SERIES-ומתחילים ב-custom-. -
NUMBER_OF_VCPUS: מספר ה-vCPU. -
AMOUNT_OF_MEMORY_MB: כמות הזיכרון הכוללת ב-MB. הערך הזה חייב להיות כפולה של מספר שלם של 256MB (או 1,024MB למכונות וירטואליות מסוג G2).
כדי ליצור מכונה וירטואלית מסוג G2 עם 4 מעבדי vCPU וזיכרון בנפח 19GB באזור us-central1-a, מריצים את הפקודה הבאה:
gcloud compute instances create example-instance \
--zone=us-central1-a \
--machine-type=g2-custom-4-19456 \
--maintenance-policy=TERMINATE
במכונות וירטואליות מסוג G2, הזיכרון חייב להיות כפולה של 1,024MB ובטווח הזיכרון הנתמך. מידע נוסף על יצירת מכונות וירטואליות מסוג G2 זמין במאמר יצירת מכונה מסוג G2 או G4.
בדוגמה הבאה יוצרים סוג מכונה N2 בהתאמה אישית עם 48 vCPUs וזיכרון של 310GB (317,440MB) באזור us-central1-a:
gcloud compute instances create example-instance \
--zone=us-central1-a \
--machine-type=n2-custom-48-317440
בסדרות מכונות נתמכות, כמו N4 או N2, אפשר להגדיר זיכרון מורחב, שמאפשר לציין כמות זיכרון גדולה יותר מהיחס המקסימלי שמוגדר כברירת מחדל בין הזיכרון ל-vCPUs. כדי להגדיר זיכרון מורחב, מגדילים את הערך של AMOUNT_OF_MEMORY_MB ומוסיפים את -ext לשם של סוג המכונה, לדוגמה --machine-type=n2-custom-48-720896-ext.
לחלופין, אפשר לציין סוג מכונה בהתאמה אישית באמצעות הדגלים --custom-cpu, --custom-memory ו---custom-vm-type (ולכלול את הדגל --custom-extensions אם מגדירים זיכרון מורחב):
gcloud compute instances create INSTANCE_NAME \
--zone=ZONE \
--custom-cpu=NUMBER_OF_VCPUS \
--custom-memory=AMOUNT_OF_MEMORY \
--custom-vm-type=MACHINE_SERIES
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_NAME: שם המכונה. -
ZONE: האזור שבו רוצים ליצור את המכונה. -
NUMBER_OF_VCPUS: מספר ה-vCPU. -
AMOUNT_OF_MEMORY: הכמות הכוללת של הזיכרון עם סיומת יחידה (MBאוGB), או ב-GB אם משמיטים את היחידה. -
MACHINE_SERIES: סדרת המכונות באותיות קטנות, כמוn4,n4d,n4a,n2,n2d,e2אוn1.
בדוגמה הבאה יוצרים סוג מכונה N2 בהתאמה אישית עם 48 מעבדי vCPU וזיכרון בנפח 310GB, באמצעות הדגלים --custom-cpu, --custom-memory ו---custom-vm-type:
gcloud compute instances create example-instance \
--zone=us-central1-a \
--custom-cpu=48 \
--custom-memory=317440MB \
--custom-vm-type=n2
כשמשתמשים בדגל --custom-memory, צריך לציין את כמות הזיכרון הכוללת ב-GB או ב-MB. ערכים ללא יחידות חייבים להיות מספרים שלמים. כדי לציין מרווחים של 0.25GB (256MB) לזיכרון, צריך להמיר את הזיכרון הכולל למספר שלם ב-MB (--custom-memory=5888MB) או לכלול את הסיומת של יחידת המידה GB (--custom-memory=5.75GB).
לסוגי מכונות בהתאמה אישית עם ליבת מעבד משותפת מסוג E2, משתמשים בפקודה gcloud compute instances create וכוללים את גודל המכונה עם ליבת המעבד המשותפת (micro, small או medium):
gcloud compute instances create INSTANCE_NAME \
--zone=ZONE \
--machine-type=e2-custom-SHARED_CORE_SIZE-AMOUNT_OF_MEMORY_MB
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_NAME: שם המכונה. -
ZONE: האזור שבו רוצים ליצור את המכונה. -
SHARED_CORE_SIZE: גודל ליבת המעבד המשותפת של E2 (micro,smallאוmedium). -
AMOUNT_OF_MEMORY_MB: כמות הזיכרון הכוללת ב-MB. הערך הזה חייב להיות כפולה של מספר שלם של 256MB בטווח המותר לגודל של ליבת המעבד המשותפת.
בדוגמה הבאה נוצר סוג מכונה בהתאמה אישית small עם ליבת מעבד משותפת E2, עם 0.5 vCPU וזיכרון של 2.25GB (2,304MB):
gcloud compute instances create example-instance \
--zone=us-central1-a \
--machine-type=e2-custom-small-2304
Terraform
כדי ליצור את קוד Terraform, אפשר להשתמש ברכיב Equivalent code במסוף Cloud de Confiance .- נכנסים לדף VM instances במסוף Cloud de Confiance .
- לוחצים על Create instance.
- מציינים את הפרמטרים הרצויים.
- בחלק העליון או התחתון של הדף, לוחצים על Equivalent code ואז על הכרטיסייה Terraform כדי לראות את הקוד של Terraform.
המשך
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Go במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Go API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Java API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Node.js API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Python API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
REST
כדי ליצור מכונה עם סוג מכונה בהתאמה אישית, מפעילים את ה-method instances.insert ומציינים את הערכים המותאמים אישית של machineType עם זיכרון ב-MB:
- בסדרת המכונות N1, משמיטים את הקידומת של הסדרה ומתחילים ב-
custom-. - במכונות עם ליבה משותפת (shared-core) מסוג E2, מחליפים את מספר ה-vCPU ב-
micro, ב-smallאו ב-medium. - כדי להפעיל זיכרון מורחב, מוסיפים את
-extלמחרוזת של סוג המכונה.
בדוגמה הבאה נוצר סוג מכונה N2 בהתאמה אישית עם 16 מעבדי vCPU וזיכרון בנפח 105GB (107,520MB):
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"name": "example-instance",
"machineType": "zones/ZONE/machineTypes/n2-custom-16-107520",
"disks": [
{
"boot": true,
"initializeParams": {
"diskSizeGb": "10",
"sourceImage": "projects/debian-cloud/global/images/family/debian-13"
}
}
],
"networkInterfaces": [
{
"network": "global/networks/default"
}
]
}
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שבו רוצים ליצור את המכונה. -
ZONE: האזור שבו רוצים ליצור את המכונה.
באופן דומה, אפשר ליצור מכונות וירטואליות במחיר נמוך וקבוצות של מופעי מכונה מנוהלים (MIG) עם סוגי מכונות בהתאמה אישית.
הוספת זיכרון מורחב במהלך יצירת המכונה
כדי ליצור מכונה וירטואלית עם זיכרון מורחב:המסוף
נכנסים לדף Create an instance במסוף Cloud de Confiance .
בחלונית Machine configuration:
- בוחרים את האזור (Region) והתחום (Zone) שבהם רוצים לארח את המכונה הווירטואלית.
- בוחרים את הגדרת המכונה של המכונה הווירטואלית:
- כדי ליצור מכונה וירטואלית למטרות כלליות, בוחרים באפשרות General purpose, ובקטע Series בוחרים באפשרות N4, N4D, N4A, N2, N2D או N1.
- כדי ליצור מכונה וירטואלית מסוג N1 בהתאמה אישית עם מעבדי GPU מצורפים, בוחרים באפשרות GPUs ומבצעים את הפעולות הבאות:
- ברשימה GPU type, בוחרים באפשרות NVIDIA T4, NVIDIA V100 או NVIDIA Tesla P4.
- ברשימה Number of GPUs, בוחרים את מספר יחידות ה-GPU.
- בקטע Machine type, בוחרים באפשרות Custom.
- כדי לציין את מספר ה-vCPUs, גוררים את פס ההזזה Cores או מזינים את הערך בשדה.
- כדי להוסיף זיכרון מורחב, לוחצים על הרחבת הזיכרון. כדי לציין את כמות הזיכרון לסוג המכונה, גוררים את פס ההזזה Memory או מזינים את הערך בשדה. במסוף מוצגת העלות המשוערת של ה-VM בזמן שאתם עורכים את מספר ה-vCPU ואת כמות הזיכרון.
אופציונלי: מציינים אפשרויות הגדרה אחרות. למידע נוסף, ראו אפשרויות הגדרה במהלך יצירת מכונה.
כדי ליצור את המכונה הווירטואלית ולהפעיל אותה, לוחצים על Create.
gcloud
כדי ליצור סוג מכונה בהתאמה אישית עם זיכרון מורחב, משתמשים בפקודה gcloud compute instances create עם הדגל --machine-type והסיומת -ext:
gcloud compute instances create INSTANCE_NAME \
--zone=ZONE \
--machine-type=MACHINE_SERIES-custom-NUMBER_OF_VCPUS-AMOUNT_OF_MEMORY_MB-ext
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_NAME: שם המכונה. -
ZONE: האזור שבו רוצים ליצור את המכונה. -
MACHINE_SERIES: סדרת המכונות באותיות קטנות שתומכת בזיכרון מורחב, כמוn4,n4d,n4a,n2אוn2d. ב-N1, צריך להשמיט אתMACHINE_SERIES-ולהתחיל ב-custom-. -
NUMBER_OF_VCPUS: מספר ה-vCPU. -
AMOUNT_OF_MEMORY_MB: כמות הזיכרון הכוללת ב-MB. הערך הזה חייב להיות כפולה של מספר שלם של 256MB.
בדוגמה הבאה נוצר סוג מכונה N2 בהתאמה אישית עם 2 יחידות vCPU וזיכרון מורחב בנפח 20GB (20,480MB) באזור us-central1-a:
gcloud compute instances create example-instance \
--zone=us-central1-a \
--machine-type=n2-custom-2-20480-ext
המשך
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Go במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Go API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Java API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Node.js API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Python API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
REST
כדי ליצור מכונה עם זיכרון מורחב, צריך להפעיל את ה-method instances.insert ולהוסיף את -ext לשדה machineType כדי להרחיב את הזיכרון עד למגבלה של סדרת המכונות הזו:
zones/ZONE/machineTypes/MACHINE_SERIES-custom-NUMBER_OF_VCPUS-AMOUNT_OF_MEMORY_MB-ext
מחליפים את מה שכתוב בשדות הבאים:
-
ZONE: האזור שבו רוצים ליצור את המכונה. -
MACHINE_SERIES: סדרת המכונות באותיות קטנות, למשלn4,n4d,n4a,n2אוn2d. ב-N1, משמיטים אתMACHINE_SERIES-ומתחילים ב-custom-. -
NUMBER_OF_VCPUS: מספר ה-vCPU. -
AMOUNT_OF_MEMORY_MB: כמות הזיכרון הכוללת ב-MB. הערך הזה חייב להיות כפולה של מספר שלם של 256MB.
לדוגמה, הפקודה הבאה מציינת מכונה מסוג N2 עם 2 מעבדי vCPU ו-20GB (20,480MB) של זיכרון מורחב:
zones/ZONE/machineTypes/n2-custom-2-20480-ext
הוספת זיכרון מורחב למכונה וירטואלית קיימת
כדי להוסיף עוד זיכרון למכונה קיימת שמשתמשת בסוג מכונה בהתאמה אישית, קודם צריך לעצור את המכונה. אחרי שהמכונה נעצרת, מבצעים את השלבים הבאים כדי להוסיף עוד זיכרון למכונה הווירטואלית:המסוף
נכנסים לדף VM instances במסוף Cloud de Confiance .
לוחצים על השם של המכונה הווירטואלית שרוצים לשנות.
בחלק העליון של הדף, לוחצים על עריכה.
בקטע Machine configuration, מוודאים שהאפשרות Custom נבחרה בשדה Machine type.
כדי להוסיף זיכרון, בוחרים באפשרות Extend Memory ומציינים את כמות הזיכרון (Memory) שצריך.
לוחצים על Save.
כדי להפעיל מחדש את המכונה הווירטואלית, לוחצים על Start / Resume בחלק העליון של הדף.
gcloud
מריצים את הפקודה
gcloud compute instances stopכדי לעצור את ה-VM:gcloud compute instances stop INSTANCE_NAME \ --zone=ZONEכדי לעדכן את סוג המכונה בהתאמה אישית עם זיכרון מורחב, מריצים את הפקודה
gcloud compute instances set-machine-typeעם הדגלים--custom-cpu,--custom-memory,--custom-vm-typeו---custom-extensions:gcloud compute instances set-machine-type INSTANCE_NAME \ --zone=ZONE \ --custom-cpu=NUMBER_OF_VCPUS \ --custom-memory=AMOUNT_OF_MEMORY \ --custom-vm-type=MACHINE_SERIES \ --custom-extensionsלחלופין, אפשר להעביר את המחרוזת המלאה של סוג המכונה בהתאמה אישית עם הסיומת
-extלדגל--machine-type:gcloud compute instances set-machine-type INSTANCE_NAME \ --zone=ZONE \ --machine-type=MACHINE_SERIES-custom-NUMBER_OF_VCPUS-AMOUNT_OF_MEMORY_MB-extמחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_NAME: שם המכונה הווירטואלית. -
ZONE: האזור שבו נמצאת המכונה הווירטואלית. -
NUMBER_OF_VCPUS: מספר ה-vCPU. -
AMOUNT_OF_MEMORY: הכמות הכוללת של הזיכרון עם סיומת יחידה (MBאוGB), או ב-GB אם משמיטים את היחידה. -
AMOUNT_OF_MEMORY_MB: הכמות הכוללת של הזיכרון ב-MB. הערך הזה חייב להיות כפולה של מספר שלם של 256MB. -
MACHINE_SERIES: סדרת המכונות באותיות קטנות שתומכת בזיכרון מורחב, כמוn4,n4d,n4a,n2,n2dאוn1. ב-N1 עם הדגל--machine-type, משמיטים אתMACHINE_SERIES-ומתחילים עםcustom-.
-
מפעילים מחדש את ה-VM באמצעות הפקודה
gcloud compute instances start:gcloud compute instances start INSTANCE_NAME \ --zone=ZONE
המשך
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Go במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Go API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Java API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Node.js API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Python API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
REST
- עוצרים את המכונה הווירטואלית באמצעות קריאה ל-
instances.stopmethod. מעדכנים את משאבי סוג המכונה באמצעות קריאה ל-method
instances.setMachineTypeוציון הסיומת-extבשדהmachineType:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/setMachineType { "machineType": "zones/ZONE/machineTypes/MACHINE_SERIES-custom-NUMBER_OF_VCPUS-AMOUNT_OF_MEMORY_MB-ext" }מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שמכיל את המכונה הווירטואלית. -
ZONE: האזור שבו נמצאת המכונה הווירטואלית. -
INSTANCE_NAME: שם המכונה הווירטואלית. -
MACHINE_SERIES: סדרת המכונות באותיות קטנות, למשלn4,n4d,n4a,n2אוn2d. ב-N1, משמיטים אתMACHINE_SERIES-ומתחילים ב-custom-. -
NUMBER_OF_VCPUS: מספר ה-vCPU. -
AMOUNT_OF_MEMORY_MB: הכמות הכוללת של הזיכרון ב-MB. הערך הזה חייב להיות כפולה של מספר שלם של 256MB.
-
מפעילים מחדש את ה-VM באמצעות קריאה ל-
instances.start.
המאמרים הבאים
- מידע נוסף על משפחות מכונות
- אחרי שיוצרים מכונה וירטואלית, אפשר להשלים מדריך כדי להתחיל להשתמש בה.
- איך מתחברים למכונה וירטואלית