به طور پیش فرض، 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 را پس از نصب پیکربندی کنید:
- مشخص کنید کدام گره Postgre سرور اصلی و کدام یک سرور آماده به کار خواهد بود.
- در گره اصلی، فایل پیکربندی را ویرایش کنید تا تنظیم کنید:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
- فعال کردن تکرار در استاد جدید:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- در گره آماده به کار، فایل پیکربندی را ویرایش کنید تا تنظیم کنید:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
- گره آماده به کار را متوقف کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- در گره آماده به کار، تمام داده های Postgres موجود را حذف کنید:
rm -rf /opt/apigee/data/apigee-postgresql/
- پیکربندی گره آماده به کار:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
تست Master-Standby Replication
پس از اتمام تکرار، وضعیت تکرار را با صدور اسکریپت های زیر در هر دو سرور بررسی کنید. برای اطمینان از تکرار موفقیت آمیز، سیستم باید نتایج یکسانی را در هر دو سرور نمایش دهد:
- در گره اصلی، اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
تأیید کنید که می گوید استاد است.
- در گره آماده به کار:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
تأیید کنید که می گوید در حالت آماده به کار است.