أفضل طريقة للاستعادة من النسخ الاحتياطية مع الإضافات؟

لقد قمنا مؤخرًا بالترقية إلى Discourse من vBulletin.

ما زلنا نتعلم كيفية استخدام Discourse وأدواته.

إحدى مخاوفي هي التعافي من الكوارث.

لدينا لقطات تلقائية نحتفظ بها لفترة طويلة.

نقوم بنسخ احتياطي يومي باستخدام الأدوات داخل Discourse ونحفظها في سلة S3 لمدة 15 يومًا.

التعافي من لقطة أمر مباشر جدًا.
الفكرة هي التعافي من آخر لقطة متاحة تعمل، ثم استخدام آخر نسخة احتياطية متاحة لاستعادة المحتوى.

كنت بحاجة إلى جهاز اختبار لتجربة بعض إضافات Discourse.
لذا كانت هذه فرصة جيدة لتجربة خطة التعافي من الكوارث.

لكن بدلاً من استخدام لقطة، حاولت الاستعادة من الصفر (فقط في حال ساءت الأمور واضطررنا إلى البدء من الصفر لاستعادة نسخة احتياطية متاحة).

لقد أنشأت جهاز Debian، وقمت بتحديث البرامج، وقمت بتثبيت Discourse من الصفر (بدون أي إضافات مثبتة، فقط الحد الأدنى الأساسي).

قمنا بتكوين HTTPS لجعله يعمل، وبعد ذلك حاولت استعادة آخر نسخة احتياطية.

فشل أثناء تحديث قاعدة البيانات.
اشتكى من وجود بعض الأعمدة غير موجودة في بعض الجداول. تم التراجع، وكان لدي مرة أخرى نفس المحتوى: تقريبًا لا شيء.

عند قراءة الأخطاء وبعض الموضوعات هنا، أدركت أن السبب قد يكون اختلاف إصدارات Discourse.

تحققت من ذلك. نعم، كان المنتدى الجديد يحتوي على إصدار أحدث قليلاً من الإصدار الأصلي.

قمنا بترقية المنتدى الأصلي إلى أحدث إصدار وقمنا بعمل نسخة احتياطية.

حاولت استعادته وفشل مرة أخرى بأخطاء مماثلة.

لذا قد يكون السبب أن المنتدى الجديد لم يكن يحتوي على نفس الإضافات المثبتة.

لذلك قمت بتعديل ملف app.yml لتثبيت الإضافات، وإعادة بناء التطبيق، وحاولت مرة أخرى.

هذه المرة نجح الأمر بشكل جيد.

لكن ذلك جعلني قلقًا.

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

هذه المرة كان المنتدى القديم يعمل وكان من السهل التحقق من الإصدارات وتحديثه إلى الأحدث.

لكن عند التعافي من كارثة، لا تتاح لك فرصة للتحقق من الإصدارات أو ترقية البرامج.

كيف تحل هذه المشكلة؟

هل تحتوي النسخة الاحتياطية على معلومات حول الإضافات المثبتة وإصدارات Discourse والإضافات؟

كيف تنشئ مثيلًا أساسيًا لـ Discourse مع إصدارات Discourse والإضافات المناسبة لتطابق تلك الموجودة في نسختك الاحتياطية؟

شكرًا مقدّمًا على إرشاداتكم.

نادرًا ما تتدخل الإضافات في قاعدة البيانات.

جيف، المشكلة ليست في أن أحد الإضافات لا يعمل.

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

ولكن عند استعادة نسخة احتياطية من وقت سابق، لا تعرف بالضبط أي الإصدارات والإضافات كنت تستخدمها في ذلك الوقت.

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

لا، هذا غير صحيح.

هل تستخدم إضافات تابعة لجهات خارجية؟ لا أعتقد أن هذا سيحدث مع إضافات ديسكورد الرسمية حسب علمي.

إذن، هل يعني ذلك أنك لست بحاجة لتشغيل نفس الإصدار بالضبط الموجود في النسخ الاحتياطية لاستعادتها؟
واجهتُ بعض الأخطاء أثناء الاستعادة، وظننت أنها ناتجة عن اختلاف الإصدارات.

سيكون من المفيد القدرة على مراجعة إصدار Discourse وإصدار الإضافات في النسخة الاحتياطية قبل الاستعادة.

أنا أستخدم إضافة طرف ثالث واحدة فقط: معاينة قائمة المواضيع.

تمكنتُ من استعادة النسخة الاحتياطية بعد عدة محاولات (دون تغيير أي شيء).
وغريبًا، أن إحدى المحاولات نجحت دون أي أخطاء.

يمكنني رؤية أنني لست الوحيد الذي يواجه هذه المشكلة: