שימוש בדליים שנמחקו זמנית

סקירה כללית של התכונה 'מחיקה עם אפשרות שחזור'

בדף הזה מוסבר איך להציג רשימה של קטגוריות שנמחקו זמנית ולשחזר אותן.

סקירה כללית

אחרי שמבצעים מחיקה רכה של קטגוריה, היא נשמרת ב-Cloud Storage עד למועד המחיקה בלי יכולת שחזור שלה, ואי אפשר לשנות אותה בזמן שהיא במצב של מחיקה רכה. זמן המחיקה בלי יכולת שחזור ארוך לפחות כמו זמן המחיקה בלי יכולת שחזור האחרון של האובייקטים בדלי. אחרי שחלף הזמן שנקבע למחיקה בלי יכולת שחזור, Cloud Storage מוחק את הקטגוריה באופן סופי. כשמשחזרים קטגוריה שנמחקה זמנית, היא חוזרת למצב פעיל, ואפשר גם לשחזר אובייקטים שהיו בקטגוריה בזמן המחיקה.

לתשומת ליבכם

  • כדי להגן מפני מחיקה זדונית, אי אפשר למחוק סופית קטגוריה שנמחקה עם יכולת שחזור עד שתקופת השמירה של המחיקה עם יכולת שחזור של הקטגוריה תסתיים.

  • אחרי שמבצעים מחיקה רכה של קטגוריה, צריך לשחזר אותה כדי שיהיה אפשר להציג או לשחזר את האובייקטים שנמחקו בה.

  • כדי לשחזר דלי שנמחק באופן זמני, צריך לדעת את מספר הדור של הדלי. כדי לאחזר את מספר הדור של קטגוריה שנמחקה זמנית, אפשר לעיין במאמר בנושא הצגת רשימה של קטגוריות שנמחקו זמנית.

  • אפשר לשחזר קטגוריה שנמחקה זמנית רק אם אין קטגוריה פעילה עם אותו שם. אם אתם או מישהו אחר יוצרים קטגוריה עם אותו שם של קטגוריה שנמחקה זמנית, לא תוכלו לשחזר את הקטגוריה שנמחקה זמנית עד שהקטגוריה החדשה תימחק.

  • כשמשחזרים קטגוריה שנמחקה זמנית באמצעות ה-CLI של gcloud או API בפורמט JSON, האובייקטים בקטגוריה לא משוחזרים. כדי לשחזר אובייקטים שנמחקו זמנית, תצטרכו לבצע פעולת שחזור אובייקטים אחרי שתשחזרו את הדלי שנמחק זמנית.

  • יכול להיות שלא ניתן יהיה לשחזר את הקישורים של התגים כשמשחזרים באקט שנמחק זמנית עם תגים. כדי למנוע אובדן נתונים, כשמשחזרים קטגוריה שנמחקה זמנית עם קשרי תגים, מומלץ לבדוק שקשרי התגים של הקטגוריה שוחזרו. אם לא שוחזרו קשרי התגים של מאגר הנתונים, תצטרכו לקשור ידנית את התגים שלא שוחזרו למאגר הנתונים.

ההרשאות הנדרשות

כדי לקבל את ההרשאות שנדרשות לשחזור קטגוריות שנמחקו זמנית, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין לניהול אחסון (roles/storage.admin) בפרויקט Cloud Storage.

התפקיד המוגדר מראש הזה כולל את ההרשאות שנדרשות לשחזור קטגוריות שנמחקו זמנית. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:

ההרשאות הנדרשות

כדי לשחזר דליים שנמחקו זמנית, נדרשות ההרשאות הבאות:

  • storage.buckets.list
  • storage.buckets.restore
  • שחזור אובייקטים כשמשתמשים במסוף כדי לשחזר קטגוריה שנמחקה זמנית:
      Google Cloud
    • storage.objects.restore
    • storage.objects.create

הצגת רשימה של קטגוריות שנמחקו זמנית

אפשר לבצע פעולות ברשימה כדי לאחזר את המטא-נתונים של דליים שנמחקו זמנית.

כדי לראות את רשימת הקטגוריות שנמחקו זמנית בפרויקט, משתמשים בהוראות הבאות:

המסוף

  1. במסוף Google Cloud , נכנסים לדף Buckets של Cloud Storage.

    כניסה לדף Buckets

  2. לוחצים על אפשרויות תצוגה.

  3. בוחרים באפשרות רק דליים שנמחקו זמנית.

  4. לוחצים על Save.

    מוצגת רשימה של דליים שנמחקו זמנית. אם בקט מסוים שנמחק זמנית יש כמה דורות, כל דור של הבקט מופיע בשורה נפרדת.

שורת הפקודה

כדי להציג רשימה של קטגוריות שנמחקו זמנית, משתמשים בפקודה gcloud storage ls:

gcloud storage ls --buckets --soft-deleted --full

ממשקי API ל-REST

API ל-JSON

  1. התקנה והפעלה של ה-CLI של gcloud, שמאפשרות ליצור אסימון גישה לכותרת Authorization.

  2. משתמשים ב- cURL כדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשה של קטגוריית GET:

