אתם יכולים ליצור תמונות בהתאמה אישית מדיסקים, תמונות, snapshots או תמונות שמאוחסנות ב-Cloud Storage, ולהשתמש בתמונות האלה כדי ליצור מופעים של מכונות וירטואליות (VM). תמונות בהתאמה אישית הן פתרון אידיאלי במקרים שבהם יצרתם ושיניתם דיסק אתחול מתמיד או תמונה ספציפית למצב מסוים, ואתם צריכים לשמור את המצב הזה כדי ליצור מכונות וירטואליות.
לחלופין, אפשר להשתמש בכלי לייבוא דיסק וירטואלי כדי לייבא תמונות של דיסק הפעלה ל-Compute Engine מהמערכות הקיימות ולהוסיף אותן לרשימת התמונות המותאמות אישית.
לפני שמתחילים
- קוראים את המאמר בנושא תמונות.
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי 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 באמצעות המאגר המאוחד לניהול זהויות.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
המשך
כדי להשתמש בדוגמאות של 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 Instance Admin (v1) (
roles/compute.instanceAdmin.v1) -
כדי להתחבר למופע שמצורף אליו חשבון שירות:
משתמש בחשבון שירות (גרסה 1) (
roles/iam.serviceAccountUser)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקידים המוגדרים מראש האלה כוללים את ההרשאות שנדרשות ליצירת תמונה בהתאמה אישית. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי ליצור תמונה בהתאמה אישית, צריך את ההרשאות הבאות:
-
compute.images.create -
כדי ליצור תמונה בהתאמה אישית מדיסק:
-
compute.disks.useReadOnlyבדיסק -
iam.serviceAccounts.actAsבחשבון השירות של המכונה, אם הדיסק הוא דיסק האתחול של מכונה שמצורף אליה חשבון שירות
-
-
כדי ליצור אימג' בהתאמה אישית מאימג' קיים:
compute.images.useReadOnlyבאימג' המקור -
כדי ליצור אימג' בהתאמה אישית מ-snapshot רגיל או מקובץ snapshot של ארכיון:
compute.snapshots.useReadOnlyב-snapshot המקור -
כדי להוסיף תווית לתמונה החדשה:
compute.images.setLabelsלוחצים על התווית
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
יצירת תמונה בהתאמה אישית
בקטע הזה מוסבר איך ליצור תמונה בהתאמה אישית במכונת VM של Linux. מידע על יצירת תמונת Windows זמין במאמר יצירת תמונת Windows.
בחירת מיקום לאחסון התמונות
כשיוצרים תמונה בהתאמה אישית, אפשר לציין את המיקום שלה ב-Cloud Storage, לא כולל מיקומים בשני אזורים. כשמציינים את מיקום האחסון של התמונות, אפשר לעמוד בדרישות הרגולטוריות ובדרישות התאימות שלכם לגבי סביבת נתונים, וגם בדרישות הזמינות הגבוהה שלכם, על ידי יתירות באזורים שונים. כדי ליצור, לשנות ולמחוק תמונות שמאוחסנות ב-Cloud Storage, צריך להיות לכם roles/compute.storageAdmin.
התכונה 'מיקום האחסון' היא אופציונלית. אם לא בוחרים מיקום, Compute Engine מאחסן את התמונה באזור הרב-אזורי הקרוב ביותר למקור התמונה. לדוגמה, כשיוצרים תמונה מדיסק מקור שנמצא באזור us-central1, ואם לא מציינים מיקום לתמונה המותאמת אישית, Compute Engine מאחסן את התמונה באזור us שכולל מספר אזורים.
אם התמונה לא זמינה באזור שבו אתם יוצרים מכונה וירטואלית, מערכת Compute Engine שומרת את התמונה במטמון באותו אזור בפעם הראשונה שבה אתם יוצרים מכונה וירטואלית.
כדי לראות את המיקום שבו תמונה מאוחסנת, משתמשים בפקודה images describe מ-gcloud compute:
gcloud compute images describe IMAGE_NAME \
--project=PROJECT_IDמחליפים את מה שכתוב בשדות הבאים:
IMAGE_NAME: השם של התמונה.
PROJECT_ID: מזהה הפרויקט שאליו שייך התמונה.
כל התמונות הקיימות שלכם לפני השקת התכונה הזו יישארו במקומן, השינוי היחיד הוא שתוכלו לראות את מיקום התמונה של כל התמונות שלכם. אם יש לכם תמונה קיימת שאתם רוצים להעביר, אתם צריכים ליצור אותה מחדש במיקום החדש.
הכנת המכונה הווירטואלית לתמונה
אתם יכולים ליצור תמונה מדיסק גם כשהוא מחובר למכונה וירטואלית פעילה. עם זאת, התמונה תהיה אמינה יותר אם תעבירו את המכונה הווירטואלית למצב שקל יותר לתמונה ללכוד. בקטע הזה מוסבר איך להכין את דיסק האתחול לתמונה.
צמצום כתיבת הנתונים בדיסק של אחסון מתמיד
כדי לצמצם את פעולות הכתיבה לדיסק, אפשר להשתמש באחד מהתהליכים הבאים:
מפסיקים את המכונה הווירטואלית כדי שהיא תוכל להיסגר ולהפסיק לכתוב נתונים בדיסק הקבוע.
אם אי אפשר לעצור את המכונה הווירטואלית לפני שיוצרים את התמונה, צריך לצמצם את מספר הפעולות שכותבות לדיסק ולסנכרן את מערכת הקבצים. כדי לצמצם את הכתיבה לדיסק הקשיח, פועלים לפי השלבים הבאים:
- משהים אפליקציות או תהליכים של מערכת ההפעלה שכותבים נתונים לדיסק המתמשך.
- אם צריך, מריצים אפליקציה כדי לנקות את הדיסק. לדוגמה, ב-MySQL יש את ההצהרה
FLUSH. יכול להיות שבאפליקציות אחרות יש תהליכים דומים. - מונעים מהאפליקציות לכתוב לדיסק האחסון המתמיד.
- מריצים את
sudo sync.
השבתת אפשרות המחיקה האוטומטית של הדיסק
כברירת מחדל, האפשרות למחיקה אוטומטית מופעלת בדיסקים של אתחול. לפני שיוצרים תמונה מדיסק, משביתים את המחיקה האוטומטית כדי למנוע את המחיקה האוטומטית של הדיסק כשמוחקים את המכונה הווירטואלית.כדי להשבית את המחיקה האוטומטית של הדיסק, משתמשים באחת מהשיטות הבאות:
המסוף
נכנסים לדף VM instances במסוף Cloud de Confiance .
לוחצים על השם של המכונה הווירטואלית שמשמשת כמקור ליצירת תמונה.
הדף VM instance details מוצג.
לוחצים על Edit.
בקטע Boot disk, מוודאים שהאפשרות Keep disk מסומנת בDeletion rule.
לוחצים על Save.
gcloud
ב-Google Cloud CLI, משתמשים בפקודה gcloud compute instances set-disk-auto-delete כדי להשבית את אפשרות המחיקה האוטומטית של הדיסק.
gcloud compute instances set-disk-auto-delete VM_NAME \
--no-auto-delete \
--disk=SOURCE_DISK
מחליפים את מה שכתוב בשדות הבאים:
-
VM_NAME: השם של מופע ה-VM. -
SOURCE_DISK: השם של הדיסק שממנו רוצים ליצור את התמונה.
המשך
Go
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Goהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Go API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Java
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Java API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Node.js
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Node.jsהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Node.js API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Python
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Python API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
REST
כדי להגדיר את אפשרות המחיקה האוטומטית של דיסק, שולחים בקשת POST אל ה-method instances.setDiskAutoDelete.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setDiskAutoDelete?autoDelete=false&deviceName=SOURCE_DISK
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שאליו שייכת מכונת המקור. -
ZONE: האזור שבו נמצאת מכונת המקור. -
VM_NAME: השם של מכונת המקור. -
SOURCE_DISK: שם המכשיר של הדיסק שממנו רוצים ליצור את התמונה.
אחרי שמכינים את המכונה הווירטואלית, יוצרים את האימג'.
יצירת התמונה
אפשר ליצור תמונות דיסק מהמקורות הבאים:- דיסק לאחסון מתמיד, גם כשהדיסק הזה מצורף למכונה וירטואלית
- תמונת מצב של דיסק אחסון מתמיד (persistent disk)
- תמונה אחרת בפרויקט
- תמונה ששותפה מפרויקט אחר
- תמונת RAW דחוסה ב-Cloud Storage
אפשר ליצור תמונת דיסק פעם ב-10 דקות. אם רוצים לשלוח מספר רב של בקשות ליצירת תמונת דיסק, אפשר לשלוח לכל היותר 6 בקשות ב-60 דקות. מידע נוסף זמין במאמר בנושא מגבלות על תדירות יצירת תמונות מצב.
המסוף
נכנסים לדף Create an image במסוף Cloud de Confiance .
מציינים את השם של האימג'.
מציינים את המקור שממנו רוצים ליצור תמונה. יכול להיות שזה דיסק קשיח קבוע, תמונת מצב, תמונה אחרת או קובץ disk.raw ב-Cloud Storage.
אם אתם יוצרים תמונה מדיסק שמצורף למכונת VM שפועלת, אתם צריכים לבחור באפשרות Keep instance running כדי לאשר שאתם רוצים ליצור את התמונה בזמן שמכונת ה-VM פועלת. אפשר להכין את המכונה הווירטואלית לפני שיוצרים את התמונה.
ברשימה הנפתחת Based on source disk location (default) (על סמך מיקום דיסק המקור (ברירת מחדל)), מציינים את המיקום לאחסון התמונה. לדוגמה, מציינים
usכדי לאחסן את התמונה במספר אזורים בארה"ב, אוus-central1כדי לאחסן אותה באזורus-central1.usאם לא בוחרים מיקום, Compute Engine מאחסן את התמונה באזור הרב-אזורי הקרוב ביותר למיקום המקור של התמונה.אופציונלי: מציינים את המאפיינים של התמונה.
- משפחה: משפחת התמונות שאליה שייכת התמונה החדשה.
- תיאור: תיאור של התמונה המותאמת אישית.
- תווית: תווית לקיבוץ משאבים.
מציינים את מפתח ההצפנה. אפשר לבחור בין מפתח Google Cloud-powered encryption key, מפתח Cloud Key Management Service (Cloud KMS) או מפתח הצפנה שסופק על ידי הלקוח (CSEK). אם לא מצוין מפתח הצפנה, התמונות מוצפנות באמצעות Google Cloud-powered encryption key.
לוחצים על יצירה כדי ליצור את התמונה.
gcloud
ב-Google Cloud CLI, משתמשים בפקודה gcloud compute images create כדי ליצור תמונה בהתאמה אישית.
כדי ליצור תמונה מדיסק מקור:
הדגל --force הוא דגל אופציונלי שמאפשר ליצור את התמונה ממופע פעיל. כברירת מחדל, אי אפשר ליצור תמונות ממופעים פעילים. מציינים את הדגל הזה רק אם בטוחים שרוצים ליצור את התמונה בזמן שהמופע פועל.
gcloud compute images create IMAGE_NAME \
--source-disk=SOURCE_DISK \
--source-disk-zone=ZONE \
[--family=IMAGE_FAMILY] \
[--storage-location=LOCATION] \
[--force]
מחליפים את מה שכתוב בשדות הבאים:
IMAGE_NAME: שם לתמונה החדשה-
SOURCE_DISK: הדיסק שממנו רוצים ליצור את התמונה -
ZONE: האזור שבו נמצא הדיסק -
IMAGE_FAMILY: אופציונלי: דגל שמציין לאיזו משפחת תמונות התמונה הזו שייכת -
LOCATION: אופציונלי: דגל שמאפשר לכם לציין את האזור או את מספר האזורים שבהם התמונה מאוחסנת. לדוגמה, אפשר לצייןusכדי לאחסן את התמונה במספר אזוריםus, או לצייןus-central1כדי לאחסן אותה באזורus-central1. אם לא בוחרים אזור, Compute Engine מאחסן את התמונה באזור הרב-אזורי הקרוב ביותר למיקום המקור של התמונה.
יצירת תמונה מתמונת מקור:
gcloud compute images create IMAGE_NAME \ --source-image=SOURCE_IMAGE \ [--source-image-project=IMAGE_PROJECT] \ [--family=IMAGE_FAMILY] \ [--storage-location=LOCATION]
מחליפים את מה שכתוב בשדות הבאים:
IMAGE_NAME: שם לתמונה החדשה.-
SOURCE_IMAGE: התמונה שממנה רוצים ליצור את התמונה החדשה. -
IMAGE_PROJECT: אופציונלי: הפרויקט שבו נמצאת תמונת המקור. משתמשים בפרמטר הזה אם רוצים להעתיק תמונה מפרויקט אחר. -
IMAGE_FAMILY: אופציונלי: משפחת התמונות שהתמונה החדשה שייכת לה. -
LOCATION: אופציונלי: מאפשר לציין את האזור או את מספר האזורים שבהם התמונה מאוחסנת. לדוגמה, מצייניםusכדי לאחסן את התמונה במספר אזורים בארה"ב, אוus-central1כדי לאחסן אותה באזורus-central1.usאם לא בוחרים מיקום, Compute Engine מאחסן את התמונה באזור הרב-אזורי הקרוב ביותר למיקום המקור של התמונה.
כדי ליצור תמונה מקובץ snapshot:
gcloud compute images create IMAGE_NAME \
--source-snapshot=SOURCE_SNAPSHOT \
[--storage-location=LOCATION]
מחליפים את מה שכתוב בשדות הבאים:
IMAGE_NAME: שם לתמונה החדשה-
SOURCE_SNAPSHOT: קובץ ה-snapshot שממנו רוצים ליצור את התמונה -
LOCATION: אופציונלי: דגל שמאפשר לכם לציין את האזור או את מספר האזורים שבהם התמונה מאוחסנת. לדוגמה, אפשר לצייןusכדי לאחסן את התמונה במספר אזוריםus, או לצייןus-central1כדי לאחסן אותה באזורus-central1. אם לא בוחרים אזור, Compute Engine מאחסן את התמונה באזור הרב-אזורי הקרוב ביותר למיקום המקור של התמונה.
איך רואים את המיקום של תמונה:
משתמשים בפקודה gcloud compute images describe כדי לראות את המיקום של תמונה.
gcloud compute images describe IMAGE_NAME
מחליפים את IMAGE_NAME בשם האימג' שרוצים לבדוק.
המשך
Go
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Goהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Go API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Java
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Java API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Python
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של Compute Engine באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Compute Engine Python API.
כדי לבצע אימות ב-Compute Engine, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
REST
שולחים בקשת POST אל השיטה images().insert, כתובת URL בגוף הבקשה שמפנה אל אובייקט המקור שממנו רוצים ליצור את התמונה. צריך לציין את כתובות ה-URL למשאבים באמצעות מזהה הפרויקט ושמות המשאבים שלכם.
יצירת תמונה מדיסק אחסון מתמיד:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images
{
"name": "IMAGE_NAME",
"sourceDisk": "/zones/ZONE/disks/SOURCE_DISK",
("storageLocations": "LOCATION",)
("forceCreate": "TRUE")
}
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שאליו שייך התמונה. -
IMAGE_NAME: שם לתמונה החדשה שרוצים ליצור. -
ZONE: האזור שבו נמצא דיסק המקור. -
SOURCE_DISK: הדיסק שממנו רוצים ליצור את התמונה. -
LOCATION: אופציונלי: מיקום האחסון של התמונה. לדוגמה, מצייניםusכדי לאחסן את התמונה באזורusשכולל מספר אזורים, אוus-central1כדי לאחסן אותה באזורus-central1. אם לא בוחרים אזור, Compute Engine מאחסן את התמונה באזור הרב-אזורי הקרוב ביותר למיקום המקור של התמונה.
הפרמטר האופציונלי forceCreate מאפשר ליצור את האימג' ממכונה וירטואלית (VM) שפועלת. מציינים TRUE רק אם בטוחים שרוצים ליצור את התמונה ממכונה וירטואלית פעילה. הגדרת ברירת המחדל forceCreate היא FALSE.
יצירת תמונה מתמונה אחרת:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images
{
"name": "IMAGE_NAME",
"sourceImage": "/global/images/SOURCE_IMAGE",
("storageLocations": "LOCATION")
}
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: הפרויקט שהתמונה שייכת לו. -
IMAGE_NAME: שם לתמונה החדשה שרוצים ליצור. -
SOURCE_IMAGE: התמונה שממנה רוצים ליצור את התמונה. -
LOCATION: אופציונלי: מיקום האחסון של התמונה. לדוגמה, מצייניםusכדי לאחסן את התמונה באזורusשכולל מספר אזורים, אוus-central1כדי לאחסן אותה באזורus-central1. אם לא בוחרים אזור, Compute Engine מאחסן את התמונה באזור המרובה הקרוב ביותר למיקום המקור של התמונה.
כדי ליצור תמונה מקובץ snapshot:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images
{
"name": "IMAGE_NAME",
"sourceSnapshot": "(/SOURCE_PROJECT_ID)/global/snapshots/SOURCE_SNAPSHOT",
("storageLocations": "LOCATION")
}
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: הפרויקט שאליו התמונה שייכת. -
IMAGE_NAME: שם לתמונה החדשה שרוצים ליצור. -
SOURCE_PROJECT_ID: אופציונלי: הפרויקט שבו נמצאת התמונה. צריכה להיות לכם הרשאה לגשת למשאב של התמונה המלאה באותו פרויקט. -
SOURCE_SNAPSHOT: קובץ ה-snapshot שממנו רוצים ליצור את התמונה. -
LOCATION: אופציונלי: מיקום האחסון של התמונה. לדוגמה, מצייניםusכדי לאחסן את התמונה באזורusשכולל מספר אזורים, אוus-central1כדי לאחסן אותה באזורus-central1. אם לא בוחרים אזור, Compute Engine מאחסן את התמונה באזור הרב-אזורי הקרוב ביותר למיקום המקור של התמונה.
מידע נוסף על הוספת תמונות זמין במאמר בנושא תמונות.
שיתוף התמונה
אחרי שיוצרים תמונה בהתאמה אישית, אפשר לשתף אותה בין פרויקטים. אם אתם מאפשרים למשתמשים מפרויקט אחר להשתמש בתמונות המותאמות אישית שלכם, הם יכולים לגשת לתמונות האלה על ידי ציון פרויקט התמונה בבקשה שלהם.
הפעלת תכונות של מערכת ההפעלה לאורחים
אפשר להשתמש בתכונות של מערכת הפעלה (OS) אורחת כדי להגדיר את האפשרויות הבאות של רשת, אבטחה, אחסון ומערכת הפעלה בתמונות מותאמות אישית. תמונות בהתאמה אישית עם התכונות המוגדרות האלה משמשות כדיסקי אתחול.
gcloud
משתמשים בפקודה gcloud compute images
create עם הדגל --guest-os-features כדי ליצור קובץ אימג' חדש בהתאמה אישית מקובץ אימג' קיים בהתאמה אישית.
gcloud compute images create IMAGE_NAME \
--source-image=SOURCE_IMAGE \
[--source-image-project=IMAGE_PROJECT] \
--guest-os-features="FEATURES,..." \
[--storage-location=LOCATION]
מחליפים את מה שכתוב בשדות הבאים:
-
IMAGE_NAME: השם של התמונה החדשה -
SOURCE_IMAGE: תמונה שעליה יתבססו התמונה החדשה
IMAGE_PROJECT: אופציונלי: הפרויקט שמכיל את תמונת המקורמשתמשים בפרמטר הזה כדי להעתיק תמונה מפרויקט אחר.
FEATURES: תגי מערכת הפעלה של אורח כדי להפעיל תכונות למכונות וירטואליות שאתם יוצרים מתמונותכדי להוסיף כמה ערכים, צריך להפריד ביניהם באמצעות פסיקים. מגדירים אחד או יותר מהערכים הבאים:
-
VIRTIO_SCSI_MULTIQUEUE. שימוש במכשירי SSD מקומיים כחלופה ל-NVMe. מידע נוסף על תמונות שתומכות ב-SCSI זמין במאמר בנושא בחירת ממשק.בתמונות של Linux, אפשר להפעיל SCSI עם תורים מרובים במכשירי SSD מקומיים בתמונות עם גרסאות ליבה 3.17 ואילך. בתמונות Windows, אפשר להפעיל SCSI עם תורים מרובים במכשירי SSD מקומיים בתמונות עם מנהל התקן של Compute Engine Windows בגרסה 1.2.
-
WINDOWS. לתייג תמונות אתחול מותאמות אישית של Windows Server כתמונות של Windows. -
MULTI_IP_SUBNET. הגדרת ממשקים עם מסכת רשת שונה מ-/32. מידע נוסף על ממשקי רשת מרובים ועל אופן הפעולה שלהם זמין במאמר סקירה כללית ודוגמאות של ממשקי רשת מרובים. -
UEFI_COMPATIBLE. אתחול עם קושחת UEFI והתכונות הבאות של מכונה וירטואלית מוגנת:- הפעלה מאובטחת: מושבתת כברירת מחדל
- מודול פלטפורמה וירטואלי מהימן (vTPM): מופעל כברירת מחדל
- מעקב אחר שלמות: מופעל כברירת מחדל
-
GVNIC. תמיכה ברוחבי פס גבוהים יותר ברשת, עד 50 Gbps עד 100 Gbps. מידע נוסף זמין במאמר בנושא שימוש ב-Google Virtual NIC. -
IDPF. תמיכה בממשקי רשת של פונקציית נתיב נתונים של תשתית Intel (IDPF). -
SEV_CAPABLEאוSEV_SNP_CAPABLE. משתמשים בתגים האלה אם רוצים להשתמש בתמונה במופע של Confidential VM עם תמיכה ב-AMD Secure Encrypted Virtualization (SEV) או ב-AMD Secure Encrypted Virtualization-Secure Nested Paging (SEV-SNP). כדי לבדוק אם הליבה תומכת ב-AMD SEV או ב-AMD SEV-SNP, אפשר לעיין ב פרטים על ליבת Linux. -
SEV_LIVE_MIGRATABLE_V2. משתמשים בתג הזה אם רוצים להשתמש בתמונה במופע של Confidential VM שתומך ב מיגרציה פעילה ב-AMD SEV. כדי לבדוק אם הליבה תומכת במיגרציה פעילה, אפשר לעיין ב פרטי ליבת Linux. -
TDX_CAPABLE. משתמשים בתג הזה אם רוצים להשתמש בתמונה במופע של Confidential VM עם תמיכה ב-Intel Trust Domain Extensions (TDX). כדי לבדוק אם ליבת המערכת תומכת ב-Intel TDX, אפשר לעיין ב פרטים על ליבת Linux.
-
LOCATION: אופציונלי: אזור או מספר אזורים שבהם יאוחסן התמונהלדוגמה, מציינים
usכדי לאחסן את התמונה במספר אזוריםus, אוus-central1כדי לאחסן אותה באזורus-central1. אם לא בוחרים מיקום, Compute Engine מאחסן את התמונה באזור הרב-אזורי הקרוב ביותר למיקום המקור של התמונה.
REST
משתמשים בשיטה images().insert עם הדגל guestOsFeatures כדי ליצור תמונה חדשה בהתאמה אישית מתמונה קיימת בהתאמה אישית.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images
{
"name": "IMAGE_NAME",
"sourceImage": "(projects/IMAGE_PROJECT)/global/images/SOURCE_IMAGE",
("storageLocations": "LOCATION",)
"guestOsFeatures": [
{
"type": "FEATURES"
}
]
}
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: המזהה של הפרויקט שבו רוצים ליצור את התמונה החדשה IMAGE_NAME: שם לתמונה החדשה
IMAGE_PROJECT: אופציונלי: הפרויקט שמכיל את תמונת המקורמשתמשים בפרמטר הזה כדי להעתיק תמונה מפרויקט אחר.
SOURCE_IMAGE: התמונה שעליה יתבססו התמונות החדשות
LOCATION: אופציונלי: אזור או אזור מרובה שבו מאחסנים את התמונהלדוגמה, מציינים
usכדי לאחסן את התמונה במספר אזוריםus, אוus-central1כדי לאחסן אותה באזורus-central1. אם לא בוחרים אזור, Compute Engine מאחסן את התמונה באזור הרב-אזורי הקרוב ביותר למיקום המקור של התמונה.
FEATURES: תגי מערכת הפעלה של אורח כדי להפעיל תכונות למכונות וירטואליות שאתם יוצרים מתמונותכדי להוסיף כמה ערכים, צריך להפריד ביניהם באמצעות פסיקים. מגדירים אחד או יותר מהערכים הבאים:
-
VIRTIO_SCSI_MULTIQUEUE. שימוש במכשירי SSD מקומיים כחלופה ל-NVMe. מידע נוסף על תמונות שתומכות ב-SCSI זמין במאמר בנושא בחירת ממשק.בתמונות של Linux, אפשר להפעיל SCSI עם תורים מרובים במכשירי SSD מקומיים בתמונות עם גרסאות ליבה 3.17 ואילך. בתמונות Windows, אפשר להפעיל SCSI עם תורים מרובים במכשירי SSD מקומיים בתמונות עם מנהל התקן של Compute Engine Windows בגרסה 1.2.
-
WINDOWS. לתייג תמונות אתחול מותאמות אישית של Windows Server כתמונות של Windows. -
MULTI_IP_SUBNET. הגדרת ממשקים עם מסכת רשת שונה מ-/32. מידע נוסף על ממשקי רשת מרובים ועל אופן הפעולה שלהם זמין במאמר סקירה כללית ודוגמאות של ממשקי רשת מרובים. -
UEFI_COMPATIBLE. אתחול עם קושחת UEFI ותכונות מכונה וירטואלית מוגנת הבאות:- הפעלה מאובטחת: מושבתת כברירת מחדל
- מודול פלטפורמה וירטואלי מהימן (vTPM): מופעל כברירת מחדל
- מעקב אחר שלמות: מופעל כברירת מחדל
-
GVNIC. תמיכה ברוחבי פס גבוהים יותר ברשת, עד 50 Gbps עד 100 Gbps. מידע נוסף זמין במאמר בנושא שימוש ב-Google Virtual NIC. -
IDPF. תמיכה בממשקי רשת של פונקציית נתיב נתונים של תשתית Intel (IDPF). -
SEV_CAPABLEאוSEV_SNP_CAPABLE. משתמשים בתגים האלה אם רוצים להשתמש בתמונה במופע של Confidential VM עם תמיכה ב-AMD Secure Encrypted Virtualization (SEV) או ב-AMD Secure Encrypted Virtualization-Secure Nested Paging (SEV-SNP). כדי לבדוק אם הליבה תומכת ב-AMD SEV או ב-AMD SEV-SNP, אפשר לעיין ב פרטים על ליבת Linux. -
SEV_LIVE_MIGRATABLE_V2. משתמשים בתג הזה אם רוצים להשתמש בתמונה במופע של Confidential VM שתומך ב מיגרציה פעילה ב-AMD SEV. כדי לבדוק אם הליבה תומכת במיגרציה פעילה, אפשר לעיין ב פרטי ליבת Linux. -
TDX_CAPABLE. משתמשים בתג הזה אם רוצים להשתמש בתמונה במופע של Confidential VM עם תמיכה ב-Intel Trust Domain Extensions (TDX). כדי לבדוק אם ליבת המערכת תומכת ב-Intel TDX, אפשר לעיין ב פרטים על ליבת Linux.
-
הימנעות ממידע רגיש במשתני UEFI
משתני Unified Extensible Firmware Interface (UEFI) הם משתנים של צמדי מפתח/ערך שמשמשים את קושחת ה-UEFI בזמן האתחול כדי לאתחל את מערכת ההפעלה של מכונה וירטואלית. בניגוד למכונות פיזיות, שבהן המשתנים מאוחסנים בצ'יפ חומרה, ב-Compute Engine המשתנים האלה מאוחסנים בצורה וירטואלית. לכן, במערכות הפעלה רבות, כל האפליקציות והמשתמשים יכולים לגשת למשתנים האלה ולמידע הזה.
לכן, Google ממליצה בחום לא לכתוב או לאחסן משתני UEFI מידע רגיש או פרטים אישיים מזהים, כמו סיסמאות או מפתחות פרטיים.
שיקולים לגבי תמונות Arm
Google מציעה את סדרות המכונות A4X, C4A ו-Tau T2A שפועלות בפלטפורמות של מעבדי Arm. אפשר להפעיל מכונה וירטואלית עם אחת מסדרות המכונות האלה, ואז להשתמש במכונת ה-VM הזו כמקור ליצירת תמונת Arm. התהליך ליצירת תמונת Arm מותאמת אישית זהה לתהליך ליצירת תמונת x86.
כדי לעזור למשתמשים להבחין בין תמונות Arm לבין תמונות x86, תמונות Arm יכללו שדה architecture עם הערך ARM64. הערכים האפשריים בשדה הזה הם:
ARCHITECTURE_UNSPECIFIEDX86_64ARM64
משתמשים בתמונות יכולים לסנן לפי השדה הזה כדי למצוא תמונות שמבוססות על x86 או על Arm.