הגדרת שכפול ראשי במצב המתנה עבור Postgres

Edge for Private Cloud גרסה 4.18.05

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

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

הגדרת רפליקציית מאסטר בהשהיה ב זמן ההתקנה

אפשר להגדיר רפליקציה של המתנה ראשית בזמן ההתקנה על ידי הכללת הקוד הבא מאפיינים בקובץ התצורה לשני הצמתים של Postgres:

PG_MASTER=IPorDNSofNewMaster
PG_STANDBY=IPorDNSofNewStandby

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

הגדרת רפליקציית מאסטר במצב המתנה לאחר ההתקנה

אפשר להגדיר רפליקציה של המתנה ברמת המאסטר לאחר ההתקנה באמצעות הפקודה הבאה תהליך:

  1. מזהים איזה צומת Postgre יהיה המאסטר ומי יהיה השרת ההמתנה.
  2. בצומת הראשי, עורכים את קובץ התצורה שיוגדר:
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofNewStandby
  3. הפעלת רפליקציה במאסטר החדש:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  4. בצומת ההמתנה, עורכים את קובץ התצורה כדי להגדיר:
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofNewStandby
  5. Stop the standby node:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  6. בצומת ההמתנה, מוחקים את כל נתוני Postgres הקיימים:
    rm -rf /opt/apigee/data/apigee-postgresql/
  7. מגדירים את הצומת למצב המתנה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile

בדיקת רפליקציית מאסטר במצב המתנה

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

  1. בצומת הראשי, מריצים את:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    בודקים אם כתוב שהוא המאסטר.

  2. בצומת ההמתנה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    בודקים שמדובר במצב ההמתנה.