curl -X GET \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://storage.googleapis.com/storage/v1/b?softDeleted=true"

שחזור של קטגוריה שנמחקה באופן זמני

כדי לשחזר קטגוריה שנמחקה זמנית, פועלים לפי ההוראות הבאות.

כשמשחזרים קטגוריה שנמחקה זמנית באמצעות המסוף Google Cloud , אפשר גם לשחזר את האובייקטים שנמחקו זמנית שהיו בקטגוריה.

המסוף

  1. במסוף Google Cloud , נכנסים לדף Buckets של Cloud Storage.

    כניסה לדף Buckets

  2. הצגת קטגוריות שנמחקו זמנית ברשימת הקטגוריות, אם הן לא מופיעות כבר. הוראות מפורטות מופיעות במאמר בנושא הצגת קטגוריות שנמחקו זמנית.

  3. בשורה של מאגר הנתונים שרוצים לשחזר, לוחצים על שחזור.

  4. אם יש בדלי כמה דורות, בכרטיסייה Specify bucket generation (ציון דור של דלי), בוחרים את הדור לשחזור.

  5. לוחצים על הכרטיסייה Specify objects to restore (ציון אובייקטים לשחזור).

  6. בקטע Specify objects to restore, בוחרים אם רוצים לשחזר את האובייקטים שנמחקו זמנית שהיו בקטגוריה. אלה האפשרויות הזמינות:

    • לא לשחזר אובייקטים.

      במידת הצורך, אפשר לשחזר אובייקטים שנמחקו זמנית בהמשך.

    • שחזור כל האובייקטים.

    • שחזור אובייקטים שתואמים לקריטריונים. מבצעים את הפעולות הבאות:

      1. בוחרים את טווח הזמן שממנו רוצים לשחזר אובייקטים.

      2. אופציונלי: כדי לשחזר רק את האובייקטים שתואמים לתבנית glob, בוחרים באפשרות סינון לפי תבנית glob ומזינים תבנית glob.

  7. אופציונלי: מציינים התנהגויות שחזור נוספות בקטע אפשרויות נוספות.

  8. לוחצים על שחזור.

    ‫Cloud Storage משחזר את הקטגוריה שנמחקה זמנית למצב פעיל.

    אם משחזרים את האובייקטים בקטגוריה, Cloud Storage יוצר פעולת שחזור בכמות גדולה של האובייקטים. הפעולה מתבצעת באופן אסינכרוני, ויכול להיות שיעבור שעה או יותר עד שהיא תתחיל. כדי לעקוב אחרי התקדמות הפעולה, לוחצים על הלחצן Notifications () בכותרת של מסוף Google Cloud . אפשר גם להשתמש ב-CLI של gcloud כדי לעקוב אחרי הסטטוס של הפעולה הממושכת המשויכת.

שורת הפקודה

כדי לשחזר קטגוריה שנמחקה זמנית, משתמשים בפקודה gcloud storage restore:

  gcloud storage restore gs://BUCKET_NAME#GENERATION_NUMBER

מחליפים את מה שכתוב בשדות הבאים:

  • BUCKET_NAME: השם של הקטגוריה שנמחקה זמנית שרוצים לשחזר.

  • GENERATION_NUMBER: מספר הדור הייחודי והקבוע של הקטגוריה שנמחקה זמנית שרוצים לשחזר. כדי לקבל את מספר הדור של הקטגוריה, אפשר לעיין במאמר בנושא הצגת רשימה של קטגוריות שנמחקו זמנית.

‫Cloud Storage משחזר את הקטגוריה שנמחקה זמנית למצב פעיל. שימו לב: שחזור הקטגוריה לא משחזר את האובייקטים שהיו בקטגוריה. כדי לשחזר אובייקטים שנמחקו זמנית, ראו שחזור אובייקט שנמחק זמנית.

ממשקי API ל-REST

API ל-JSON

  1. התקנה והפעלה של ה-CLI של gcloud, שמאפשרות ליצור אסימון גישה לכותרת Authorization.

  2. משתמשים ב- cURL כדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשה של קטגוריית POST:

    curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/restore?generation=GENERATION_NUMBER

    כאשר:

    • BUCKET_NAME הוא שם הקטגוריה שרוצים לשחזר. לדוגמה, my-bucket.

    • GENERATION_NUMBER הוא מספר הדור הייחודי והקבוע של הדלי שנמחק זמנית ורוצים לשחזר. כדי לקבל את מספר הדור של הקטגוריה, אפשר לעיין במאמר בנושא הצגת רשימה של קטגוריות שנמחקו זמנית.

    ‫Cloud Storage משחזר את הקטגוריה שנמחקה זמנית למצב פעיל. שימו לב: שחזור הקטגוריה לא ישחזר את האובייקטים שהיו בה. כדי לשחזר אובייקטים שנמחקו זמנית, ראו שחזור אובייקט שנמחק זמנית.

המאמרים הבאים