ב-Compute Engine, אפשר להשתמש בקובצי snapshot כדי לגבות את נתוני הדיסק. מכיוון שתמונות מצב הן מצטברות, אפשר ליצור אותן עם ביצועים טובים יותר וחיובים נמוכים יותר בסך הכול על אחסון בהשוואה ליצירת קובצי אימג' מלאים של דיסקים.
קובצי snapshot עקביים לאפליקציה מתעדים את מצב נתוני האפליקציה בזמן הגיבוי, אחרי שכל העסקאות באפליקציה הושלמו וכל פעולות הכתיבה בהמתנה נמחקו מהדיסק. במכונות וירטואליות של Windows, משתמשים ב-Volume Shadow Copy Service (VSS) כדי ליצור קובצי snapshot עקביים לאפליקציות בלי לעצור קודם את המכונה או לנתק את הדיסק מהמכונה הווירטואלית.
לפני שמתחילים
- יצירת מכונה של Windows
- שיטות מומלצות ליצירת קובצי snapshot
-
אם עדיין לא עשיתם זאת, מגדירים אימות.
אימות הוא התהליך שבו הזהות שלכם מאומתת כדי לקבל גישה ל Google Cloud שירותים ולממשקי API.
כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine על ידי בחירה באחת מהאפשרויות הבאות:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
- קובצי snapshot של VSS פועלים רק במכונות Windows עם גרסת תמונה
v20160810
ואילך. למכונות עם קובצי אימג' ישנים יותר, צריך ליצור קובץ snapshot בלי להשתמש ב-VSS. - בכונן המחובר צריכה להיות מערכת קבצים מסוג NTFS, exFAT או ReFS.
- קובצי snapshot של VSS עוזרים לשמור על הנתונים רק אם אתם מריצים אפליקציות שתומכות ב-VSS ויכולות לתאם יצירת גיבוי עקבי של הנתונים.
- אם הפעולה של קובץ ה-snapshot של VSS לא מסתיימת תוך 300 שניות, קובץ ה-snapshot נכשל עם הודעת שגיאה מסוג זמן קצוב פג.
נכנסים לדף Create a Snapshot במסוף Google Cloud .
כניסה לדף Create a Snapshot- מזינים שם ל-snapshot.
-
בוחרים סוג קובץ snapshot. ברירת המחדל היא קובץ snapshot של
STANDARD
, שהיא האפשרות הטובה ביותר לגיבוי לטווח ארוך ולשחזור מאסון.כדי לשמור נתונים בצורה חסכונית יותר, בוחרים באפשרות Snapshot לארכיון.
- אופציונלי: מזינים תיאור של קובץ ה-snapshot.
- בקטע Source disk (דיסק מקור), בוחרים את הדיסק הקיים שרוצים ליצור ממנו קובץ snapshot.
בקטע Location, בוחרים את מיקום האחסון של קובצי ה-snapshot.
המיקום המוגדר כברירת מחדל, שהוגדר מראש או בהתאמה אישית בהגדרות של קובץ ה-snapshot, נבחר באופן אוטומטי. אם רוצים לשנות את ההגדרות של קובצי ה-snapshot ולשמור אותם במיקום אחסון מותאם אישית, מבצעים את הפעולות הבאות:
בוחרים את סוג מיקום האחסון הרצוי ל-snapshot.
- בוחרים באפשרות במספר אזורים כדי ליהנות מזמינות גבוהה יותר בעלות גבוהה יותר.
- כדי לשלוט טוב יותר במיקום הפיזי של הנתונים בעלות נמוכה יותר, תוכלו להשתמש בקובצי snapshot אזוריים.
- בשדה Select location בוחרים את האזור הספציפי או את מספר האזורים שבהם רוצים להשתמש. כדי להשתמש באזור או במספר אזורים הקרובים ביותר לדיסק המקור, בוחרים באפשרות Based on disk's location.
- מסמנים את האפשרות Enable application consistent snapshot.
- לוחצים על Create כדי ליצור את קובץ ה-snapshot.
כדי ליצור קובץ snapshot במיקום ברירת המחדל המוגדר מראש או בהתאמה אישית בהגדרות של קובץ ה-snapshot, משתמשים בפקודה
gcloud compute snapshots create
.gcloud compute snapshots create SNAPSHOT_NAME \ --source-disk-zone=SOURCE_ZONE \ --source-disk=SOURCE_DISK_NAME \ --snapshot-type=SNAPSHOT_TYPE \ --guest-flush
-
לחלופין, כדי לשנות את הגדרות ה-snapshot וליצור snapshot במיקום אחסון מותאם אישית, צריך לכלול את הדגל
--storage-location
כדי לציין איפה לשמור את ה-snapshot.gcloud compute snapshots create SNAPSHOT_NAME \ --source-disk-zone=SOURCE_ZONE \ --source-disk=SOURCE_DISK_NAME \ --snapshot-type=SNAPSHOT_TYPE \ --storage-location=STORAGE_LOCATION \ --guest-flush
-
(תצוגה מקדימה) כדי ליצור קובץ snapshot ברמת האזור באזור מורשה, צריך לכלול את הדגל
--region
כדי לציין איפה ליצור את קובץ ה-snapshot.gcloud beta compute snapshots create SNAPSHOT_NAME \ --region=SNAPSHOT_SCOPE_REGION --source-disk=SOURCE_DISK_NAME \ --source-disk-zone=SOURCE_ZONE \ --snapshot-type=SNAPSHOT_TYPE
- SNAPSHOT_NAME: שם לקובץ ה-snapshot.
- SOURCE_ZONE: האזור של דיסק המקור.
- SOURCE_DISK_NAME: השם של נפח הדיסק שרוצים ליצור ממנו קובץ snapshot.
- SNAPSHOT_TYPE: סוג ה-snapshot, STANDARD או ARCHIVE.
אם לא מציינים סוג של קובץ snapshot, נוצר קובץ snapshot מסוג
STANDARD
. -
STORAGE_LOCATION: אופציונלי: ל-snapshots ברמת ה-global, Cloud Storage במספר אזורים או אזור Cloud Storage שבו רוצים לאחסן את ה-snapshot. אפשר לציין רק מיקום אחסון אחד.
משתמשים בפרמטר
--storage-location
רק אם רוצים לשנות את מיקום האחסון שמוגדר כברירת מחדל בהגדרות של קובץ ה-snapshot, בין אם הוא מוגדר מראש או בהתאמה אישית. -
SNAPSHOT_SCOPE_REGION: אופציונלי: בקובצי snapshot ברמת האזור, האזור שאליו מוגדר ה-snapshot. אם כוללים את הפרמטר הזה, אי אפשר להשתמש בפרמטר
--storage-location
. השדה STORAGE_LOCATION מוגדר באופן אוטומטי ל-SNAPSHOT_SCOPE_REGION. -
כדי ליצור קובץ snapshot במיקום ברירת המחדל המוגדר מראש או בהתאמה אישית בהגדרות של קובץ ה-snapshot, שולחים בקשה מסוג
POST
לשיטהsnapshots.insert
:POST https://compute.googleapis.com/compute/beta/projects/DESTINATION_PROJECT_ID/global/snapshots { "name": "SNAPSHOT_NAME", "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME", "snapshotType": "SNAPSHOT_TYPE", "guestFlush": true, }
-
לחלופין, כדי לשנות את הגדרות קובץ ה-snapshot וליצור קובץ snapshot במיקום אחסון מותאם אישית, שולחים בקשה מסוג
POST
לשיטהsnapshots.insert
וכוללים את המאפייןstorageLocations
בבקשה:POST https://compute.googleapis.com/compute/beta/projects/DESTINATION_PROJECT_ID/global/snapshots { "name": "SNAPSHOT_NAME", "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME", "snapshotType": "SNAPSHOT_TYPE", "storageLocations": [ "STORAGE_LOCATION" ], "guestFlush": true, }
-
(תצוגה מקדימה) כדי ליצור קובץ snapshot ברמת האזור באזור מורשה, שולחים בקשה מסוג
POST
לשיטהsnapshots.insert
ומגדירים את אזור היצירה:POST https://compute.googleapis.com/compute/beta/projects/DESTINATION_PROJECT_ID/regions/SNAPSHOT_SCOPE_REGION/snapshots { "name": "SNAPSHOT_NAME", "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME", "snapshotType": "SNAPSHOT_TYPE" }
- DESTINATION_PROJECT_ID: מזהה הפרויקט שבו רוצים ליצור את קובץ ה-snapshot.
- SNAPSHOT_NAME: שם לקובץ ה-snapshot.
- SOURCE_PROJECT_ID: המזהה של פרויקט הדיסק המקור.
- SOURCE_ZONE: האזור של דיסק המקור.
- SOURCE_DISK_NAME: השם של הדיסק שממנו רוצים ליצור קובץ snapshot.
- SNAPSHOT_TYPE: סוג ה-snapshot, STANDARD או ARCHIVE.
אם לא מציינים סוג של קובץ snapshot, נוצר קובץ snapshot מסוג
STANDARD
. -
STORAGE_LOCATION: אופציונלי: ל-snapshots ברמת ה-global, Cloud Storage במספר אזורים או אזור Cloud Storage שבו רוצים לאחסן את ה-snapshot. אפשר לציין רק מיקום אחסון אחד.
משתמשים בפרמטר
storageLocations
רק כשרוצים לשנות את מיקום האחסון שמוגדר כברירת מחדל בהגדרות של קובץ ה-snapshot, בין אם הוא מוגדר מראש או בהתאמה אישית. SNAPSHOT_SCOPE_REGION: אופציונלי: בקובצי snapshot ברמת האזור, האזור שאליו מוגדר ה-snapshot. אם כוללים את הפרמטר הזה, אי אפשר להשתמש בפרמטר
storageLocations
. השדה STORAGE_LOCATION מוגדר באופן אוטומטי ל-SNAPSHOT_SCOPE_REGION.מוודאים שהדיסק מחובר למכונה וירטואלית:
- אם הדיסק שיצרתם מקובץ ה-snapshot של VSS הוא דיסק נתונים שאינו לאתחול, תוכלו לצרף את הדיסק לכל מכונה וירטואלית חדשה או קיימת.
- אם הדיסק שיצרתם מקובץ ה-snapshot של VSS הוא דיסק אתחול ואתם רוצים להשתמש בו כדי לאתחל מכונה וירטואלית, עליכם לחבר את הדיסק באופן זמני למכונה וירטואלית נפרדת קיימת. אחרי שתשלימו את השלבים הבאים, תוכלו לנתק את הדיסק מהמכונה הווירטואלית הזו ולהשתמש בו כדי לאתחל מכונה וירטואלית חדשה.
נכנסים ל-VM של Windows שהדיסק מצורף אליו.
פותחים שורת פקודה של PowerShell ומריצים את הכלי
diskpart
.PS C:\> diskpart
מזהים את הדיסק שרוצים לטעון.
DISKPART> list disk
משתמשים בפקודה
select disk
כדי לבחור את הדיסק.DISKPART> select disk DISK_NUMBER
מחליפים את
DISK_NUMBER
במספר הדיסק שרוצים לטעון.מחברים את הדיסק.
DISKPART> online disk
הצגת רשימה של כל האחסונים בדיסק.
DISKPART> list volume
בוחרים את האחסון החדש.
DISKPART> select volume VOLUME_NUMBER
מחליפים את
VOLUME_NUMBER
במספר של האחסון שרוצים להגדיר לקריאה וכתיבה.מנקים את הדגל 'קריאה בלבד'.
DISKPART> attr volume clear readonly hidden nodefaultdriveletter shadowcopy
יוצאים מהכלי
diskpart
.DISKPART> exit
אם הדיסק הוא דיסק אתחול של מכונה וירטואלית אחרת, מסנכרנים את הקבצים של דיסק האתחול עם חתימה הדיסק החדשה.
PS C:\> bcdboot DRIVE_LETTERWindows /s DRIVE_LETTER
מחליפים את
DRIVE_LETTER
באות של הכונן של נפח האחסון שרוצים לסנכרן. לדוגמה,F
עבורF:\
.- נכנסים ל-VM של Windows.
- מורידים ומתקינים את הכלי Sync של Microsoft.
- מונעים מהאפליקציות לכתוב בדיסק.
- פותחים חלון של שורת פקודה עם הרשאות אדמין.
בחלון שורת הפקודה, מריצים את הפקודה:
PS C:\> sync DRIVE_LETTER
מחליפים את
DRIVE_LETTER
באות של הכונן של נפח האחסון שרוצים לסנכרן. לדוגמה,F
עבורF:\
.נכנסים ל-VM של Windows.
פותחים שורת פקודה של PowerShell ומריצים את הכלי
diskpart
.PS C:\> diskpart
מאתרים את הדיסק שרוצים לנתק ולבצע לו צילום.
DISKPART> list disk
לאחר מכן בוחרים את הדיסק לפי מספר הדיסק שמצאתם.
DISKPART> select disk DISK_NUMBER
מחליפים את
DISK_NUMBER
במספר הדיסק שרוצים לחבר מחדש.מנתקים את הדיסק.
DISKPART> offline disk
- אם הדיסק נמצא בתחום (zone) אחד (Persistent Disk או Hyperdisk), פועלים לפי השלבים שמפורטים במאמר יצירת קובץ snapshot של נפח אחסון של Persistent Disk בתחום (zone).
- לחלופין, אם הדיסק לאחסון מתמיד נמצא במספר תחומים, פועלים לפי השלבים שמפורטים במאמר יצירת קובץ snapshot של נפח אחסון אזורי של דיסק לאחסון מתמיד.
נכנסים ל-VM של Windows.
פותחים שורת פקודה של PowerShell ומריצים את הכלי
diskpart
.PS C:\> diskpart
מזהים את הדיסק שרוצים לטעון.
DISKPART> list disk
משתמשים בפקודה
select disk
כדי לבחור את הדיסק.DISKPART> select disk DISK_NUMBER
מחליפים את
DISK_NUMBER
במספר הדיסק שרוצים לטעון.מחברים את הדיסק.
DISKPART> online disk
- אם צילמת קובץ snapshot של דיסק אתחול, אפשר ליצור מכונה וירטואלית מקובץ snapshot.
- במאמר יצירת קובצי אימג' מותאמים אישית של Windows Server מוסבר איך מגדירים את Windows Server כדי ליצור קובצי אימג' מותאמים אישית של Windows Server למכונות הווירטואליות או לתבניות המכונות.
REST
כדי להשתמש בדוגמאות של API ל-REST שבדף הזה בסביבת פיתוח מקומית, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
למידע נוסף, ראו אימות לשימוש ב-REST במסמכי העזרה בנושא Google Cloud אימות.
מגבלות
לתמונות המצב של דיסקים ב-Windows יש את המגבלות הבאות:
יצירת קובץ snapshot של VSS ב-Windows
אפשר ליצור קובצי snapshot של Volume Shadow Copy Service (VSS) בלי להפסיק את המכונה או לנתק את הדיסק מהמכונה הווירטואלית. קובצי snapshot של VSS מיועדים למטרות גיבוי ושחזור במערכות עם אפליקציות שתומכות ב-VSS.
התמונות הממוזערות של VSS מתומחרות באותו מחיר כמו תמונות ממוזערות רגילות של Persistent Disk או Hyperdisk, והחיוב הוא רק על הגודל הכולל של קובץ ה-snapshot.
יצירת קובץ ה-snapshot
המסוף
gcloud
כדי ליצור קובץ snapshot של VSS, משתמשים בפקודה
gcloud compute snapshots create
וכוללים את הדגל--guest-flush
.אתם יכולים ליצור את קובץ ה-snapshot לפי מדיניות מיקום האחסון שמוגדרת בהגדרות קובץ ה-snapshot, או להשתמש במיקום אחסון חלופי לבחירתכם. מידע נוסף זמין במאמר בחירת מיקום האחסון של קובצי snapshot.
מחליפים את מה שכתוב בשדות הבאים:
כדי ליצור קובץ snapshot של VSS של דיסק אחסון מתמיד אזורי, מחליפים את
--source-disk-zone=
ב---source-disk-region=
בדוגמאות הקודמות ומציינים את האזור שבו נמצא הדיסק האזורי.ה-CLI של Google Cloud ממתין עד שהפעולה מחזירה סטטוס
READY
אוFAILED
, או עד שהזמן הקצוב לתפוגה פג, ומחזיר את הפרטים האחרונים הידועים של קובץ ה-snapshot.REST
כשיוצרים קובץ snapshot, כדי לציין שרוצים ליצור קובץ snapshot של VSS, צריך לכלול את המאפיין
guestFlush
בגוף הבקשה של הבקשהPOST
לשיטתcompute.snapshots.insert
.אתם יכולים ליצור את קובץ ה-snapshot בהתאם למדיניות של מיקום האחסון שמוגדרת בהגדרות של קובץ ה-snapshot, או להשתמש במיקום אחסון חלופי לבחירתכם. מידע נוסף זמין במאמר בחירת מיקום האחסון של קובצי snapshot.
מחליפים את מה שכתוב בשדות הבאים:
כדי ליצור קובץ snapshot של VSS של דיסק אחסון מתמיד (persistent disk) אזורי, בבקשות
POST
שצוינו למעלה, מחליפים את השורה הבאה: כדי ליצור קובץ snapshot של דיסק אחסון מתמיד (persistent disk) אזורי, צריך להשתמש בשורה הבאה במקום זאת:"sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME",
"sourceDisk": "projects/SOURCE_PROJECT_ID/regions/SOURCE_REGION/disks/SOURCE_DISK_NAME",
יצירת דיסק לכתיבה מקובץ snapshot של VSS
כשיוצרים קובץ snapshot של VSS, Windows Server מסמנים את האחסון בקובץ ה-snapshot בתור לקריאה בלבד. כשיוצרים דיסק חדש מקובץ ה-snapshot של VSS, גם הדיסק הזה מוגדר למצב קריאה בלבד.
הפעולה הזו עלולה לגרום לבעיות. לדוגמה, אם יוצרים מכונה וירטואלית עם דיסק אתחול חדש מקובץ snapshot של VSS של דיסק אתחול קיים, הדגל לקריאה בלבד בדיסק האתחול החדש מונע את האתחול הנכון של המכונה הווירטואלית.
כדי לעקוף את הבעיה הזו, צריך להסיר את הדגל 'לקריאה בלבד' מכל דיסק חדש שיוצרים מקובץ snapshot של VSS, באמצעות השלבים הבאים:
יצירת קובץ snapshot בלי להשתמש ב-VSS
במצבים מסוימים, יכול להיות שתרצו ליצור קובצי snapshot של דיסקים שמצורפים למכונות וירטואליות של Windows בלי להשתמש ב-VSS.
כדי ליצור קובץ snapshot של דיסק במכונה וירטואלית של Windows בלי להשתמש ב-VSS:
הכנת המערכת ליצירת קובץ snapshot נקי
לפני שיוצרים קובץ snapshot של דיסק, חשוב לוודא שיוצרים קובץ snapshot שתואם למצב הרצוי של הדיסק. אם יוצרים קובץ snapshot של הדיסק במצב 'לא נקי', יכול להיות שהוא יגרום לבדיקה של הדיסק ויכול להיות שתוביל לאובדן נתונים. מומלץ לסנכרן את מערכת הקבצים ולבטל את הטעינה שלה.
סנכרון מערכת הקבצים
אם אי אפשר לנתק את הדיסק, למשל בתרחישים שבהם אפליקציה כותבת נתונים בדיסק, אפשר לסנכרן את מערכת הקבצים כדי לנקות את מאגרי הנתונים של הדיסק. כדי לסנכרן את מערכת הקבצים:
ניתוק הדיסק
יצירת קובץ snapshot
הרכבה מחדש של הדיסק
המאמרים הבאים
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-06-11 (שעון UTC).
-