كيفية إعداد مجموعة Nextcloud عالية التوفر باستخدام قاعدة بيانات Galera

إنّ نشر Nextcloud عالي التوافر باستخدام Galera هو نظام متكامل، وليس مجرد ثلاثة خوادم قواعد بيانات. أنت بحاجة أيضًا إلى عُقد تطبيق Nextcloud احتياطية، وطبقة بيانات ملفات مشتركة ومستدامة، وتخزين مؤقت موزّع، وقفل الملفات، وموازنة الأحمال، والمراقبة، ونسخ احتياطية مُختَبَرة. يستطيع Galera الحفاظ على خدمة قاعدة البيانات متاحة بعد تعطل إحدى عُقد قاعدة البيانات طالما بقي النصاب القانوني، لكنه لا يستطيع ضمان التوافر العالي للمكونات الأخرى.

يستخدم هذا الدليل تصميمًا محايدًا للبائعين لنظام لينكس مع MariaDB Galera وخادم وكيل عكسي أو موازن أحمال. تختلف أسماء الحزم وأسماء الخدمات ومسارات موفر Galera وأوامر التمهيد وتكاملات فحص سلامة الوكيل باختلاف التوزيعة وإصدار MariaDB. تأكد من مطابقتها مع وثائق الإصدار المحدد قبل النشر. يُدرج دليل إدارة Nextcloud المستقر الحالي PostgreSQL وMariaDB كمحركات قواعد بيانات موصى بها، ويحذر من اختلاف الإصدارات المدعومة؛ تحقق من متطلبات نظام Nextcloud للإصدار الذي تنوي تشغيله. تمت مراجعة هذه المقالة مع دليل Nextcloud 35 المستقر بتاريخ 6 أكتوبر 2026.

بنية مفاهيمية مع موازنات تحميل زائدة وعقد ويب متصلة بقاعدة بيانات Galera ثلاثية العقد، ووحدة تخزين مشتركة، وذاكرة تخزين مؤقت موزعة.
نظرة عامة مفاهيمية على بنية Nextcloud الكاملة عالية التوافر. كل تبعية ذات حالة تحتاج إلى خطة توافر خاصة بها.

اختر تصميم التوافر المناسب أولاً

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

اختيار التصميممناسب تمامًاالمقايضة الرئيسية
خادم واحد من MariaDB أو PostgreSQLعمليات نشر صغيرة تتطلب أبسط العملياتقد يؤدي إجراء صيانة لقاعدة البيانات أو حدوث عطل فيها إلى انقطاع الخدمة
MariaDB مع Galeraالفرق التي تحتاج إلى تكرار عقدة قاعدة البيانات والتي يمكنها تشغيل النصاب القانوني والشبكة والوكيل وإجراءات الاستردادالمزيد من العناصر المتحركة، وتنسيق الكتابة، ومعالجة النزاعات، وتعقيد التعافي
عقدتان لقاعدة البيانات بالإضافة إلى مُحكِّمالمواقع التي تحتوي على مضيفين لقواعد البيانات فقط، ولكن بنطاق فشل منفصل للتصويت على النصاب القانوني.يساعد المحكم في تحقيق النصاب القانوني؛ فهو لا يخزن البيانات ولا يحل محل نسخة ثالثة من قاعدة البيانات.
Galera خلف وكيل مُدرك لقاعدة البياناتعمليات النشر التي تتطلب نقطة نهاية اتصال مستقرة وتوجيهًا مُتحكمًا بهتُصبح عمليات فحص سلامة الخوادم الوكيلة وقواعد التوجيه خدمة أخرى يجب تشغيلها

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

قبل التثبيت: حدد معنى "التوافر العالي".

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

استخدم إصدارًا موحدًا من Nextcloud، وبيئة تشغيل PHP، ومجموعة تطبيقات، وإعدادات متطابقة على كل عقدة تطبيق. اختر إصدارات MariaDB وGalera متوافقة مع بعضها البعض ومدعومة من قِبل إصدار Nextcloud المُختار. تشمل متطلبات قاعدة بيانات Nextcloud استخدام InnoDB، وعزل المعاملات READ COMMITTED، وتعطيل تسجيل العمليات الثنائية أو استخدام تنسيق ROW؛ لا تنسخ قيم الضبط من إصدار مختلف دون التحقق من المتطلبات الحالية.

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

