שחזור מכונה של Cloud SQL מכספת גיבוי

במסמך הזה מוסבר איך לשחזר מופע Cloud SQL מ<b>כספת גיבוי</b> באמצעות מסוף Google Cloud או <b>ה-CLI של gcloud</b>. במאמר הזה מוסבר איך לשחזר למכונה חדשה או קיימת, איך להחליף מכונת מקור או איך לבצע שחזור לנקודת זמן מסוימת (PITR).

מידע נוסף על היכולות של Backup and DR מופיע במאמר סקירה כללית של Backup and DR. אם רוצים לגבות את מסדי הנתונים קודם, אפשר לעיין במאמר בנושא גיבוי מכונות Cloud SQL לכספת גיבוי.

תוכנית התאוששות מאסון (DR) ועמידות

‫Backup and DR מספק אפשרויות להתאוששות מאסון (DR) עבור מופעי Cloud SQL. גיבויים שמאוחסנים בכספת גיבויים הם בלתי תלויים במחזור החיים ובפרויקט של מופע המקור.

  • מחיקת פרויקט: אפשר לשחזר גיבויים גם אם פרויקט עומס העבודה המקורי שמכיל את מופע Cloud SQL המקורי נמחק. הסיבה לכך היא שההרשאות הנדרשות לפענוח גיבויים מוצפנים באמצעות CMEK ניתנות לסוכן השירות של Backup and DR בפרויקט של מאגר הגיבוי, ולא בפרויקט של עומס העבודה. כך תוכלו לוודא שהגיבויים יישארו נגישים וניתנים לשחזור כל עוד כספת הגיבוי והמפתח של Cloud Key Management Service תקינים ולסוכן השירות יש הרשאות.

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

לפני שמתחילים

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

כדי לקבל את ההרשאות שדרושות בשביל לשחזר מופע Cloud SQL מכספת גיבוי, אתם צריכים לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:

  • כדי ליצור את יעד השחזור: אדמין Cloud SQL (roles/cloudsql.admin) בפרויקט שבו נמצאת מכונת היעד
  • כדי לקרוא את הגיבוי מהכספת: Backup and DR Restore User (roles/backupdr.restoreUser) בפרויקט שבו קיימים גיבויי המקור

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

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

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

כדי לשחזר מכונת Cloud SQL מכספת גיבוי, צריך את ההרשאות הבאות:

  • כדי ליצור את יעד השחזור: cloudsql.instances.restore
  • כדי לקרוא את הגיבוי מהכספת: backupdr.bvbackups.useReadOnlyForCloudSqlInstance

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

שחזור מופע Cloud SQL מהגיבוי האחרון

כדי לשחזר מכונה של Cloud SQL, פועלים לפי ההוראות הבאות:

המסוף

  1. נכנסים לדף Vaulted backups במסוף Google Cloud .

    מעבר לגיבויים ב-Vault

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

  2. בוחרים את הגיבוי שרוצים לשחזר. בדף הפרטים של הגיבוי או בתפריט , בוחרים באפשרות שחזור.

    מוצג דף השחזור שבו בוחרים את אפשרויות השחזור הבאות:

    • סוג המשאב מאוכלס מראש בערך Cloud SQL.

    • בקטע Resource name, בוחרים את המופע של Cloud SQL שרוצים לשחזר.

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

    • ב-Choose the restore destination, בוחרים את הפרויקט שאליו רוצים לשחזר את מופע Cloud SQL.

  3. לוחצים על Continue.

  4. כשמופיעה ההודעה בחירת יעד לשחזור, בוחרים באחת מהאפשרויות הבאות:

    • Restore to a new instance (שחזור למכונה חדשה): יוצר מכונה חדשה על סמך ההגדרות ששמורות בגיבוי. אפשר להתאים אישית את המופע אחרי שהשחזור מסתיים. צריך לספק מזהה מופע חדש שכולל אותיות קטנות, מספרים ומקפים. להתחיל באות.
    • החלפת מכונה קיימת: בוחרים מכונה קיימת להחלפה מתוך רשימת המכונות הזמינות.

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

