לפני שמתחילים
- כשיוצרים מכונות מתוך תמונות באמצעות Google Cloud CLI או Compute Engine API, יש מגבלה של 20 מכונות בשנייה. אם אתם צריכים ליצור מספר גדול יותר של מכונות וירטואליות בשנייה, אתם יכולים לבקש שינוי במכסה של משאב התמונות.
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים Google Cloud ולממשקי ה-API, לא צריך להגדיר אימות.
gcloud
-
התקינו את ה-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 .
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות ליצירת מכונה מתמונה בהתאמה אישית, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין מכונות של Compute (v1) (roles/compute.instanceAdmin.v1) בפרויקט.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
זהו תפקיד שמוגדר מראש וכולל את ההרשאות שנדרשות ליצירת מכונה וירטואלית מאימג' בהתאמה אישית. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי ליצור מכונה מאימג' בהתאמה אישית, צריך את ההרשאות הבאות:
-
compute.instances.createבפרויקט -
כדי להשתמש באימג' בהתאמה אישית ליצירת המכונה:
compute.images.useReadOnlyבאימג'
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
יצירת מכונה מקובץ אימג' בהתאמה אישית
אם עדיין אין לכם תמונה מותאמת אישית, אתם צריכים קודם ליצור תמונה מותאמת אישית.
כדי ליצור מופע מאימג' בהתאמה אישית, פועלים לפי השלבים הבאים:
המסוף
נכנסים לדף Create an instance במסוף Google Cloud .
אם מתבקשים, בוחרים פרויקט ולוחצים על המשך.
הדף Create an instance מופיע ובו החלונית Machine configuration.
בחלונית Machine configuration:
- בשדה Name (שם), מציינים שם למופע. מידע נוסף זמין במאמר מוסכמות למתן שמות למשאבים.
אופציונלי: בשדה Zone, בוחרים תחום למכונה הזו.
ברירת המחדל היא Any (כל). אם לא תשנו את ברירת המחדל, Google תבחר בשבילכם אזור באופן אוטומטי על סמך סוג המכונה והזמינות שלה.
בוחרים את משפחת המכונות של המופע. ב Google Cloud מסוף יוצגו סדרות המכונות שזמינות למשפחת המכונות שבחרתם. אלו האפשרויות הזמינות למשפחות מכונות:
- לשימוש כללי
- אופטימיזציה של מחשוב
- אופטימיזציה של הזיכרון
- אופטימיזציה של האחסון
- אופטימיזציה של הרשת
- GPUs
- TPUs
בעמודה סדרה, בוחרים את סדרת המכונות של המופע.
אם בחרתם באפשרות GPUs כמשפחת המכונות בשלב הקודם, עכשיו בוחרים את סוג ה-GPU הרצוי. סדרת המכונות נבחרת אוטומטית לפי סוג ה-GPU שנבחר.
בקטע Machine type, בוחרים את סוג המכונה עבור המופע.
בתפריט הניווט, לוחצים על מערכת הפעלה ואחסון. בחלונית Operating system and storage שמופיעה, מגדירים את דיסק האתחול באופן הבא:
- לוחצים על Change. מופיעה החלונית דיסק אתחול עם הכרטיסייה Public images.
- לוחצים על תמונות בהתאמה אישית. מופיעה הכרטיסייה תמונות מותאמות אישית.
- כדי לבחור את פרויקט התמונה, לוחצים על Change ואז בוחרים את הפרויקט שמכיל את התמונה.
- ברשימה Image, בוחרים את התמונה שרוצים לייבא.
- ברשימה Boot disk type בוחרים את סוג דיסק האתחול.
- בשדה Size (GB), מציינים את הגודל של דיסק האתחול.
- אופציונלי: לדיסקים של מערכת ההפעלה מסוג Hyperdisk Balanced, מציינים ערכים בשדות Provisioned IOPS ו-Provisioned throughput.
- אופציונלי: כדי לראות אפשרויות הגדרה מתקדמות, מרחיבים את הקטע Show advanced configurations.
- כדי לאשר את האפשרויות של דיסק האתחול ולחזור לחלונית מערכת ההפעלה והאחסון, לוחצים על בחירה.
בתפריט הניווט, לוחצים על Networking (רשת). בחלונית Networking שמופיעה, מבצעים את הפעולות הבאות:
- עוברים לקטע Firewall.
כדי לאפשר תעבורת HTTP או HTTPS למופע, בוחרים באפשרות Allow HTTP traffic או Allow HTTPS traffic.
Compute Engine מוסיף תג רשת למופע ויוצר את כלל חומת האש המתאים לתעבורת נתונים נכנסת, שמאפשר את כל התעבורה הנכנסת ב-
tcp:80(HTTP) או ב-tcp:443(HTTPS). תג הרשת משייך את כלל חומת האש למופע. מידע נוסף זמין בסקירה הכללית של הכללים של חומת האש במאמרי העזרה של Cloud Next Generation Firewall.
אופציונלי: מציינים אפשרויות הגדרה אחרות. מידע נוסף מופיע במאמר אפשרויות הגדרה במהלך יצירת מכונה.
כדי ליצור את המכונה ולהפעיל אותה, לוחצים על Create.
gcloud
-
במסוף Google Cloud , מפעילים את Cloud Shell.
בחלק התחתון של Google Cloud המסוף יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.
מריצים את הפקודה
gcloud compute instances createכדי ליצור מכונה עם אימג' בהתאמה אישית:gcloud compute instances create VM_NAME \ --image-project IMAGE_PROJECT \ IMAGE_FLAG \ --subnet SUBNET \ --zone ZONEמחליפים את מה שכתוב בשדות הבאים:
-
VM_NAME: השם של ה-VM -
IMAGE_PROJECT: המזהה של Google Cloud הפרויקט שמכיל את התמונה -
IMAGE_FLAG: מציינים אחת מהאפשרויות הבאות:- משתמשים בדגל
--image IMAGE_NAMEכדי לציין תמונה בהתאמה אישית.לדוגמה,
--image my-debian-image-v2. - אם יצרתם את התמונות המותאמות אישית כחלק ממשפחת תמונות מותאמות אישית, צריך להשתמש בדגל
--image-family IMAGE_FAMILY_NAMEכדי לציין את משפחת התמונות המותאמות אישית.הפעולה הזו יוצרת את המכונה הווירטואלית מהתמונה העדכנית ביותר של מערכת ההפעלה ומהגרסה העדכנית ביותר של מערכת ההפעלה במשפחת התמונות המותאמות אישית. לדוגמה, אם מציינים
--image-family my-debian-family, Compute Engine יוצר מכונה וירטואלית מתמונת מערכת ההפעלה העדכנית ביותר במשפחת התמונות המותאמת אישיתmy-debian-family.
- משתמשים בדגל
SUBNET: אם רשת המשנה והמופע נמצאים באותו פרויקט, מחליפים אתSUBNETבשם של רשת משנה שנמצאת באותו אזור כמו המופע.-
ZONE: האזור של המכונה הווירטואלית
-
Terraform
כדי ליצור את קוד Terraform, אפשר להשתמש ברכיב Equivalent code במסוף Google Cloud .- נכנסים לדף VM instances במסוף Google Cloud .
- לוחצים על Create instance.
- מציינים את הפרמטרים הרצויים.
- בחלק העליון או התחתון של הדף, לוחצים על קוד מקביל ואז על הכרטיסייה Terraform כדי לראות את קוד Terraform.
המשך
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Goהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Go API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Java API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Node.jsהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Node.js API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Python API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
REST
תהליך יצירת מכונה עם קובץ אימג' בהתאמה אישית בממשק ה-API זהה לתהליך יצירת מכונה עם קובץ אימג' שזמין לציבור.
כדי ליצור את המכונה מאימג' בהתאמה אישית, משתמשים בmethod instances.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME" } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: המזהה של הפרויקט שבו רוצים ליצור את המכונה הווירטואלית -
ZONE: האזור שבו רוצים ליצור את המכונה הווירטואלית -
MACHINE_TYPE_ZONE: האזור שמכיל את סוג המכונה שרוצים להשתמש בו למכונה הווירטואלית החדשה -
MACHINE_TYPE: סוג המכונה, מוגדר מראש או מותאם אישית, של המכונה הווירטואלית החדשה -
VM_NAME: name of the new VM -
IMAGE_PROJECT: שם הפרויקט שמכיל את התמונה המותאמת אישית -
IMAGE: מציינים אחת מהאפשרויות הבאות:-
IMAGE: השם של התמונה המותאמת אישית. לדוגמה:"sourceImage": "projects/my-project-1234/global/images/my-debian-image-v2". -
IMAGE_FAMILY: אם יצרתם את התמונות המותאמות אישית כחלק מקבוצת תמונות מותאמות אישית, צריך לציין את קבוצת התמונות המותאמות אישית הזו.כך נוצרת מכונה וירטואלית מהתמונה העדכנית ביותר של מערכת ההפעלה, שלא הוצאה משימוש, במשפחת התמונות המותאמות אישית. לדוגמה, אם מציינים את הערך
"sourceImage": "projects/my-project-1234/global/images/family/my-debian-family", Compute Engine יוצר מכונה וירטואלית מהגרסה האחרונה של תמונת מערכת ההפעלה במשפחת תמונותmy-debian-familyבהתאמה אישית.
-
-
NETWORK_NAME: רשת ה-VPC שבה רוצים להשתמש עבור מכונת ה-VM. אפשר לצייןdefaultכדי להשתמש ברשת ברירת המחדל.
ENABLE_SECURE_BOOT: אופציונלי: אם בחרתם תמונה שתומכת בתכונות של מכונה וירטואלית מוגנת, Compute Engine מפעיל כברירת מחדל את מודול הפלטפורמה הווירטואלית המהימנה (vTPM) ואת המעקב אחר השלמות. ב-Compute Engine, האפשרות Secure Boot לא מופעלת כברירת מחדל.אם מציינים
trueבשבילenableSecureBoot, Compute Engine יוצר מכונה וירטואלית עם כל שלושת התכונות של מכונה וירטואלית מוגנת. אחרי שמערכת Compute Engine מפעילה את המכונה הווירטואלית, כדי לשנות את האפשרויות של מכונה וירטואלית מוגנת, צריך להפסיק את המכונה הווירטואלית.
המאמרים הבאים
- מידע נוסף על תמונות בהתאמה אישית ואיך משתפים אותן
- איך בודקים את הסטטוס של מכונה כדי לדעת מתי היא מוכנה לשימוש.
- איך מתחברים למכונה.