לפני שמתחילים
- כשיוצרים מכונות מתוך תמונות באמצעות Google Cloud CLI או Compute Engine API, יש מגבלה של 20 מכונות בשנייה. אם אתם צריכים ליצור מספר גדול יותר של מופעים בשנייה, אתם יכולים לבקש התאמה של המכסה למשאב Images.
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Google Cloud
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באימג'
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
יצירת מכונה מקובץ אימג' משותף
כדי ליצור מופע מתמונה משותפת:
המסוף
במסוףGoogle Cloud , נכנסים לדף Create an instance.
אם מוצגת בקשה לעשות זאת, בוחרים פרויקט ולוחצים על המשך.
הדף Create an instance מופיע ובו החלונית Machine configuration.
בחלונית Machine configuration:
- בשדה Name, מציינים שם למכונה. מידע נוסף זמין במאמר מוסכמות למתן שמות למשאבים.
אופציונלי: בשדה Zone, בוחרים אזור למכונה הזו.
ברירת המחדל היא Any (כל). אם לא תשנו את ברירת המחדל הזו, Google תבחר בשבילכם אזור באופן אוטומטי על סמך סוג המכונה והזמינות שלה.
בוחרים את משפחת המכונות למופע. בGoogle Cloud מסוף מוצגת סדרת המכונות שזמינה למשפחת המכונות שבחרתם. אלה האפשרויות הזמינות של משפחות מכונות:
- מטרה כללית
- אופטימיזציה של מחשוב
- מותאם לצריכת זיכרון גבוהה
- אופטימיזציה של האחסון
- אופטימיזציה לרשת
- GPUs
- TPUs
בעמודה סדרה, בוחרים את סדרת המכונות של המופע.
אם בחרתם באפשרות GPUs (מעבדי GPU) כסוג המכונה בשלב הקודם, בוחרים את סוג ה-GPU הרצוי. סדרת המכונות נבחרת אוטומטית לפי סוג ה-GPU שנבחר.
בקטע Machine type, בוחרים את סוג המכונה עבור המופע.
בתפריט הניווט, לוחצים על מערכת הפעלה ואחסון. בחלונית Operating system and storage שמופיעה, מגדירים את דיסק האתחול באופן הבא:
- לוחצים על Change. מופיעה החלונית דיסק אתחול עם הכרטיסייה Public images.
- לוחצים על תמונות בהתאמה אישית. מופיעה הכרטיסייה תמונות מותאמות אישית.
- כדי לבחור את פרויקט התמונה, לוחצים על שינוי ואז בוחרים את הפרויקט שמכיל את התמונה.
- ברשימה Image, בוחרים את התמונה שרוצים לייבא.
- ברשימה Boot disk type בוחרים את סוג דיסק האתחול.
- בשדה Size (GB) מציינים את גודל דיסק האתחול.
- אופציונלי: לדיסקים של מערכת ההפעלה מסוג Hyperdisk Balanced, מציינים ערכים בשדות Provisioned IOPS ו-Provisioned throughput.
- אופציונלי: כדי לראות אפשרויות הגדרה מתקדמות, מרחיבים את הקטע הצגת הגדרות מתקדמות.
- כדי לאשר את האפשרויות של דיסק האתחול ולחזור לחלונית מערכת ההפעלה והאחסון, לוחצים על בחירה.
בתפריט הניווט, לוחצים על 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 command, ומשתמשים בדגלים--imageו---image-projectכדי לציין את שם התמונה ואת הפרויקט שבו התמונה נמצאת:gcloud compute instances create INSTANCE_NAME \ --image=IMAGE \ --image-project=IMAGE_PROJECT
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_NAME: השם של המכונה החדשה -
IMAGE: השם של התמונה -
IMAGE_PROJECT: הפרויקט שאליו שייך התמונה
אם הפקודה מצליחה,
gcloudמגיב עם המאפיינים של המופע החדש, כמו בדוגמה הבאה:Created [https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-b/instances/example-instance]. NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS example-instance us-central1-b e2-standard-2 10.240.0.4 104.198.53.60 RUNNING
-
Terraform
התהליך ליצירת מכונה עם קובץ אימג' משותף ב-Terraform זהה לתהליך ליצירת מכונה עם קובץ אימג' שזמין לכולם.
- נכנסים לדף VM instances במסוף Google Cloud .
- לוחצים על Create instance.
- מציינים את הפרמטרים הרצויים.
- בראש הדף או בתחתית הדף, לוחצים על Equivalent code ואז על הכרטיסייה Terraform כדי לראות את קוד Terraform.
REST
תהליך יצירת מכונה באמצעות קובץ אימג' משותף ב-API זהה לתהליך של יצירת מכונה באמצעות קובץ אימג' שזמין לכולם.
כדי ליצור את המכונה מקובץ אימג' משותף, משתמשים בשיטה 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 של המכונה הווירטואלית החדשה -
IMAGE_PROJECT: שם הפרויקט שמכיל את התמונה המשותפת -
IMAGE: מציינים אחת מהאפשרויות הבאות:-
IMAGE: שם התמונה המשותפת. לדוגמה:"sourceImage": "projects/finance-project-1234/global/images/finance-debian-image-v2". -
IMAGE_FAMILY: אם התמונה המשותפת נוצרה כחלק ממשפחת תמונות בהתאמה אישית, צריך לציין את משפחת התמונות הזו.כך נוצרת מכונה וירטואלית מתמונת מערכת ההפעלה העדכנית ביותר שלא הוצאה משימוש במשפחת התמונות המותאמות אישית. לדוגמה, אם מציינים
"sourceImage": "projects/finance-project-1234/global/images/family/finance-debian-family", Compute Engine יוצר מכונה וירטואלית מהגרסה האחרונה של תמונת מערכת ההפעלה במשפחת התמונות המותאמת אישיתfinance-debian-family.
-
-
NETWORK_NAME: רשת ה-VPC שבה רוצים להשתמש עבור מכונת ה-VM. אפשר לצייןdefaultכדי להשתמש ברשת ברירת המחדל.
ENABLE_SECURE_BOOT: אופציונלי: אם בחרתם תמונה שתומכת בתכונות של Shielded VM, Compute Engine מפעיל כברירת מחדל את מודול הפלטפורמה הווירטואלית המהימנה (vTPM) ואת המעקב אחר השלמות. ב-Compute Engine, האפשרות Secure Boot לא מופעלת כברירת מחדל.אם מציינים
trueבשבילenableSecureBoot, Compute Engine יוצר מכונה וירטואלית עם כל שלושת התכונות של מכונה וירטואלית מוגנת. אחרי שמכונה וירטואלית מופעלת ב-Compute Engine, כדי לשנות את האפשרויות של מכונה וירטואלית מוגנת, צריך להפסיק את הפעילות של המכונה הווירטואלית.
המאמרים הבאים
- מידע נוסף על תמונות בהתאמה אישית ועל שיתוף שלהן
- איך בודקים את הסטטוס של מכונה כדי לדעת מתי היא מוכנה לשימוש.
- איך מתחברים למכונה.