قم بإعداد المجموعة على 12 مرحلة

1. حجز أسماء المضيفين والعناوين ونقاط نهاية الخدمة

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

2. قم بتثبيت قاعدة بيانات متوافقة وإصدار Galera

قم بتثبيت خادم MariaDB وموفر Galera باستخدام مستودع المورّد الموصى به لنظام التشغيل الخاص بك. حافظ على نفس الخادم الرئيسي ونفس عائلة الموفر على جميع الأجهزة. لا تجمع حزمًا مجتمعية عشوائية مع مكتبة موفر تم تنزيلها بشكل منفصل. قبل المتابعة، تأكد من مسار الترقية المدعوم، وطريقة SST، ووحدة الخدمة، ودليل تضمين التكوين لمجموعة الحزم المحددة.

3. تطبيق متطلبات قاعدة بيانات Nextcloud

اضبط الخادم لاستخدام InnoDB ومستوى عزل المعاملات READ COMMITTED. استخدم تسجيل البيانات الثنائية ROW إذا كان التسجيل الثنائي مُفعّلاً. تحقق من القيم الفعلية بعد إعادة التشغيل بدلاً من افتراض تضمين ملف التكوين. توثّق Nextcloud هذه المتطلبات في دليل تكوين قاعدة البيانات ومتطلبات النظام .

محرر تكوين عام يحتوي على صفوف إعدادات محايدة وصف واحد محدد، بدون تسميات أو قيم خاصة بالمنتج.
تعامل مع كل تكوين Galera على أنه خاص بالعقدة وتحقق من أسماء الخيارات الخاصة بالحزمة قبل إعادة تشغيل MariaDB.

4. قم بتهيئة Galera بشكل متسق على جميع الأعضاء الثلاثة

استخدم مرجع تكوين المورّد لتعيين اسم المجموعة، وقائمة عناوين النظراء، والاسم والعنوان الفريدين لكل عقدة، ومكتبة المزوّد، وطريقة نقل لقطة الحالة (SST). تُعدّ SST العملية التي تُهيّئ عقدة الانضمام بحالة قاعدة البيانات. يحتوي تكوين مجموعة MariaDB النموذجي على خيارات من هذه المجموعة:

[mariadb]
wsrep_on=ON
wsrep_cluster_name=nextcloud-cluster
wsrep_cluster_address=gcomm://db1.example.net,db2.example.net,db3.example.net
wsrep_node_name=db1
wsrep_node_address=db1.example.net
wsrep_sst_method=mariabackup
binlog_format=ROW
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
transaction_isolation=READ-COMMITTED

غيّر القيم الخاصة بكل عقدة على كل خادم. تعتمد مسارات الموفر وطرق SST المدعومة على الحزم المثبتة؛ استخدم الطريقة الموثقة وبيانات الاعتماد الخاصة بإصدارك. احمِ بيانات اعتماد SST والشهادات وكلمات مرور قاعدة البيانات كبيانات سرية. لا تستخدم أبدًا عنوان مجموعة فارغًا كإعداد دائم: تشير وثائق MariaDB إلى أن ذلك قد يتسبب في بدء الخادم لمجموعة جديدة بدلًا من إعادة الانضمام إلى المجموعة الحالية.

5. تقييد الوصول إلى الشبكة على النظراء المطلوبين

اسمح لطبقة الويب بالوصول إلى نقطة نهاية خدمة قاعدة البيانات فقط، واسمح لأعضاء قاعدة البيانات بالتواصل فيما بينهم عبر منافذ النسخ المتماثل ونقل الحالة في Galera، وفقًا لمزود الخدمة وطريقة SST المُختارة. تستخدم عمليات نشر Galera الشائعة بروتوكول TCP، وبروتوكول UDP (حسب إعدادات مزود الخدمة) للتواصل الجماعي؛ وتشمل المنافذ الافتراضية ذات الصلة غالبًا المنفذ 4567 للنسخ المتماثل، والمنفذ 4568 لنقل الحالة التزايدي، والمنفذ 4444 لنقل لقطات الحالة. تعامل مع هذه المنافذ كقائمة مرجعية للتحقق من توافقها مع إصدارك وتكوينك، وليس كسبب لفتح جميع المنافذ على نطاق واسع. حافظ على خصوصية منفذ SQL وامنع الوصول العام إليه.

