עבודה עם שכפול בין אזורים

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

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

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

  • Google Cloud בפרויקט שבו אתם משתמשים צריך להיות מופעלת גישה ל-AlloyDB.
  • צריך להיות לכם אחד מתפקידי ה-IAM האלה בפרויקט Google Cloud שבו אתם משתמשים:
    • roles/alloydb.admin (תפקיד IAM מוגדר מראש של אדמין AlloyDB)
    • roles/owner (תפקיד בסיסי ב-IAM מסוג בעלים)
    • roles/editor (תפקיד בסיסי ב-IAM עם הרשאת עריכה)

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

יצירת אשכול משני

כשיוצרים אשכול משני, AlloyDB מעתיק ומחיל חלק מההגדרות של האשכול הראשי, כולל שחזור לנקודת זמן (PITR) והגדרות גיבוי, על האשכול המשני. ‫AlloyDB לא מוסיף מכונות של מאגר קריאה לאשכול המשני אחרי שהוא נוצר, לא משנה כמה מכונות של מאגר קריאה קיימות באשכול הראשי.

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

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

הדיאגרמה הבאה ממחישה איך להעלות בדרגה את האשכול המשני שנקרא cluster-2 ב-us-east4:

דוגמה לקידום של אשכול משני.

איור 1. דוגמה לקידום של אשכול משני.

כדי ליצור אשכול משני ומכונה משנית של AlloyDB:

המסוף

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

    כניסה לדף Clusters

  2. לוחצים על אשכול בעמודה שם המשאב.

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

  4. מגדירים את האשכול המשני:

    1. בשדה Cluster ID (מזהה האשכול), מזינים מזהה משאב לאשכול המשני.
    2. בוחרים אזור עבור האשכול המשני ששונה מהאזור של האשכול הראשי.
    3. בוחרים בהצפנה בניהול Google כברירת מחדל או במפתח בניהול הלקוח (CMEK) כשיטת הצפנה להצפנת האשכול המשני.

    אם רוצים להצפין את האשכול הזה באמצעות מפתח CMEK, פועלים לפי השלבים הבאים:

    1. לוחצים על אפשרויות מתקדמות להצפנה.
    2. בוחרים באפשרות מפתח הצפנה בניהול הלקוח (CMEK).
    3. בוחרים מפתח בניהול הלקוח מהתפריט שמופיע.

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

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

      1. לוחצים על לא רואה את המפתח שלך? מזינים את שם המשאב של המפתח.
      2. מזינים את שם המשאב בשדה שם משאב המפתח.
      3. לוחצים על Save.
      4. לוחצים על Continue.

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

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

  5. מגדירים את המופע המשני. בשדה Instance ID (מזהה מכונה), מזינים מזהה משאב למכונה המשנית. מזהה המשאב חייב להיות ייחודי באשכול.

  6. לוחצים על יצירת אשכול.

gcloud

כדי להשתמש ב-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.

משתמשים בפקודה gcloud alloydb clusters create-secondary.

 gcloud alloydb clusters create-secondary SECONDARY_CLUSTER_ID \
 --region=REGION_ID \
 --primary-cluster=projects/PROJECT_ID/locations/LOCATION_ID/clusters/ PRIMARY_CLUSTER_ID
 gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \
 --cluster=SECONDARY_CLUSTER_ID \
 --region=REGION_ID

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

  • SECONDARY_CLUSTER_ID: המזהה של האשכול המשני שרוצים ליצור.
  • SECONDARY_INSTANCE_ID: המזהה של המופע המשני שרוצים ליצור.
  • REGION_ID: המזהה של האזור של האשכול המשני, לדוגמה, us-central1.
  • PROJECT_ID: המזהה של הפרויקט של האשכול המשני.
  • LOCATION_ID: המיקום שבו נמצא האשכול הראשי, לדוגמה us-central1.
  • PRIMARY_CLUSTER_ID: המזהה של האשכול הראשי שאליו משויך האשכול המשני.
  • SECONDARY_CLUSTER_ID: המזהה של האשכול המשני שאליו משויך המופע המשני.
  • ALLOWED_PSC_PROJECTS (אופציונלי): רשימה מופרדת בפסיקים של מזהי פרויקטים או מספרי פרויקטים שרוצים לאפשר להם גישה למופע – לדוגמה, my-project-1, 12345,my-project-n. אם האשכול משתמש ב-Private Service Connect כשיטה להתחברות למופע, צריך להגדיר רשימה של פרויקטים או מספרים מורשים.
  • --no-enable-automated-backup(אופציונלי): משביתים את יצירת הגיבויים האוטומטיים באשכול המשני.

