كيفية نقل بيانات الحاويات إلى مجموعة أقراص SSD من دون تغيير مسارات التحميل

إيفا وونغ هي كاتبة تقنية و ومهندسة هاوية في ZimaSpace. مهووسة بالتكنولوجيا مدى الحياة ولديها شغف بالمختبرات المنزلية والبرمجيات مفتوحة المصدر، تتخصص في تبسيط المفاهيم التقنية المعقدة إلى أدلة عملية وسهلة الفهم. تؤمن إيفا بأن الاستضافة الذاتية يجب أن تكون ممتعة وليست مخيفة. من خلال دروسها، تمكّن المجتمع من تبسيط إعدادات الأجهزة، بدءًا من بناء أول نظام تخزين شبكي NAS وحتى إتقان حاويات Docker.

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

تتعامل عملية الترحيل الآمنة مع خريطة نقاط التحميل الحالية باعتبارها عقدًا للواجهة. تتوقع الحاويات وقواعد البيانات وتطبيقات الوسائط مسارات مثل /config و/data أو /media بغض النظر عن القرص الذي يوفّرها. يجب أن يوقف سير العمل عمليات الكتابة، وأن يحمّل SSD بطريقة يمكن التنبؤ بها، وينسخ الملكية والبيانات الوصفية، ويحدّث مصدر المضيف فقط، ويتحقق من نقطة التحميل الجديدة قبل بدء التشغيل، ويحتفظ بالبيانات الأصلية حتى اجتياز اختبار استعادة كامل.

احصر كل مصدر حالي وكل وجهة داخل الحاويات

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

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

حدّد المسارات التي تحتوي على الحالة الأساسية، وذاكرة التخزين المؤقت القابلة لإعادة الإنشاء، والوسائط الكبيرة. لا تفترض أن مجلدًا باسم data يحتوي على كل حالة التطبيق الدائمة.

حمّل مجموعة SSD بطريقة يمكن التنبؤ بها قبل بدء Docker

أنشئ نظام ملفات SSD أو مجموعة التخزين، وحدّدها باستخدام UUID ثابت أو اسم مجموعة، وحمّلها في مسار المضيف النهائي. تحقّق من المساحة الحرة، وميزات نظام الملفات المتوقعة، وإمكانية الكتابة بعد إعادة التشغيل.

قد يفشل نقل بيانات Docker إلى وحدة تخزين خارجية عندما يكون القرص غير موجود أو يتم تحميله في مسار مختلف أثناء بدء التشغيل. وتوضح حالة حديثة تتعلق بـ SSD خارجي كيف يغيّر نقل تخزين Docker الاعتماد على مسار نقطة التحميل المستهدفة.

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

أوقف عمليات الكتابة وانسخ البيانات مع الحفاظ على البيانات الوصفية

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

يوصي نقاش حول حاويات Synology بنقل وحدة تخزين مُدارة بواسطة Docker إلى نقطة تحميل مرتبطة بالمضيف فقط بعد تحديد بيانات الوحدة والحفاظ على محتواها في مصدر نقطة التحميل المرتبطة الجديدة.

انسخ الملفات بشكل تكراري مع الحفاظ على الملكية، والأذونات، والطوابع الزمنية، والروابط، وقوائم التحكم بالوصول، والسمات الموسعة حيثما كان ذلك مدعومًا. أجرِ مقارنة تجريبية أو افحص عينات من المجموع الاختباري بعد النسخ وقبل تغيير Compose.

-15% OFF

غيّر مسار مصدر المضيف فقط

أبقِ وجهة الحاوية مطابقة تمامًا. على سبيل المثال، غيّر /oldpool/app:/config إلى /ssdpool/app:/config بدلًا من تعليم التطبيق مسارًا داخليًا جديدًا.

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

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

استعد الملكية والتسميات واتساق قاعدة البيانات

قارن قيم UID وGID الرقمية التي تتوقعها الصورة بالملكية الموجودة على SSD. واستعد أيضًا قوائم التحكم بالوصول، وتسميات SELinux، والسماحات الخاصة بـ AppArmor، وخيارات التحميل المطلوبة للقفل أو الملفات المعينة للذاكرة.

يشير دليل ترحيل تخزين Docker على macOS إلى أن نقل بيانات Docker يتطلب نسخ صورة التخزين الكاملة، ثم التأكد من أن وقت التشغيل يستخدم موقع التخزين الجديد. وعلى أنظمة NAS التي تعمل بنظام Linux، يتمثل الفحص المكافئ في التأكد من أن كل مصدر مُعدّ يحلّ إلى SSD المحمّل.

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

نفّذ التحويل مع مسار للتراجع واختبار كامل لسير العمل

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

تتناول مقالة ZimaSpace حول تحوّل نقطة تحميل Docker المرتبطة إلى للقراءة فقط خطوات التشخيص التالية إذا تم تحميل المسار المرحّل لكنه يرفض عمليات الكتابة.

احتفظ بالبيانات القديمة دون اتصال ودون تغيير حتى تنجح عمليات النسخ الاحتياطي وإعادة إنشاء حاوية ثانية من مسار SSD. أزل المصدر القديم فقط بعد أن يثبت تمرين التراجع قدرتك على استعادة ملف Compose، ونقاط التحميل، وقواعد البيانات، وحالة التطبيق.

الدعم والنصائح

المزيد للقراءة

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.