مصفوفة وصول شبكية مجردة توضح الاتصالات المحدودة بين طبقات الويب وقاعدة البيانات وذاكرة التخزين المؤقت والتخزين.
قم بتقييد الوصول من الشرق إلى الغرب للتطبيق المطلوب وحركة مرور Galera؛ لا تعرض منافذ قاعدة البيانات أو النسخ المتماثل بشكل علني.

6. قم بإنشاء العقدة الأولى، ثم قم بضم العقد الأخرى.

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

قم بتشغيل هذا الاستعلام على كل عضو في قاعدة البيانات بعد انضمامه:

SHOW GLOBAL STATUS WHERE Variable_name IN
('wsrep_cluster_status','wsrep_cluster_size','wsrep_ready',
 'wsrep_connected','wsrep_local_state_comment');

تأكد من أن كل عقدة متصلة وجاهزة، وأنها تنتمي إلى المكون الأساسي، وأنها تُبلغ عن حجم المجموعة المتوقع، وأنها وصلت إلى حالة التزامن. يشرح MariaDB هذه المؤشرات في دليل مراقبة Galera الخاص به .

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

7. أنشئ قاعدة بيانات مخصصة في Nextcloud وحسابًا بأقل قدر من الامتيازات

أنشئ قاعدة البيانات باستخدام مجموعة الأحرف والترتيب المطلوبين في دليل تثبيت Nextcloud الحالي. أنشئ مستخدمًا مخصصًا لقاعدة البيانات يقتصر على شبكة التطبيق، وامنحه فقط الصلاحيات اللازمة لإعداد Nextcloud وتشغيله بشكل طبيعي. استخدم بروتوكول TLS للاتصالات التي تعبر المضيفين أو أجزاء الشبكة غير الموثوقة، وتحقق من صحة الشهادات حيثما يدعمها نظامك. لا تُضِف بيانات اعتماد المستخدم الجذر إلى ملف config.php.

8. نشر عقد تطبيق Nextcloud متطابقة

ثبّت نفس إصدار كود Nextcloud، وإضافات PHP، والتطبيقات المُفعّلة، وإعدادات الخادم على كل عقدة ويب. قم بتهيئة نقطة نهاية واحدة لقاعدة البيانات المشتركة، وليس مضيفات قواعد بيانات مختلفة في ملفات خاصة بكل عقدة. يجب أن تستخدم جميع العقد نفس مُعرّف المثيل، والسر، والملح، وسياسة النطاق الموثوق، والإعدادات الأخرى على مستوى المثيل. خزّن الإعدادات في عملية نشر مشتركة مُتحكّم بها أو وزّعها بشكل آمن لضمان تطابق التحديثات.

يجب أن تكون طبقة بيانات ملفات المستخدم مشتركة بين جميع عُقد التطبيق. استخدم نظام ملفات مشتركًا مدعومًا أو تصميم تخزين كائنات أساسيًا مدعومًا يتوافق مع إصدار Nextcloud ومتطلبات التشغيل. تخزين بيانات المستخدم محليًا فقط على خادم ويب واحد يُعيق عملية تجاوز الأعطال: فلن يتمكن الطلب المُوجّه إلى خادم آخر من الوصول إلى الملفات نفسها. حافظ على فصل مسارات كود التطبيق عن مسارات البيانات القابلة للكتابة، وتحقق من صحة دلالات قفل الملفات والتخزين قبل بدء الإنتاج.

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

'dbtype' => 'mysql',
'dbname' => 'nextcloud',
'dbhost' => 'db-vip.internal:3306',
'dbuser' => 'nextcloud',
'dbpassword' => 'REPLACE_WITH_SECRET',
'datadirectory' => '/srv/nextcloud-data',
'memcache.local' => '\OC\Memcache\APCu',
'memcache.distributed' => '\OC\Memcache\Redis',
'memcache.locking' => '\OC\Memcache\Redis',
'redis' => [
  'host' => 'redis.internal',
  'port' => 6379,
  'password' => 'REPLACE_WITH_SECRET',
],