כדי ליצור מופע משני עם Private Service Connect, מוסיפים את הדגל allowed-psc-projects כדי להגדיר רשימה מופרדת בפסיקים של מזהי פרויקטים או מספרי פרויקטים שרוצים לאפשר להם גישה למופע – לדוגמה, my-project-1,‏ 12345 ו-my-project-n.

 gcloud alloydb clusters create-secondary SECONDARY_CLUSTER_ID \
 --region=REGION_ID \
 --primary-cluster=projects/PROJECT_ID/locations/LOCATION_ID/clusters/ PRIMARY_CLUSTER_ID \
 gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \
 --cluster=SECONDARY_CLUSTER_ID \
 --region=REGION_ID \
 --allowed-psc-projects=ALLOWED_PSC_PROJECTS

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

  • ALLOWED_PSC_PROJECTS (אופציונלי): רשימה מופרדת בפסיקים של מזהי פרויקטים או מספרי פרויקטים שרוצים לאפשר להם גישה למופע – לדוגמה, my-project-1,‏ 12345 ו-my-project-n. אם האשכול שלכם משתמש ב-Private Service Connect כשיטה להתחברות למופע, אתם צריכים להגדיר רשימה של פרויקטים או מספרים מותרים.

כדי ליצור מופע משני לאשכול עם כתובת IP ציבורית, מוסיפים את הפרמטר --assign-inbound-public-ip=ASSIGN_IPV4.

 gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \
 --cluster=SECONDARY_CLUSTER_ID \
 --region=REGION_ID \
  --assign-inbound-public-ip=ASSIGN_IPV4

אופציונלי: מעבירים את הרשימה המופרדת בפסיקים של בלוקי CIDR, כמו 64.233.160.0/16, לפרמטר --authorized-external-networks כדי להגדיר רשתות חיצוניות מורשות במופע.

הצגת אשכול משני

כדי לראות מידע מפורט על קלאסטר משני של AlloyDB:

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

    כניסה לדף Clusters

  2. לוחצים על אשכול משני בעמודה שם המשאב.

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

עדכון של מכונה משנית

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

הגדרת דגלים של מסד נתונים במופע משני

כדי להוסיף, לשנות או למחוק דגלים של מסד נתונים, מבצעים את השלבים הבאים:

המסוף

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

    כניסה לדף Clusters

  2. בעמודה שם המשאב, לוחצים על אשכול משני שרוצים לשנות.

  3. בדף סקירה כללית, עוברים אל Instances in your cluster (מופעים באשכול), בוחרים את המופע המשני ולוחצים על Edit secondary (עריכת המשני).

  4. כדי להוסיף, לשנות או למחוק דגל מסד נתונים מהמופע:

    הוספת דגל

    1. כדי להוסיף לדוגמה דגל מסד נתונים, לוחצים על הוספת דגל.
    2. בוחרים דגל מהרשימה New database flag (דגל חדש למסד הנתונים).
    3. צריך לספק ערך לדגל.
    4. לוחצים על סיום.

    שינוי דיווח

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

    מחיקת דגל

    1. כדי למחוק דגל מסד נתונים מהמופע, בוחרים דגל ולוחצים על סמל המחיקה.
    2. לוחצים על סיום.
  5. לוחצים על עדכון המשני.

