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

סקירה כללית של התכונה "מחיקה זמנית"

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

סקירה כללית

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

לתשומת ליבכם

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

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

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

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

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

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

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

כדי לקבל את ההרשאות שנדרשות לשחזור קטגוריות שנמחקו באופן זמני, צריך לבקש מהאדמין להקצות לכם את התפקיד אדמין של אחסון (roles/storage.admin) ב-IAM בפרויקט 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. בוחרים באפשרות Soft deleted buckets only.

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

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

שורת הפקודה

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

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

ממשקי API בארכיטקטורת REST

‫API בפורמט JSON

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

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

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

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

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

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

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

המסוף

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

    כניסה לדף Buckets

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

  3. בשורה של הקטגוריה שרוצים לשחזר, לוחצים על Restore.

  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 באמצעות בקשת Buckets: restore:

    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 משחזר את הקטגוריה שנמחקה זמנית למצב פעיל. חשוב לזכור ששחזור הקטגוריה לא משחזר את האובייקטים שהיו בה. כדי לשחזר את האובייקטים שנמחקו באופן זמני, קראו את המאמר שחזור אובייקט שנמחק באופן זמני.

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