בדף הזה מוסבר איך להשבית את התכונה "מחיקה זמנית" בקטגוריות חדשות וקיימות בארגון.
כדי למנוע אובדן נתונים, מחיקה זמנית מופעלת כברירת מחדל בקטגוריות חדשות. במקרה הצורך, אפשר להשבית את המחיקה הרכה בקטגוריות קיימות על ידי שינוי המדיניות בנושא מחיקת נתונים, ואפשר להשבית את המחיקה הרכה כברירת מחדל בקטגוריות חדשות על ידי הגדרת תג ברירת מחדל ברמת הארגון. חשוב לזכור שאחרי שמשביתים את המחיקה הרכה, אי אפשר לשחזר את הנתונים שנמחקו, כולל מחיקות שבוצעו בטעות או בזדון.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות להשבתת המחיקה הרכה, אתם צריכים לבקש מהאדמין לתת לכם את התפקידים הבאים ב-IAM ברמת הארגון:
- אדמין באחסון (
roles/storage.admin) - Tag Administrator (
roles/resourcemanager.tagAdmin) - צפייה בארגון (
roles/resourcemanager.organizationViewer)
התפקידים המוגדרים מראש האלה כוללים את ההרשאות שנדרשות כדי להשבית את המחיקה הרכה. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי להשבית את המחיקה הרכה, נדרשות ההרשאות הבאות:
-
storage.buckets.get -
storage.buckets.update -
storage.buckets.list(ההרשאה הזו נדרשת רק אם אתם מתכננים להשתמש במסוף Google Cloud כדי לבצע את ההוראות שבדף הזה)במאמר ההרשאות הנדרשות לניהול תגים מפורטות ההרשאות הנדרשות שנכללות בתפקיד "אדמין של תגים" (
roles/resourcemanager.tagAdmin).
במאמרים הגדרה וניהול של מדיניות IAM בקטגוריות וניהול הגישה לפרויקטים מוסבר איך מקצים תפקידים.
השבתת המחיקה הרכה בקטגוריה ספציפית
לפני שמתחילים, חשוב לזכור:
אם תשביתו את המדיניות בנושא מחיקת נתונים רכה בקטגוריה שיש בה אובייקטים שנמחקו באופן זמני, האובייקטים האלה יישמרו עד שתסתיים תקופת השמירה שהוגדרה להם.
אחרי שמשביתים את המדיניות בנושא מחיקת נתונים רכה בקטגוריה, Cloud Storage לא שומרת אובייקטים שנמחקו לאחרונה.
כשמשביתים את המדיניות בנושא מחיקת נתונים רכה בקטגוריה, השינוי לא מתבצע באופן מיידי ב-Cloud Storage בגלל שמירת המטא-נתונים במטמון. לכן, אחרי שמשביתים מדיניות מחיקה זמנית, מומלץ להמתין לפחות 30 שניות לפני שמתחילים פעולות מחיקה אחרות, כמו מחיקה בכמות גדולה. כך אפשר לוודא שהנתונים נמחקים באופן סופי ולא באופן זמני. מידע נוסף על עקביות בפעולות של Cloud Storage מופיע במאמר עקביות ב-Cloud Storage.
כדי להשבית את המחיקה הרכה בקטגוריה ספציפית:
המסוף
- במסוף Google Cloud , נכנסים לדף Buckets של Cloud Storage.
ברשימת הקטגוריות, לוחצים על שם הקטגוריה שבה רוצים להשבית את מדיניות המחיקה הרכה.
לוחצים על הכרטיסייה הגנה.
בקטע Soft delete policy, לוחצים על Disable כדי להשבית את מדיניות המחיקה הרכה.
לוחצים על אישור.
במאמר פתרון בעיות מוסבר איך מקבלים מידע מפורט על שגיאות בנושא פעולות ב-Cloud Storage שנכשלו במסוף Google Cloud .
שורת הפקודה
מריצים את הפקודה gcloud storage buckets update עם הדגל --clear-soft-delete:
gcloud storage buckets update --clear-soft-delete gs://BUCKET_NAME
כאשר:
-
BUCKET_NAMEהוא שם הקטגוריה. לדוגמה,my-bucket.
ממשקי API בארכיטקטורת REST
API בפורמט JSON
להתקין ולהפעיל את ה-CLI של gcloud, כדי שתוכלו ליצור אסימון גישה לכותרת
Authorization.יוצרים קובץ JSON שמכיל את הפרטים הבאים:
{ "softDeletePolicy": { "retentionDurationSeconds": "0" } }
משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשה של קטגורייתPATCH:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME"
כאשר:
-
JSON_FILE_NAMEהוא הנתיב לקובץ JSON שיצרתם בשלב 2. -
BUCKET_NAMEהוא שם הקטגוריה הרלוונטית. לדוגמה,my-bucket.
-
השבתת המחיקה הרכה ב-100 הקטגוריות הכי גדולות בפרויקט
במסוף Google Cloud אפשר להשבית את המחיקה הרכה ב-100 קטגוריות בו-זמנית, ולמיין את הקטגוריות לפי מספר הבייטים שנמחקו במחיקה רכה או לפי היחס הגבוה ביותר בין בייטים שנמחקו במחיקה רכה לבין בייטים פעילים. כך אפשר לנהל את הקטגוריות שהכי משפיעות על עלויות המחיקה הרכה.
- במסוף Google Cloud , נכנסים לדף Buckets של Cloud Storage.
בדף Cloud Storage, לוחצים על Settings.
לוחצים על הכרטיסייה מחיקה זמנית.
ברשימה Top buckets by deleted bytes, בוחרים את הקטגוריות שרוצים להשבית בהן את המחיקה הרכה.
לוחצים על השבתת המחיקה הרכה.
המחיקה הזמנית מושבתת בקטגוריות שבחרתם.
השבתת המחיקה הרכה בכמה קטגוריות או בכל הקטגוריות בפרויקט
כדי להשבית את המחיקה הרכה בכמה קטגוריות או בכל הקטגוריות בפרויקט, מריצים ב-Google Cloud CLI את הפקודה gcloud storage buckets update עם הדגל --project והתו הכללי לחיפוש *:
gcloud storage buckets update --project=PROJECT_ID --clear-soft-delete gs://*
כאשר:
-
PROJECT_IDהוא מזהה הפרויקט. לדוגמה,my-project.
השבתת המחיקה הזמנית בכל הקטגוריות בתיקייה
באמצעות Google Cloud CLI, מריצים את הפקודות gcloud projects list ו-gcloud storage buckets update כדי להשבית את המחיקה הרכה בקטגוריות בכל הפרויקטים בתיקייה מסוימת.
מריצים את הפקודות gcloud projects list ו-gcloud storage buckets update כדי להציג את כל הקטגוריות בתיקייה מסוימת, ואז משביתים את המחיקה הרכה בכל הקטגוריות שבתיקייה:
gcloud projects list --filter="parent.id: FOLDER_ID" --format="value(projectId)" | while read project do gcloud storage buckets update --project=$project --clear-soft-delete gs://* done
כאשר:
-
FOLDER_IDהוא שם התיקייה. לדוגמה,123456.
השבתת המחיקה הזמנית ברמת הארגון
באמצעות Google Cloud CLI, מריצים את הפקודה gcloud storage buckets update עם הדגל --clear-soft-delete והתו הכללי לחיפוש * כדי להשבית את המחיקה הרכה ברמת הארגון:
מריצים את הפקודה gcloud storage buckets update עם הדגל --clear-soft-delete והתו הכללי לחיפוש * כדי להשבית את המחיקה הרכה בכל הקטגוריות בארגון:
gcloud projects list --format="value(projectId)" | while read project do gcloud storage buckets update --project=$project --clear-soft-delete gs://* done
Cloud Storage משבית את המחיקה הרכה בקטגוריות קיימות. אובייקטים שכבר נמחקו באופן זמני יישארו בקטגוריות עד שתסתיים תקופת השמירה שלהם, ואז הם יימחקו באופן סופי.
השבתת המחיקה הרכה בקטגוריות חדשות
האפשרות "מחיקה זמנית" מופעלת כברירת מחדל בקטגוריות חדשות, אבל אפשר להשתמש בתגים כדי למנוע את ההפעלה שלה כברירת מחדל.
התגים משתמשים במפתח storage.defaultSoftDeletePolicy כדי להחיל המדיניות בנושא מחיקת נתונים של 0d (אפס ימים) ברמת הארגון, שמשביתה את התכונה ומונעת שמירה עתידית של נתונים שנמחקו.
כדי להשבית את המחיקה הרכה כברירת מחדל כשיוצרים קטגוריות חדשות, פועלים לפי ההוראות הבאות. שימו לב שההוראות הבאות לא שוות ערך להגדרה של כלל מדיניות של הארגון שמחייבת המדיניות בנושא מחיקת נתונים מסוימת. כלומר, עדיין אפשר להפעיל מחיקה זמנית בקטגוריות ספציפיות על ידי ציון מדיניות, אם צריך.
באמצעות Google Cloud CLI, יוצרים את התג
storage.defaultSoftDeletePolicyשמשמש לשינוי משך ברירת המחדל של תקופת השמירה של המחיקה הרכה בקטגוריות חדשות. שימו לב שרק שם התגstorage.defaultSoftDeletePolicyמעדכן את משך הזמן שמוגדר כברירת מחדל לשמירה במחיקה רכה.יוצרים מפתח תג באמצעות הפקודה
gcloud resource-manager tags keys create:gcloud resource-manager tags keys create storage.defaultSoftDeletePolicy \ --parent=organizations/ORGANIZATION_ID \ --description="Configures the default softDeletePolicy for new Storage buckets."
כאשר:
-
ORGANIZATION_IDהוא המזהה המספרי של הארגון שרוצים להגדיר לו משך ברירת מחדל לשמירה במחיקה רכה. לדוגמה,12345678901. כדי ללמוד איך למצוא את מזהה הארגון, קראו את המאמר קבלת מזהה משאב הארגון.
-
כדי להשבית את תקופת השמירה של המחיקה הרכה כברירת מחדל בקטגוריות חדשות, יוצרים ערך תג של
0d(אפס ימים) באמצעות הפקודהgcloud resource-manager tags values create:gcloud resource-manager tags values create 0d \ --parent=ORGANIZATION_ID/storage.defaultSoftDeletePolicy \ --description="Disables soft delete for new Storage buckets."
כאשר:
-
ORGANIZATION_IDהוא המזהה המספרי של הארגון שרוצים להגדיר לו את משך ברירת המחדל של תקופת השמירה במחיקה רכה. לדוגמה,12345678901.
-
מצרפים את התג למשאב באמצעות הפקודה
gcloud resource-manager tags bindings create:gcloud resource-manager tags bindings create \ --tag-value=ORGANIZATION_ID/storage.defaultSoftDeletePolicy/0d \ --parent=RESOURCE_ID
כאשר:
ORGANIZATION_IDהוא המספר המזהה של הארגון שבו נוצר התג. לדוגמה,12345678901.
RESOURCE_IDהוא השם המלא של הארגון שרוצים ליצור לו את קישור התגים. לדוגמה, כדי לצרף תג אלorganizations/7890123456, מזינים//cloudresourcemanager.googleapis.com/organizations/7890123456.
השבתת המחיקה הרכה בקטגוריות שחורגות מסף עלות מסוים
באמצעות ספריות הלקוח של Cloud לשימוש ב-Python, אתם יכולים להשבית את המחיקה הרכה בקטגוריות שחורגות מסף עלות יחסי מסוים, בעזרת דוגמה של ספריית לקוח ב-Python. הדוגמה מבצעת את הפעולות הבאות:
חישוב העלות היחסית של האחסון לכל סוג אחסון (storage class).
הערכת העלות של המחיקה הרכה שנצברה בקטגוריות.
מגדירה סף עלות לשימוש במחיקה רכה, מציגה את הקטגוריות שחורגות מהסף שהגדרתם ומאפשרת להשבית את המחיקה הרכה בקטגוריות שחורגות מהסף.
מידע נוסף על הגדרת ספריית הלקוח של Python ושימוש בדוגמה מופיע בדף ניתוח עלויות של מחיקה רכה ב-Cloud Storage README.md.
הדוגמה הבאה משביתה את המחיקה הרכה בקטגוריות שחורגות מסף עלות מסוים:
המאמרים הבאים
לפני שמפעילים מחדש את המחיקה הרכה, כדאי לעיין בשיקולים.
מידע ולמידה על איך המחיקה הרכה פועלת עם תכונות אחרות של Cloud Storage