gcloud

משתמשים בפקודה gcloud alloydb instances update כדי לשנות את הדגלים של מסד הנתונים עבור מכונה משנית.

.
 gcloud alloydb instances update SECONDARY_INSTANCE_ID \
  --database-flags FLAGS_LIST \
  --region=REGION_ID \
  --cluster=CLUSTER_ID \
  --project=PROJECT_ID

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

  • SECONDARY_INSTANCE_ID: המזהה של המופע המשני.
  • FLAGS_LIST: רשימה מופרדת בפסיקים של מפרטים של דגלים של מסד נתונים. כל מפרט מורכב משם הדגל, סימן שוויון (=) והערך שמוקצה לדגלים. לדגלים של מסדי נתונים שלא מקבלים ערכים, צריך לציין את שם הדגל ואחריו סימן שווה (=).
  • REGION_ID: האזור שבו ממוקמת המכונה המשנית – לדוגמה, us-central1.
  • CLUSTER_ID: המזהה של האשכול שבו ממוקמת המכונה המשנית.
  • PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול המשני.

שינוי סוג המכונה של המופע המשני

כדי לשנות את סוג המכונה של המופע המשני:

המסוף

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

    כניסה לדף Clusters

  2. בעמודה שם המשאב, לוחצים על אשכול משני שרוצים לשנות.

  3. בדף סקירה כללית, עוברים לקטע Instances in your cluster (מופעים באשכול) ולוחצים על Edit secondary (עריכת המשני).

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

  4. בוחרים סוג מכונה.

  5. לוחצים על עדכון המשני.

gcloud

משתמשים בפקודה gcloud alloydb instances update כדי לשנות את סוג המכונה של המכונה המשנית.

 gcloud alloydb instances update SECONDARY_INSTANCE_ID \
  --cpu-count=CPU_COUNT \
  --region=REGION_ID \
  --cluster=CLUSTER_ID \
  --project=PROJECT_ID

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

  • SECONDARY_INSTANCE_ID: המזהה של המופע המשני שרוצים לעדכן.
  • CPU_COUNT: מספר ליבות ה-CPU הווירטואליות שרוצים להקצות למכונה. הערכים האפשריים כוללים:

    • 2 (2 vCPUs, ‏ 16 GB RAM)
    • 4 (4 vCPUs, ‏ 32 GB RAM)
    • 8 (8 vCPUs, ‏ 64 GB RAM)
    • 16 (16 vCPUs, 128 GB RAM)
    • 32 (32 vCPUs, 256 GB RAM)
    • 64 (64 vCPUs, ‏ 512 GB RAM)
  • REGION_ID: האזור שבו המכונה ממוקמת.

  • CLUSTER_ID: המזהה של האשכול שבו נמצאת המכונה.

  • PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול.

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

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

הוספת מופעים של מאגר קריאה לאשכול משני

כדי להוסיף מופע של מאגר לקריאה לאשכול משני, פועלים לפי השלבים הבאים:

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

    כניסה לדף Clusters

  2. בעמודה שם המשאב, לוחצים על אשכול משני שאליו רוצים להוסיף מופע של מאגר קריאה.

  3. בדף סקירה כללית, עוברים לקטע Instances in your cluster (מופעים באשכול) ולוחצים על Add read pool (הוספת מאגר קריאה).

  4. מגדירים את מופע מאגר הקריאה:

    1. בשדה Read pool instance ID (מזהה מופע של מאגר קריאה), מזינים מזהה של מופע מאגר קריאה.
    2. בשדה Node count (מספר הצמתים), מזינים את מספר הצמתים. מספר הצמתים במופע של מאגר קריאה קובע את קיבולת החישוב הכוללת של המופע. אפשר להגדיר עד 20 צמתים בכל המופעים של מאגר הקריאה באשכול.
    3. בוחרים סוג מכונה.
    4. אופציונלי: מגדירים דגלים מותאמים אישית למופע. לכל דגל, מבצעים את הפעולות הבאות:

      1. לוחצים על הוספת דגל.
      2. בוחרים דגל מהרשימה New database flag (דגל חדש למסד הנתונים).
      3. צריך לספק ערך לדגל.
      4. לוחצים על סיום.
  5. לוחצים על הוספת מאגר קריאה.

