إنشاء وإدارة النسخ المتماثلة للقراءة في قاعدة بيانات Azure ل PostgreSQL - خادم مرن من مدخل Microsoft Azure أو CLI أو واجهة برمجة تطبيقات REST
مقالة
ينطبق على: قاعدة بيانات Azure ل PostgreSQL - خادم مرن
في هذه المقالة، ستتعلم كيفية إنشاء وإدارة النسخ المتماثلة للقراءة في قاعدة بيانات Azure لخادم PostgreSQL المرن من مدخل Microsoft Azure وCLI وواجهة برمجة تطبيقات REST. لمعرفة المزيد حول قراءة النسخ المتماثلة، راجع نظرة عامة.
عند نشر النسخ المتماثلة للقراءة لأحمال العمل الأساسية كثيفة الكتابة المستمرة، يمكن أن يستمر تأخر النسخ المتماثل في النمو وقد لا يلحق أبدا بأحمال العمل الأساسية. قد يؤدي هذا أيضا إلى زيادة استخدام التخزين في الأساسي حيث يتم حذف ملفات WAL فقط بمجرد استلامها في النسخة المتماثلة.
مراجعة الإعدادات الأساسية
قبل إعداد نسخة متماثلة للقراءة لقاعدة بيانات Azure لخادم PostgreSQL المرن، تأكد من تكوين الخادم الأساسي لتلبية المتطلبات الأساسية الضرورية. يمكن أن تؤثر الإعدادات المحددة على الخادم الأساسي على القدرة على إنشاء نسخ متماثلة.
النمو التلقائي للتخزين: يجب أن تلتزم إعدادات التخزين التلقائي على الخادم الأساسي والنسخ المتماثلة للقراءة الخاصة به بإرشادات محددة لضمان التناسق ومنع اضطرابات النسخ المتماثل. راجع التخزين التلقائي للحصول على القواعد والإعدادات التفصيلية.
Premium SSD v2: لا يدعم الإصدار الحالي إنشاء نسخ متماثلة للقراءة للخوادم الأساسية باستخدام تخزين Premium SSD v2. إذا كان حمل العمل يتطلب قراءة النسخ المتماثلة، فاختر خيار تخزين مختلف للخادم الأساسي.
في مدخل Microsoft Azure، اختر مثيل خادم Azure Database for PostgreSQL المرن الذي تريده للنسخة المتماثلة.
في مربع الحوار نظرة عامة ، لاحظ إصدار PostgreSQL (على سبيل المثال 15.4). لاحظ أيضا المنطقة التي يتم نشر الأساسي فيها (على سبيل المثال، East US).
على الشريط الجانبي للخادم، ضمن Settings، حدد Compute + storage.
راجع الإعدادات التالية ولاحظها:
طبقة الحوسبة، المعالج، الحجم (على سبيل المثال Standard_D4ads_v5).
التخزين
حجم التخزين (على سبيل المثال 128GB)
النمو التلقائي
قابلية الوصول العالية
ممكن / معطل
إعدادات منطقة التوفر
إعدادات النسخ الاحتياطي
فترة الاستبقاء
خيارات التكرار
ضمن الإعدادات، حدد الشبكات.
مراجعة إعدادات الشبكة.
إشعار
تنطبق الأوامر المتوفرة في هذا الدليل على الإصدار 2.56.0 من Azure CLI أو أعلى. تأكد من تثبيت الإصدار المطلوب أو الإصدار الأحدث لتنفيذ هذه الأوامر بنجاح. يمكنك التحقق من إصدار Azure CLI الحالي عن طريق التشغيل az --version في واجهة سطر الأوامر. لتحديث Azure CLI إلى أحدث إصدار، اتبع الإرشادات المتوفرة في وثائق Azure CLI.
لعرض التكوين والحالة الحالية لخادم Azure PostgreSQL المرن، استخدم az postgres flexible-server show الأمر . يوفر هذا الأمر معلومات مفصلة حول الخادم المحدد.
az postgres flexible-server show \
--resource-group <resource-group> \
--name <server-name>
استبدل <resource-group> و <server-name> بمجموعة الموارد المحددة واسم الخادم الذي ترغب في عرضه.
راجع الإعدادات التالية ولاحظها:
طبقة الحوسبة، المعالج، الحجم (على سبيل المثال Standard_D8ads_v5).
للحصول على معلومات حول تكوين خادم في قاعدة بيانات Azure لخادم PostgreSQL المرن، خاصة لعرض إعدادات الميزات التي تم تقديمها مؤخرا مثل التخزين التلقائي أو الارتباط الخاص، يجب استخدام أحدث إصدار 2023-06-01-previewمن واجهة برمجة التطبيقات . GET سيتم تنسيق الطلب على النحو التالي:
استبدل {subscriptionId}و {resourceGroupName}و {serverName} بمعرف اشتراك Azure واسم مجموعة الموارد واسم الخادم الأساسي الذي تريد مراجعته، على التوالي. يمنحك هذا الطلب حق الوصول إلى تفاصيل التكوين الخاصة بالخادم الأساسي، مما يضمن إعداده بشكل صحيح لإنشاء نسخة متماثلة للقراءة.
راجع الإعدادات التالية ولاحظها:
طبقة الحوسبة، المعالج، الحجم (على سبيل المثال Standard_D8ads_v5).
حدد قاعدة بيانات Azure موجودة لمثيل خادم PostgreSQL المرن لاستخدامه كخادم أساسي.
على الشريط الجانبي للخادم، ضمن Settings، حدد Replication.
حدد Create replica.
أدخل نموذج الأساسيات بالمعلومات التالية.
حدد Review + create لتأكيد إنشاء النسخة المتماثلة أو Next: Networking إذا كنت تريد إضافة أي قواعد جدار حماية أو حذفها أو تعديلها.
اترك الإعدادات الافتراضية المتبقية ثم حدد الزر Review + create في أسفل الصفحة أو انتقل إلى النماذج التالية لإضافة علامات أو تغيير طريقة تشفير البيانات.
راجع المعلومات فـي نافذة التأكيد النهائية. عندما تكون مستعداً، حدد Create. يتم إنشاء نشر جديد.
أثناء النشر، سترى الأساسي في Updating الحالة.
بعد إنشاء النسخة المتماثلة للقراءة، يمكن عرضها من نافذة النسخ المتماثل .
بعد إنشاء النسخة المتماثلة للقراءة، يمكن الحصول على خصائص كافة الخوادم، وهي نسخ متماثلة من نسخة متماثلة az postgres flexible-server replica create أساسية باستخدام الأمر .
az postgres flexible-server replica list \
--name <source-server-name> \
--resource-group <resource-group>
استبدل <source-server-name>، و <resource-group> بقيمك المحددة.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{replicaserverName}?api-version=2022-12-01
هنا، تحتاج إلى استبدال {subscriptionId}و {resourceGroupName}و {replicaserverName} بمعرف اشتراك Azure المحدد واسم مجموعة الموارد والاسم المطلوب للنسخة المتماثلة للقراءة، على التوالي.
بعد إنشاء النسخة المتماثلة للقراءة، يمكن الحصول على خصائص كافة الخوادم، وهي نسخ متماثلة من نسخة متماثلة أساسية عن طريق بدء HTTP GET طلب باستخدام قائمة النسخ المتماثلة بواسطة واجهة برمجة تطبيقات الخادم:
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{sourceserverName}/replicas?api-version=2022-12-01
هنا، تحتاج إلى استبدال {subscriptionId}و {resourceGroupName}و {sourceserverName} بمعرف اشتراك Azure المحدد واسم مجموعة الموارد والاسم الذي قمت بتعيينه إلى النسخة المتماثلة الأساسية الخاصة بك، على التوالي.
لتجنب المشكلات أثناء ترقية النسخ المتماثلة باستمرار تغيير معلمات الخادم التالية على النسخ المتماثلة أولا، قبل تطبيقها على الأساسي: max_connections، max_prepared_transactions، max_locks_per_transaction، ، max_wal_senders. max_worker_processes
إنشاء نقاط نهاية ظاهرية
إشعار
يتم تنفيذ جميع العمليات التي تتضمن نقاط النهاية الظاهرية - مثل الإضافة أو التحرير أو الإزالة - في سياق الخادم الأساسي.
لإنشاء نقطة نهاية ظاهرية باستخدام واجهة برمجة تطبيقات REST الخاصة ب Azure، يمكنك استخدام HTTP PUT طلب. سيبدو الطلب كما يلي:
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{sourceserverName}/virtualendpoints/{virtualendpointName}?api-version=2023-06-01-preview
على الشريط الجانبي للخادم، ضمن Settings، حدد Replication.
في أعلى الصفحة، ترى كل من نقاط نهاية القارئ والكاتب معروضة، بالإضافة إلى أسماء الخوادم التي يشيرون إليها.
يمكنك عرض تفاصيل نقطة النهاية الظاهرية باستخدام الأمر list أو show . نظرا إلى أنه يسمح بنقطة نهاية ظاهرية واحدة فقط لكل زوج من النسخ المتماثلة الأساسية، ينتج عن كلا الأمرين نفس النتيجة.
فيما يلي مثال على كيفية استخدام list الأمر:
az postgres flexible-server virtual-endpoint list \
--resource-group <resource-group> \
--server-name <server-name>
استبدل <server-name> باسم الخادم الأساسي واسم <resource-group> مجموعة الموارد الخاصة بك.
فيما يلي كيفية استخدام show الأمر:
az postgres flexible-server virtual-endpoint show \
--name <virtual-endpoint-name>
--resource-group <resource-group> \
--server-name <server-name>
في هذا الأمر، استبدل <virtual-endpoint-name>و<server-name> و <resource-group> بالأسماء المعنية. <server-name> هو اسم الخادم الأساسي.
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{sourceserverName}/virtualendpoints?api-version=2023-06-01-preview
هنا، {sourceserverName} يجب أن يكون اسم الخادم الأساسي الذي تدير منه نقاط النهاية الظاهرية.
تعديل التطبيق للإشارة إلى نقطة النهاية الظاهرية
تعديل أي تطبيقات تستخدم قاعدة بيانات Azure لمثيل خادم PostgreSQL المرن لاستخدام نقاط النهاية الظاهرية الجديدة (على سبيل المثال: corp-pg-001.writer.postgres.database.azure.com و corp-pg-001.reader.postgres.database.azure.com).
ترقية النسخ المتماثلة
مع وجود جميع المكونات الضرورية في مكانها، فأنت مستعد لتنفيذ نسخة متماثلة ترقية إلى العملية الأساسية.
لتعزيز النسخة المتماثلة من مدخل Microsoft Azure، اتبع الخطوات التالية:
في مدخل Microsoft Azure، حدد قاعدة بيانات Azure الأساسية لمثيل خادم PostgreSQL المرن.
في قائمة الخادم، ضمن Settings، حدد Replication.
ضمن Servers، حدد رمز Promote للنسخة المتماثلة.
في مربع الحوار، تأكد من أن الإجراء هو ترقية إلى الخادم الأساسي.
بالنسبة لمزامنة البيانات، تأكد من التخطيط - مزامنة البيانات قبل تحديد الترقية.
حدد ترقية لبدء العملية. بمجرد اكتماله، تعكس الأدوار: تصبح النسخة المتماثلة هي الأساسية، وتفترض النسخة الأساسية دور النسخة المتماثلة.
عند ترقية نسخة متماثلة إلى خادم أساسي في Azure PostgreSQL Flexible Server، استخدم az postgres flexible-server replica promote الأمر . هذه العملية ضرورية لرفع خادم النسخة المتماثلة للعمل كخادم أساسي وخفض الدور الأساسي الحالي إلى دور النسخة المتماثلة. حدد --promote-mode switchover و --promote-option planned في الأمر .
استبدل <resource-group> و <replica-server-name> بمجموعة الموارد المحددة واسم خادم النسخة المتماثلة. يضمن هذا الأمر انتقالا سلسا للنسخة المتماثلة إلى دور أساسي بطريقة مخططة.
عند ترقية نسخة متماثلة إلى خادم أساسي، استخدم HTTP PATCH طلبا مع نص معين JSON لتعيين خيارات الترقية. هذه العملية ضرورية عندما تحتاج إلى رفع خادم النسخة المتماثلة للعمل كخادم أساسي.
في هذا JSON، يتم تعيين الترقية إلى أن تحدث في switchover الوضع مع خيار ترقية planned . في حين أن هناك خيارين للترقية - planned أو forced - تم اختيارهما planned لهذا التمرين.
إشعار
يجب أن يكون للنسخة المتماثلة التي تقوم بالترويج لها نقطة نهاية ظاهرية للقارئ معينة، أو ستتلقى خطأ في الترقية.
اختبار التطبيقات
لتنفيذ بعض العمليات، أعد تشغيل التطبيقات ثم حاول تنفيذ هذه العمليات. يجب أن تعمل تطبيقاتك بسلاسة دون تعديل نقطة النهاية الظاهرية سلسلة الاتصال أو إدخالات DNS. اترك تطبيقاتك قيد التشغيل هذه المرة.
إرجاع الموارد إلى الخادم والمنطقة الأصليين
كرر نفس العمليات لترويج الخادم الأصلي إلى الأساسي.
على الشريط الجانبي للخادم، ضمن Settings، حدد Replication
ضمن Servers، حدد رمز Promote للنسخة المتماثلة.
في مربع الحوار، تأكد من أن الإجراء هو ترقية إلى الخادم الأساسي.
بالنسبة لمزامنة البيانات، تأكد من التخطيط - مزامنة البيانات قبل تحديد الترقية.
حدد ترقية، تبدأ العملية. بمجرد اكتماله، تعكس الأدوار: تصبح النسخة المتماثلة هي الأساسية، وتفترض النسخة الأساسية دور النسخة المتماثلة.
هذه المرة، قم بتغيير <replica-server-name> في az postgres flexible-server replica promote الأمر للإشارة إلى الخادم الأساسي القديم الخاص بك، والذي يعمل حاليا كنسخة متماثلة، وتنفيذ الطلب مرة أخرى.
استبدل <resource-group> و <replica-server-name> بمجموعة الموارد المحددة واسم خادم النسخة المتماثلة الحالي.
هذه المرة، قم بتغيير {replicaserverName} في طلب واجهة برمجة التطبيقات للإشارة إلى الخادم الأساسي القديم، والذي يعمل حاليا كنسخة متماثلة، وقم بتنفيذ الطلب مرة أخرى.
في هذا JSON، يتم تعيين الترقية إلى أن تحدث في switchover الوضع مع خيار ترقية planned . في حين أن هناك خيارين للترقية - planned أو forced - تم اختيارهما planned لهذا التمرين.
اختبار التطبيقات
مرة أخرى، قم بالتبديل إلى أحد التطبيقات المستهلكة. انتظر حتى تتغير الحالة الأساسية والنسخة المتماثلة إلى Updating ثم حاول تنفيذ بعض العمليات. أثناء ترقية النسخة المتماثلة، قد يواجه تطبيقك مشكلات اتصال مؤقتة بنقطة النهاية:
إضافة نسخة متماثلة للقراءة الثانوية
إنشاء نسخة متماثلة ثانوية للقراءة في منطقة منفصلة لتعديل نقطة النهاية الظاهرية للقارئ والسماح بإنشاء خادم مستقل من النسخة المتماثلة الأولى.
اختر اسما <replica-name> مميزا لتمييزه عن الخادم الأساسي وأي نسخ متماثلة أخرى.
استبدل <resource-group>و <source-server-name>و <location> بقيمك المحددة.
يمكنك إنشاء نسخة متماثلة ثانوية للقراءة باستخدام واجهة برمجة تطبيقات إنشاء الخوادم:
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBForPostgreSql/flexibleServers/{replicaserverName}?api-version=2022-12-01
اختر اسما {replicaserverName} مميزا لتمييزه عن الخادم الأساسي وأي نسخ متماثلة أخرى.
في مدخل Microsoft Azure، اختر قاعدة بيانات Azure الأساسية لمثيل خادم PostgreSQL المرن.
على الشريط الجانبي للخادم، ضمن Settings، حدد Replication.
حدد علامات الحذف ثم حدد تحرير.
في مربع الحوار، حدد النسخة المتماثلة الثانوية الجديدة.
حدد حفظ. يتم الآن توجيه نقطة نهاية القارئ إلى النسخة المتماثلة الثانوية، ويتم ربط عملية الترقية الآن بهذه النسخة المتماثلة.
يمكنك الآن تعديل نقطة نهاية القارئ للإشارة إلى النسخة المتماثلة الثانوية التي تم إنشاؤها حديثا باستخدام أمر az postgres flexible-server virtual-endpoint update . تذكر استبدال <replica-name> باسم النسخة المتماثلة للقراءة التي تم إنشاؤها حديثا.
يمكنك الآن تعديل نقطة نهاية القارئ للإشارة إلى النسخة المتماثلة الثانوية التي تم إنشاؤها PATCH حديثا باستخدام طلب. تذكر استبدال {replicaserverName} باسم النسخة المتماثلة للقراءة التي تم إنشاؤها حديثا.
في مدخل Microsoft Azure، اختر خادم خادم أساسي مرن لقاعدة بيانات Azure ل PostgreSQL.
على الشريط الجانبي للخادم، في قائمة الخادم، ضمن Settings، حدد Replication.
ضمن الخوادم، حدد أيقونة ترقية للنسخة المتماثلة التي تريد ترقيتها إلى خادم مستقل.
في مربع الحوار، تأكد من أن الإجراء هو ترقية إلى خادم مستقل وإزالته من النسخ المتماثل. لن يؤثر هذا على الخادم الأساسي.
بالنسبة لمزامنة البيانات، تأكد من التخطيط - مزامنة البيانات قبل تحديد الترقية.
حدد ترقية، تبدأ العملية. بمجرد الانتهاء، لم يعد الخادم نسخة متماثلة من الأساسي.
عند ترقية نسخة متماثلة في Azure PostgreSQL Flexible Server، فإن السلوك الافتراضي هو ترقيتها إلى خادم مستقل. يتم تحقيق الترقية az postgres flexible-server replica promote باستخدام الأمر دون تحديد --promote-mode الخيار، حيث standalone يتم افتراض الوضع افتراضيا.
في هذا الأمر، استبدل <resource-group> و <replica-server-name> باسم مجموعة الموارد المحددة واسم خادم النسخة المتماثلة الأول الذي قمت بإنشائه، وهذا ليس جزءا من نقطة النهاية الظاهرية بعد الآن.
يمكنك ترقية نسخة متماثلة إلى خادم مستقل باستخدام PATCH طلب. PATCH أرسل طلبا إلى عنوان URL المحدد لواجهة برمجة تطبيقات REST لإدارة Azure مع النص الأساسي الأولJSON، حيث PromoteMode يتم تعيين إلى standalone وإلى PromoteOptionplanned. تم إهمال تنسيق النص الثاني JSON ، إعداد ReplicationRole إلى None، ولكن لا يزال مذكورا هنا للتوافق مع الإصدارات السابقة.
على الشريط الجانبي للخادم، ضمن Settings، حدد Replication.
في أعلى الصفحة، حدد موقع Virtual endpoints المقطع. انتقل إلى النقاط الثلاث (خيارات القائمة) بجوار اسم نقطة النهاية، وقم بتوسيعه، واختر Delete.
يظهر مربع حوار تأكيد الحذف. يحذرك: "يحذف هذا الإجراء نقطة virtualendpointNameالنهاية الظاهرية . قد يفقد أي عملاء متصلين باستخدام هذه المجالات إمكانية الوصول." قم بالإقرار بالآثار والتأكيد بالنقر فوق حذف.
في هذا الأمر، استبدل <resource-group>و <server-name>و <virtual-endpoint-name> بمجموعة الموارد المحددة واسم الخادم واسم نقطة النهاية الظاهرية التي ترغب في حذفها.
لحذف نقطة نهاية ظاهرية باستخدام واجهة برمجة تطبيقات REST الخاصة ب Azure، يمكنك إصدار HTTP DELETE طلب. سيتم تنظيم عنوان URL للطلب على النحو التالي:
يمكنك حذف نسخة متماثلة للقراءة مشابهة لكيفية حذف قاعدة بيانات Azure المستقلة لمثيل خادم PostgreSQL المرن.
في مدخل Microsoft Azure، افتح صفحة Overview للنسخة المتماثلة للقراءة. حدد حذف.
يمكنك أيضاً حذف النسخة المتماثلة للقراءة من نافذة النسخ المتماثل باتباع الخطوات التالية:
في مدخل Microsoft Azure، حدد قاعدة بيانات Azure الأساسية لمثيل خادم PostgreSQL المرن.
في قائمة الخادم، ضمن Settings، حدد Replication.
حدد النسخة المتماثلة للقراءة لحذفها ثم حدد علامات الحذف. حدد حذف.
الإقرار بعملية الحذف .
لحذف خادم أساسي أو خادم نسخة متماثلة az postgres flexible-server delete ، استخدم الأمر . إذا كان الخادم يحتوي على نسخ متماثلة للقراءة، فيجب عليك حذف النسخ المتماثلة للقراءة أولا قبل حذف الخادم الأساسي.
az postgres flexible-server delete \
--resource-group <resource-group> \
--name <server-name>
استبدل <resource-group> و <server-name> باسم مجموعة الموارد واسم خادم النسخة المتماثلة الذي ترغب في حذفه.
لحذف خادم أساسي أو خادم نسخة متماثلة، استخدم الخوادم حذف API. إذا كان الخادم يحتوي على نسخ متماثلة للقراءة، فيجب حذف النسخ المتماثلة للقراءة أولا قبل حذف الخادم الأساسي.
يمكنك حذف الخادم الأساسي فقط بمجرد حذف جميع النسخ المتماثلة للقراءة. لحذف النسخ المتماثلة، اتبع الإرشادات الموجودة في قسم حذف نسخة متماثلة ثم تابع الخطوات المتوفرة.
لحذف خادم من مدخل Microsoft Azure، اتبع الخطوات التالية:
في مدخل Microsoft Azure، حدد قاعدة بيانات Azure الأساسية لمثيل خادم PostgreSQL المرن.
افتح صفحة Overview للخادم وحدد Delete.
أدخل اسم الخادم الأساسي المراد حذفه. حدد حذف لتأكيد حذف الخادم الأساسي.
لحذف خادم أساسي أو خادم نسخة متماثلة az postgres flexible-server delete ، استخدم الأمر . إذا كان الخادم يحتوي على نسخ متماثلة للقراءة، فيجب حذف النسخ المتماثلة للقراءة أولا قبل حذف الخادم الأساسي.
az postgres flexible-server delete \
--resource-group <resource-group> \
--name <server-name>
استبدل <resource-group> و <server-name> باسم مجموعة الموارد واسم الخادم الأساسي الذي ترغب في حذفه.
لحذف خادم أساسي أو خادم نسخة متماثلة، استخدم الخوادم حذف API. إذا كان الخادم يحتوي على نسخ متماثلة للقراءة، فيجب حذف النسخ المتماثلة للقراءة أولا قبل حذف الخادم الأساسي.
يظهر مقياس Max Physical Replication Lag تأخر البايت بين الخادم الأساسي والنسخة المتماثلة الأكثر تأخرا.
في مدخل Microsoft Azure، حدد الخادم الأساسي.
حدد القياسات. في نافذة Metrics ، حدد Max Physical Replication Lag.
بالنسبة إلى Aggregation الخاص بك، حدد Max.
قراءة مقياس تأخر النسخة المتماثلة
يعرض مقياس Read Replica Lag الوقت منذ آخر معاملة تمت إعادة تشغيلها على نسخة متماثلة. إذا لم تحدث أي معاملات على الأساسي الخاص بك، فإن المقياس يعكس هذا التأخير الزمني. على سبيل المثال، إذا لم تحدث أي معاملات على الخادم الأساسي الخاص بك، وتم إعادة تشغيل المعاملة الأخيرة قبل 5 ثوان، فعندئذ يعرض Read Replica Lag تأخيرا لمدة 5 ثوان.
في مدخل Microsoft Azure، حدد قراءة النسخة المتماثلة.
حدد القياسات. في نافذة Metrics ، حدد Read Replica Lag.