قم بتكييف نظام التخزين المؤقت واختيار دليل البيانات مع الخيارات المدعومة لإصدار Nextcloud الخاص بك. قم بتثبيت وتكوين ملحقات PHP المطلوبة عند الاقتضاء.

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

9. أضف خدمة تخزين مؤقت موزعة وخدمة قفل الملفات

استخدم APCu للتخزين المؤقت المحلي لكل مضيف عند الاقتضاء، وخدمة مشتركة متوافقة مع Redis مثل Redis أو Valkey للتخزين المؤقت الموزع وقفل الملفات للمعاملات. يجب أن تشير جميع عقد الويب إلى نفس خدمة التخزين المؤقت أو مجموعة التخزين المؤقت المدعومة، وليس إلى المضيف المحلي. توثق Nextcloud تكوين مجموعة Redis للإعدادات المجمعة، وتشير إلى أن قفل الملفات للمعاملات يعتمد على قاعدة البيانات افتراضيًا. قم بتأمين التخزين المؤقت باستخدام قيود الشبكة والمصادقة وTLS عند الاقتضاء؛ ويتطلب توفر التخزين المؤقت وسلوك تجاوز الفشل تصميمًا خاصًا.

خادمان ويب مرتبطان بخدمة تخزين مؤقت مشتركة تشبه Redis، موضحة كمخطط خدمة مجرد.
يتطلب نشر Nextcloud المجمع أن تستخدم عقد الويب نفس خدمة التخزين المؤقت الموزع وخدمة قفل الملفات.

10. ضع نقطة نهاية مُدركة لقاعدة البيانات أمام Galera

وجّه Nextcloud إلى نقطة نهاية مستقرة واحدة يوفرها وكيل قاعدة البيانات أو طبقة توجيه أخرى مدعومة. يجب أن يتوقف الوكيل عن إرسال اتصالات جديدة إلى العُقد غير الموجودة في المكون الأساسي، أو غير المتزامنة، أو غير الجاهزة. يُثبت فحص منفذ TCP الأساسي فقط أن المقبس يقبل الاتصالات، ولا يُثبت أن Galera قادرة على خدمة التطبيق بأمان. راجع سلوك فحص السلامة وأنماط الفشل للوكيل المُختار. إذا كنت تستخدم مُوازن تحميل TCP بسيطًا، فقم بإقرانه بفحص جاهزية موثوق لـ Galera وقواعد توجيه مُحكمة.

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

نقطة نهاية واحدة لخدمة قاعدة البيانات تقوم بتوزيع الاتصالات على ثلاث عقد قاعدة بيانات Galera.
تخفي نقطة نهاية قاعدة البيانات المستقرة عناوين العقد عن Nextcloud؛ ويجب أن يأخذ منطق سلامة الوكيل في الاعتبار جاهزية Galera.

11. أضف موازنة تحميل الويب الاحتياطية وإعدادات الوكيل الموثوق به

ضع عقدتي ويب على الأقل خلف موازن الأحمال، واستخدم آلية توفر منفصلة لموازن الأحمال نفسه، مثل خدمة مُدارة، أو زوج احتياطي، أو تصميم عنوان IP افتراضي مُختَبَر. اضبط إنهاء TLS، وحجم الطلب، وسلوك مهلة الانتظار، ومتطلبات الجلسة الثابتة وفقًا لبيئة النشر الخاصة بك. راجع وثائق Nextcloud الخاصة بالوكيل العكسي، وعيّن trusted_proxiesعناوين الوكيل الفعلية؛ لأن الاعتماد على نطاقات عملاء عشوائية يُضعف معالجة عناوين IP الخاصة بالعملاء.

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

12. قم بالتنفيذ بحذر، ثم اختبر الفشل والتعافي.

اختبر الترقيات على نسخة تجريبية بنفس البنية أولاً. ضع Nextcloud في وضع الصيانة عند الحاجة أثناء عملية الترقية، وطبّق نفس إصدار التطبيق على جميع العُقد، وأعد تشغيلها فقط بعد اجتياز فحوصات السلامة. للصيانة الدورية للخوادم، قم بتفريغ عقدة ويب واحدة في كل مرة وتأكد من كفاية السعة المتبقية. طبّق ترقيات قاعدة البيانات باستخدام عملية الترقية التدريجية المدعومة من MariaDB/Galera للإصدارات المحددة؛ لا تعتمد على ترتيب عشوائي من دليل عام.

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