קידום של אוסף משני

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

  1. מפסיקים את כל פעולות הכתיבה לאשכול הראשי.
  2. כדי לבדוק את סטטוס הרפליקציה של האשכול המשני, מבצעים את השלבים הבאים:

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

      כניסה לדף Clusters

    2. ברשימת האשכולות, לוחצים על השם של האשכול המשני שרוצים להפוך לאשכול ראשי.

    3. בדף הפרטים של האשכול, לוחצים על Monitoring (מעקב).

    4. ברשימה Monitoring, בוחרים את המופע המשני. הוא מופיע ברשימה כמשני: INSTANCE_NAME.

    5. ברשימת המדדים, מאתרים את התרשים Replication lag from primary instance.

    6. מוודאים שמוצג בתרשים עיכוב מינימלי.

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

    7. ברשימת המדדים, מאתרים את התרשים Replication status.

    8. מוודאים שלכל הצמתים שמוצגים בתרשים יש ערך של streaming.

כדי לקדם אשכול משני לאשכול ראשי, מבצעים את השלבים הבאים:

המסוף

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

    כניסה לדף Clusters

  2. בעמודה Resource Name (שם המשאב), לוחצים על אשכול משני שרוצים להגדיר כאשכול ראשי.

  3. בדף סקירה כללית, לוחצים על קידום אשכול.

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

  5. לוחצים על קידום.

    אחרי שהאשכול מקודם, השדה Type: Secondary cluster (highly available) (סוג: אשכול משני (זמינות גבוהה)) בדף Overview (סקירה כללית) מתעדכן ל-Type: Highly available with read pools (סוג: זמינות גבוהה עם מאגרי קריאה).

gcloud

משתמשים בפקודה gcloud alloydb clusters promote:

 gcloud alloydb clusters promote SECONDARY_CLUSTER_ID \
 --region=REGION_ID \
 --project=PROJECT_ID \

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

  • SECONDARY_CLUSTER_ID: המזהה של האשכול המשני שרוצים להפוך לאשכול הראשי.
  • REGION_ID: מזהה האזור של האשכול המשני, לדוגמה,us-central1.
  • PROJECT_ID: המזהה של הפרויקט של האשכול המשני.

ביצוע מעבר לגיבוי

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

אם מבצעים מעבר לגיבוי בעת שיש כמה אשכולות משניים, השינויים הבאים מתרחשים:

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

בתרשים הבא מוצג מעבר מ-cluster-1 ב-us-central1 אל cluster-2 ב-us-east4:

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

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

כדי לבצע מעבר לגיבוי, פועלים לפי השלבים הבאים:

המסוף

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

    כניסה לדף Clusters

  2. בעמודה שם המשאב, לוחצים על אשכול משני שרוצים להגדיר כאשכול הראשי.

  3. בדף סקירה כללית, לוחצים על מעבר.

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

  5. לוחצים על מעבר.

אחרי שהאשכול עובר, השדה סוג: אשכול משני בדף סקירה כללית מתעדכן ל
סוג אשכול: אשכול ראשי וסוג אשכול: אשכול משני.

gcloud

משתמשים בפקודה gcloud alloydb clusters switchover:

 gcloud alloydb clusters switchover SECONDARY_CLUSTER_ID \
   --region=REGION_ID \
   --project=PROJECT_ID \

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

  • SECONDARY_CLUSTER_ID: המזהה של האשכול המשני שרוצים להפוך לאשכול הראשי.
  • REGION_ID: המזהה של האזור של האשכול המשני, לדוגמה us-central1.
  • PROJECT_ID: המזהה של הפרויקט של האשכול המשני.

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