gcloud

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

    • מפרויקט של מכונת Cloud SQL: משתמשים ב-data-source-reference

      gcloud alpha backup-dr data-source-references fetch-for-resource-type sqladmin.googleapis.com/Instance \
      --location=LOCATION \
      --project=CSQL_INSTANCE_PROJECT_ID \
      --filter='dataSourceGcpResourceInfo.cloudSqlInstanceProperties.name="projects/CSQL_INSTANCE_PROJECT_ID/instances/CSQL_INSTANCE_ID"' \
      --format="table(RESOURCE_NAME,DATA_SOURCE)"
      

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

      • LOCATION: המיקום של כספת הגיבוי.

      • CSQL_INSTANCE_ID: שם מסד הנתונים של מופע Cloud SQL.

      • CSQL_INSTANCE_PROJECT_ID: הפרויקט שמכיל את מופע Cloud SQL.

    • מפרויקט של כספת גיבוי: משתמשים ב-data-source

      gcloud backup-dr data-sources list \
      --location=LOCATION \
      --project=BACKUP_VAULT_PROJECT_ID \
      --filter='dataSourceGcpResource.cloudSqlInstanceDatasourceProperties.name=projects/CSQL_INSTANCE_PROJECT_ID/instances/CSQL_INSTANCE_ID' \
      --format="table(dataSourceGcpResource.cloudSqlInstanceDatasourceProperties.name:label=RESOURCE_NAME,name:label=DATA_SOURCE)"
      

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

      • LOCATION: המיקום של כספת הגיבוי.

      • CSQL_INSTANCE_ID: השם של מופע Cloud SQL.

      • CSQL_INSTANCE_PROJECT_ID: הפרויקט שמכיל את מופע Cloud SQL.

      • BACKUP_VAULT_PROJECT_ID: הפרויקט שמכיל את כספת הגיבוי.

  2. כדי לראות את רשימת כל הגיבויים במקור הנתונים, מפעילים את הפקודה gcloud backup-dr backups list, ואז בוחרים את הגיבוי שרוצים לשחזר.

    gcloud backup-dr backups list --data-source=DATA_SOURCE \
    --format="table(consistencyTime,backupType,name:label=BACKUP_NAME)"
    
  3. כדי לשחזר מופע של Cloud SQL, משתמשים בפקודה gcloud sql backups restore:

    gcloud sql backups restore BACKUP_NAME \
    --restore-instance=RESTORE_INSTANCE \
    --project=RESTORE_PROJECT
    --region=RESTORE_REGION
    

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

    • BACKUP_NAME: השם של כספת הגיבוי שממנה רוצים לשחזר נתונים.

    • RESTORE_INSTANCE: שם מופע Cloud SQL של היעד.

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

    • RESTORE_REGION: האזור שבו רוצים לשחזר למופע חדש של Cloud SQL. הפעולה הזו אופציונלית לגיבויים אזוריים. לא משתמשים באפשרות הזו כשמשחזרים למכונה קיימת.

  4. אופציונלי: כדי לשנות מאפיינים אחרים, אפשר לעיין במאמר סקירה כללית על פקודות gcloud CLI של Backup and DR.

שחזור מכונה של Cloud SQL לנקודת זמן אחרת

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

  1. נכנסים לדף Vaulted backups במסוף Google Cloud .

    מעבר לגיבויים ב-Vault

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

  3. לוחצים על שחזור מנקודת זמן. ייפתח הדף Create a clone של Cloud SQL.

  4. פועלים לפי ההוראות במאמר ביצוע PITR באמצעות כספת הגיבוי.

מעקב אחרי משימות שחזור ושחזור מנקודה מסוימת בזמן

כשמפעילים שחזור או שחזור לנקודת זמן (PITR) במופע Cloud SQL, ‏ Backup and DR עוקב אחרי העבודה באופן אוטומטי. אפשר לעקוב אחר ההתקדמות והסטטוס של העבודה במסוף Google Cloud .

כדי לראות את ההתקדמות והסטטוס של עבודות השחזור וה-PITR:

  1. נכנסים לדף Jobs בכלי Backup and DR במסוף Google Cloud .
  2. מחפשים את המשימה עם סוג המשאב שהוגדר כ-Cloud SQL וקטגוריית המשימה שהוגדרה כ-Restore או כ-Point-in-Time Restore (PITR).

אפשר לראות את יומני העבודה של השחזור ושל PITR גם בפרויקט של עומס העבודה, שבו משוחזרת מכונת היעד של Cloud SQL, וגם בפרויקט של מאגר הגיבוי, שבו מאוחסן הגיבוי. אפשר לראות את פרטי המשימה בדף Jobs ב-Backup and DR וב-Cloud Logging.

מידע נוסף זמין במאמר מעקב אחרי משימות במסוף Google Cloud .

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

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