قم بعمل نسخة احتياطية من قاعدة البيانات وطبقة بيانات ملفات المستخدم باستخدام إجراء موثق ومتسق مع التطبيق. احتفظ ببيانات التكوين ومواد التشفير والأسرار متاحة لمشغلي الاستعادة المعتمدين. لا تُعد نسخة Galera المتماثلة نسخة احتياطية: فقد يؤدي الحذف العرضي والتلف المنطقي إلى نسخ البيانات إلى جميع الأعضاء. خزّن النسخ الاحتياطية خارج نطاق فشل المجموعة، وقم بإجراء تدريبات استعادة منتظمة. توثق Galera اعتبارات نقل الحالة والنسخ الاحتياطي في دليل النسخ الاحتياطي للمجموعة ؛ تأكد من أن أي إجراء تعتمده يدعم إصدار MariaDB الخاص بك.

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

اختر تصميمًا بناءً على حجم العمل وقدرة الفريق

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

بالنسبة لخدمة استضافة ذاتية صغيرة، اجعل عقد التطبيق قابلة للتبديل أولاً، وانقل ملفات المستخدمين إلى وحدة تخزين مشتركة دائمة، وقم بتكوين قفل Redis المشترك، واختبر النسخ الاحتياطية. أضف Galera فقط بعد أن تُظهر القياسات أن تعطل عقدة واحدة في قاعدة البيانات أو فترة الصيانة يشكل خطرًا غير مقبول، وأن المؤسسة قادرة على صيانة الطبقة الإضافية. لا يكمن اختبار النجاح الحقيقي في تشغيل جميع خوادم قواعد البيانات الثلاثة، بل في أن يظل عنوان URL الخاص بـ Nextcloud قابلاً للاستخدام أثناء فقدان عقدة مُخطط له، وأن تعمل عمليات التحميل والتنزيل عبر عقد الويب، وأن تحتفظ قاعدة البيانات بالنصاب القانوني، وأن يتمكن الفريق من استعادة بيانات قاعدة البيانات والملفات من النسخ الاحتياطية.

قائمة التحقق السريع للتحقق من الصحة

  • إصدارات Nextcloud و MariaDB و PHP و Galera متوافقة ومدعومة.
  • تقوم جميع عقد قاعدة البيانات بالإبلاغ عن العضوية الأساسية، وحجم المجموعة المتوقع، والجاهزية، والحالة المحلية المتزامنة.
  • تستخدم خوادم التطبيقات نفس نقطة نهاية قاعدة البيانات، والتكوين، وذاكرة التخزين المؤقت، ونظام ملفات البيانات.
  • تُعد منافذ قاعدة البيانات والنسخ المتماثل والتخزين المؤقت والتخزين خاصة ومقتصرة على النظراء المطلوبين.
  • تقوم خوادم البروكسي الخاصة بالويب وقواعد البيانات بإزالة الخوادم الخلفية غير الصحية من الخدمة.
  • تم اختبار فشل عقدة الويب وعقدة قاعدة البيانات المخطط له في نافذة زمنية محددة.
  • تم استعادة النسخ الاحتياطية لقاعدة البيانات وملفات البيانات بنجاح في بروفة.

المراجع الرسمية

اترك تعليقاً

كيفية إعداد المصادقة الثنائية في ownCloud Infinite Scale

كيفية إعداد المصادقة الثنائية في ownCloud Infinite Scale

تعرف على كيفية طلب رمز التحقق من المفتاح (TOTP) من Keycloak لتسجيل الدخول إلى ownCloud Infinite Scale، وتسجيل المستخدمين الحاليين والجدد، وإعداد عملية الاسترداد، واختبار تسجيل الدخول الموحد (SSO) وترقية المصادقة متعددة العوامل (MFA).

كيفية تهيئة Keycloak كموفر هوية (IDP) لخدمة ownCloud Infinite Scale

