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

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

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

סקירה כללית

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

לתשומת ליבכם

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

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

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

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

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

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

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

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

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

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

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