Replication Master-Standby برای Postgres را تنظیم کنید، Replication Master-standby را برای Postgres تنظیم کنید

به طور پیش فرض، Edge تمام گره های Postgres را در حالت اصلی نصب می کند. با این حال، در سیستم‌های تولیدی با چندین گره Postgres، آنها را به گونه‌ای پیکربندی می‌کنید که از replication master-standby استفاده کنند تا اگر گره اصلی از کار بیفتد، گره آماده به کار بتواند به ترافیک ادامه دهد.

اگر گره اصلی از کار بیفتد، می توانید سرور آماده به کار را به استاد ارتقا دهید. برای اطلاعات بیشتر به مدیریت خرابی پایگاه داده PostgreSQL مراجعه کنید.

Replication Master-Standby را در زمان نصب پیکربندی کنید

می‌توانید در زمان نصب، Replication Master-standby را با گنجاندن ویژگی‌های زیر در فایل پیکربندی دو گره Postgres پیکربندی کنید:

PG_MASTER=IPorDNSofNewMaster
PG_STANDBY=IPorDNSofNewStandby

نصب‌کننده به‌طور خودکار دو گره Postgres را پیکربندی می‌کند تا به‌عنوان حالت آماده‌باش اصلی با تکرار عمل کنند.

پس از نصب، Master-Standby Replication را پیکربندی کنید

با استفاده از روش زیر می توانید Replication Master-Standby را پس از نصب پیکربندی کنید:

  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. گره آماده به کار را متوقف کنید:
    /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

تست Master-Standby Replication

پس از اتمام تکرار، وضعیت تکرار را با صدور اسکریپت های زیر در هر دو سرور بررسی کنید. برای اطمینان از تکرار موفقیت آمیز، سیستم باید نتایج یکسانی را در هر دو سرور نمایش دهد:

  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

    تأیید کنید که می گوید در حالت آماده به کار است.