קידום רפליקות להעברה אזורית או תוכנית התאוששות מאסון (DR)

בדף הזה מוסבר איך להשתמש ברפליקות לקריאה חוצות אזורים (רפליקות שנוצרו באזור שונה מהאזור של השרת הראשי) ואיך להעלות אותן בדרגה לצורך העברה אזורית או תוכנית התאוששות מאסון (DR).

סקירה כללית

יש שני תרחישים נפוצים לקידום רפליקות חוצות אזורים:

  • העברה אזורית: ביצוע העברה מתוכננת של מסד נתונים לאזור אחר.
  • תוכנית התאוששות מאסון (DR): מעבר אוטומטי של מסד נתונים לאזור אחר במקרה שהאזור הראשי לא זמין.

בשני תרחישי השימוש האלה צריך להגדיר רפליקציה בין אזורים ואז לקדם את הרפליקה. ההבדל העיקרי ביניהם הוא אם העלאה בדרגה של הרפליקה מתוכננת (במקרה של מיגרציה אזורית) או לא מתוכננת (נדרשת יתירות כשל לאזור של הרפליקה כדי להמשיך את הפעולות כי הראשי הפך ללא זמין).

העברה אזורית

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

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

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

אפשר להשתמש בעותקים משוכפלים באזורים שונים כחלק מתוכנית התאוששות מאסון (DR). אתם יכולים לקדם רפליקה בין-אזורית כדי לבצע מעבר לגיבוי במקרה שהאזור של המופע הראשי לא יהיה זמין למשך תקופה ממושכת.

מידע נוסף על התאוששות מאסון זמין במאמר מידע על התאוששות מאסון ב-Cloud SQL.

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

אם אתם משתמשים במהדורת Cloud SQL Enterprise Plus, אתם יכולים ליצור עותק משוכפל מדורג ולהשתמש בו כעותק משוכפל להתאוששות מאסון (DR) לצורך התאוששות מתקדמת מאסון (DR). ב-DR מתקדם, מבצעים מעבר לגיבוי (failover) של העותק כדי להחליף את המופע הראשי בעותק ה-DR המיועד. המופע הראשי הישן הופך לעותק של העותק המשני של DR שקודם לדרגה. אפשר לבצע מעבר לגיבוי (failover) של העותק רק לעותק הגיבוי (DR) המיועד. עדיין אפשר לקדם רפליקות לקריאה אחרות בלי מעבר לגיבוי.

כדי להחזיר את ה-Deployment (פריסה) למצב המקורי אחרי יתירות הכשל של הרפליקה עם אפס אובדן נתונים, אפשר לבצע החלפה. מכיוון שהמופע הראשי הישן הוא העתק של המופע הראשי החדש, אפשר להחליף שוב את התפקידים כדי לשחזר את המופע הראשי הישן.

מידע נוסף זמין במאמר בנושא התאוששות מתקדמת מאסון (DR).

אימות קריטריוני המעבר לגיבוי

בגלל שהרפליקציה היא אסינכרונית, כשמתרחש הפסקת חשמל באזור ומנסים לבצע מעבר לגיבוי, יכול להיות שחלק מהעסקאות האחרונות שבוצעו בשרת הראשי יאבדו (לא יבוצעו בשרת המשני). בכל פעם שמופע ראשי הופך ללא זמין, השלבים הבאים מראים (1) איך לקבוע את כמות הנתונים, אם יש כאלה, שאולי אבדו במעבר ליתירות כשל בין אזורים ו-(2) איך לוודא שהרפליקה שהועלתה בדרגה משקפת כמה שיותר פעולות כתיבה מהזמן האחרון.

אפשר לבדוק את סטטוס השכפול של העותק המשוכפל באמצעות לוח הבקרה של Always On Availability Group ב-SQL Server Management Studio‏ (SSMS), או באמצעות כלי אחר. מידע נוסף על שימוש ב-Transact-SQL:

קידום רפליקה לקריאה

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

  • באזור א' (us-central1) יש מכונה ראשית עם זמינות גבוהה (db-a-0)
  • באזור ב' (us-west1) יש רפליקה חוצה אזורים בזמינות גבוהה (db-b-1) של db-a-0
  • באזור ג' (us-east1) יש רפליקה חוצה אזורים (db-c-1) של db-a-0

אפשר לקדם את db-b-1 באזור B כדי שהוא יהפוך למופע עצמאי עם הרשאות כתיבה.

הוראות מפורטות מופיעות במאמר בנושא קידום רפליקה.

מוודאים שסוג המכונה מתאים

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

הפעלת זמינות גבוהה למופע המקודם

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

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

יצירה מחדש של רפליקות נוספות

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

  • באזור א' (us-central1) יש מכונה ראשית עם זמינות גבוהה (db-a-0)
  • באזור ב' (us-west1) יש רפליקה חוצת-אזורים (db-b-1) של db-a-0
  • באזור ג' (us-east1) יש רפליקה חוצה אזורים (db-c-1) של db-a-0

אם המופע הראשי (db-a-0) לא זמין, אפשר להגדיר את העותק המשוכפל באזור ב' כמופע הראשי. כדי להוסיף שוב רפליקות באזורים א' ו-ג', צריך למחוק את המופעים הישנים (המופע הראשי הקודם באזור א' והרפליקה באזור ג') וליצור רפליקות חדשות לקריאה מהמופע הראשי החדש באזור ב'.

ההגדרות שיתקבלו יהיו:

  • באזור א' (us-central1) יש עכשיו רפליקה חוצת-אזורים (db-a-1)
  • באזור ב' (us-west1) יש עכשיו את המכונה הראשית (db-b-1)
  • באזור C (us-east1) יש עכשיו רפליקה חדשה חוצת-אזורים (db-c-2)