مفهوم النسخ المتماثل لقاعدة البيانات

الهندسة

يستخدم محرك SKOOR قاعدة بيانات PostgreSQL لتخزين بيانات التكوين الخاصة به بالإضافة إلى قيمته التاريخية وبيانات السجل. وهو يدعم استخدام إعداد أساسي/احتياطي لتكرار محتويات قاعدة البيانات بشكل مستمر. يتم استخدام طرق التكرار الخاصة بـ PostgreSQL، مما يعني أن نسخة طبق الأصل من قاعدة البيانات الموجودة على الخادم الأساسي يتم الاحتفاظ بها على الخادم الاحتياطي وأن جميع التحديثات التي يتم إجراؤها على قاعدة البيانات الموجودة على الخادم الأساسي يتم تكرارها على الفور على الخادم الاحتياطي. يقوم الخادم الأساسي بتخزين عبارات SQL في سجل ثنائي، ويطلب الخادم الاحتياطي هذه العبارات من الخادم.

وهذا يضمن فترات انقطاع قصيرة في حالة حدوث أعطال في الأجهزة. ومع ذلك، فإنه لن يحمي من الأخطاء اليدوية مثل عبارات الحذف الخاطئة التي سيتم مزامنتها على الفور مع الخادم الاحتياطي. لا يحل النسخ المتماثل محل النسخ الاحتياطية المنتظمة.

يوضح الشكل التالي مثالاً لتخطيط النسخ المتماثل القياسي.

في الوضع الافتراضي، يتحمل الخادم الأساسي كل الحمل، ويتم الرد على جميع طلبات المستخدمين بواسطة خادم الويب Apache على الخادم الأساسي، ويتم تسليم بيانات القياس بواسطة أجهزة التجميع إلى الخادم الأساسي الحالي وتخزينها في قاعدة البيانات. لا تعمل الخدمات eranger-server و eranger-collector و eranger-report على الخادم الاحتياطي.

الميزات الرئيسية لإعداد النسخ المتماثل

  • يمكن تنفيذ النسخ المتماثل حتى مع جامعي SKOOR الخارجيين.

  • إذا تم إصدار نسخة متماثلة مسبقًا، فمن المحتمل أن يكون جزء كبير من ملفات قاعدة البيانات متزامنًا بالفعل. لن يقوم البرنامج النصي بنقل الجداول القديمة التي تمت مزامنتها بالفعل. هذا يوفر عرض النطاق الترددي للشبكة إذا كان لا بد من إعادة التهيئة.

  • لا يوجد تحويل تلقائي من الخادم الأساسي إلى الخادم الاحتياطي. تم تصميمه لترك هذا القرار للإنسان. ومع ذلك، يدعم البرنامج النصي وضعًا غير تفاعلي يسمح بإصدار تحويل بواسطة برنامج نصي. (خيار -f ).

  • إمكانية مراقبة الخادم الأساسي من الخادم الاحتياطي (بغض النظر عن SKOOR) عن طريق إرسال بريد إلكتروني واحد بمجرد اكتشاف أن محرك SKOOR لم يعد يعمل على الخادم الأساسي الحالي.

  • إمكانية تشغيل نصوص أو أوامر مخصصة قبل و/أو بعد تبديل وظائف الخادم (من الاحتياطي إلى الأساسي والعكس).

المتطلبات

لإعداد نسخ قاعدة البيانات، يلزم وجود خادم SKOOR ثانٍ بنفس مواصفات الأداء مثل الخادم الأول. على الرغم من أن هذا الخادم الاحتياطي سيكون في وضع الاستعداد معظم الوقت، إلا أنه يجب أن يكون قادرًا على تحمل الحمل الكامل عندما تتغير وظيفته من احتياطي إلى أساسي.

يجب استيفاء المتطلبات التالية:

  • تثبيت نفس إصدار SKOOR على الخادم الرئيسي والخادم الاحتياطي.

  • (اختياري) إعداد المجمعات الخارجية بشكل صحيح وتشغيلها

    • يجب تعيين المعلمة server<n>_address على نفس عنوان IP الخاص بالخادم الأساسي

    • لا يمكن تبديل المجمعات التي تستخدم بروتوكول HTTP تلقائيًا

  • يجب أن يكون الملف /opt/eranger/bin/eranger-server-replication.pl متطابقًا على الخادم الأساسي والخادم الاحتياطي وجميع أجهزة التجميع. وهذا يعني أن جميع المضيفات المعنية يجب أن يكون مثبتًا عليها نفس إصدار SKOOR.

  • ملف /etc/opt/eranger/eranger-replication.cfg تم تكوينه بشكل صحيح ومطابق على الخادم الأساسي والخادم الاحتياطي وجميع أجهزة التجميع.

  • اتصال الشبكة

    • منفذ TCP 22 (ssh) من الخادم الأساسي إلى الخادم الاحتياطي، والعكس، ومن الخادم الأساسي والخادم الاحتياطي إلى جميع المجمعات الخارجية.

    • منفذ TCP 50001 (تسليم بيانات جامع SKOOR) من جميع المجمعات الخارجية إلى الجهاز الأساسي والجهاز الاحتياطي.