ما هي أبسط الطرق الأكثر موثوقية لضمان إمكانية استعادة منتدى Discourse دائمًا؟

على مر السنين، ساعدت أصدقاء في استضافة منتدياتهم الخاصة.

جعلتهم يستأجرون خادمًا من Hetzner، وقمت بإعداد نسخ احتياطية آلية على Discourse، ثم مزامنتها مع Google Drive الخاص بي باستخدام rclone ومهمة cron. كل مشرف لكل منتدى لديه وصول إلى نسخ احتياطية خاصة به على Drive الخاص بي. إنها أبسط وأأمن حل يمكنني تخيله بصفتي شخصًا غير متخصص في إدارة الأنظمة.

في بعض الأحيان، لاحظت أن الرموز (tokens) لم تُحدَّث في rClone (على الأقل في حالة واحدة)، وكان عليّ إعادة ضبطه. وبما أنني لا أملك أي تنبيهات على الإطلاق إذا لم تنجح المزامنة، فأنا أتحقق يدويًا من Drive الخاص بي من وقت لآخر للتأكد من أن آخر النسخ الاحتياطية حديثة.

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

أقوم بسحب النسخ الاحتياطية باستخدام rsync عبر ssh، بحساب مقيّد، من مهمة مجدولة (cronjob). في الواقع، أنا لا أفعل ذلك، لكن أحد مشرفي الموقع يقوم بذلك. أنا أقوم بأخذ نسخة احتياطية وتحميلها عند إجراء تحديث. لذا، في الحالة الأولى، قد نفقد بضعة أيام من نشاط المنتدى، وفي الحالة الأخرى، قد نفقد شهرًا أو أكثر.

ربما يجب أن أقوم بإعداد جدول cron خاص بي. يمكنني أيضًا زيادة تكرار النسخ الاحتياطي - وهو حاليًا مضبوط على يومين.

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

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

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

أنصح باستخدام S3 للنسخ الاحتياطي. قم بأخذ نسخ احتياطية يومية للمنتدى إذا كنت تريد الأمان. ونسخ احتياطية لـ VPS إذا كنت تريد أمانًا إضافيًا.

كما يوجد:

حسنًا، أنا أقوم بنسخ قاعدة البيانات احتياطيًا كل ساعة :man_shrugging: المبدأ نفسه ينطبق على التجارة الإلكترونية — يجب مراعاة ما هو أطول إطار زمني يمكنني أو أرغب في استعادة البيانات إليه.

النسخ الاحتياطي إلى S3 وإلى قرص خارجي باستخدام restic

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

تنبيه: يجب أن تتذكر دفع فاتورة حاوية S3 بالإضافة إلى فاتورة الخادم الافتراضي (VM). أعتقد أن خدمة Cloudflare هي الأرخص؟

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