كيفية تهيئة Keycloak كموفر هوية (IDP) لخدمة ownCloud Infinite Scale

قم بربط ownCloud Infinite Scale بـ Keycloak باستخدام OpenID Connect. قم بتهيئة مُصدر النطاق، وعميل الويب، والمطالبات، وTLS، وتوفير الحساب، وفحوصات تسجيل الدخول.

كيفية إعداد مجموعة Nextcloud عالية التوفر باستخدام قاعدة بيانات Galera

كيفية إعداد مجموعة Nextcloud عالية التوفر باستخدام قاعدة بيانات Galera

قم ببناء مجموعة Nextcloud مرنة باستخدام MariaDB Galera، والتخزين المشترك، وRedis، وموازنة الأحمال، وفحوصات النصاب، والاسترداد المختبر - بالإضافة إلى المقايضات التي يجب التخطيط لها.

كيفية إعداد النسخ الاحتياطي للمفاتيح والتوقيع المتبادل في Element: الخيارات والمفاضلات والاسترداد

كيفية إعداد النسخ الاحتياطي للمفاتيح والتوقيع المتبادل في Element: الخيارات والمفاضلات والاسترداد

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

كيفية نقل صناديق بريد Zimbra إلى خادم جديد باستخدام Zextras Backup أو imapsync

كيفية نقل صناديق بريد Zimbra إلى خادم جديد باستخدام Zextras Backup أو imapsync

قارن بين Zextras Backup و imapsync لنقل خادم Zimbra. جهّز الحسابات، واختبر عملية النقل، وقم بمزامنة التغييرات، وانقل سجلات MX، وتحقق من بيانات البريد والتعاون.

إصلاح خطأ قاعدة البيانات في واجهة المستخدم الرسومية لـ Nextcloud بعد التحديث: دليل عملي للاستعادة

إصلاح خطأ قاعدة البيانات في واجهة المستخدم الرسومية لـ Nextcloud بعد التحديث: دليل عملي للاستعادة

قم بإصلاح خطأ قاعدة بيانات Nextcloud WebGUI بعد التحديث عن طريق التحقق من السجلات، وإكمال ترقية occ، وإصلاح مشكلات المخطط، والتحقق من سلامة قاعدة البيانات.

كيفية تفعيل إعادة توجيه HTTPS في خادم بروكسي زيمبرا

كيفية تفعيل إعادة توجيه HTTPS في خادم بروكسي زيمبرا

قم بتكوين Zimbra Proxy لإعادة توجيه حركة مرور البريد الإلكتروني من HTTP إلى HTTPS، وأعد تشغيل كل عقدة وكيل، وتحقق من إعادة التوجيه، وتجنب المخاطر الأمنية الشائعة.

كيفية دمج BigBlueButton مع نظام إدارة التعلم Moodle (خطوة بخطوة)

كيفية دمج BigBlueButton مع نظام إدارة التعلم Moodle (خطوة بخطوة)

قم بربط BigBlueButton بنظام إدارة التعلم Moodle باستخدام النشاط المدمج، وعنوان URL للخادم، والكلمة السرية المشتركة. اتبع ثماني خطوات لإعداد غرفة الدورة التدريبية واختبار وصول الطلاب.

كيفية تخصيص ألوان العلامة التجارية والسمات في واجهة مستخدم الويب الخاصة بـ ownCloud

كيفية تخصيص ألوان العلامة التجارية والسمات في واجهة مستخدم الويب الخاصة بـ ownCloud

قم بتخصيص العلامة التجارية لموقع ownCloud الإلكتروني باستخدام شعارك، وأيقونة الموقع، وخلفية تسجيل الدخول، واسم علامتك التجارية، وألوان السمة باستخدام إعدادات JSON للسمة المدعومة من Infinite Scale.

كيفية تكوين سجلات DKIM وSPF وDMARC لخادم Zimbra

كيفية تكوين سجلات DKIM وSPF وDMARC لخادم Zimbra

قم بتكوين توقيع Zimbra DKIM، وتفويض SPF، وسياسة DMARC بشكل صحيح، وتحقق من DNS والمحاذاة، وتجنب السجلات الشائعة التي تكسر مصادقة البريد.