الرجوع إلى قائمة المقالات

الترحيل الحيّ: انقل جهازاً يعمل بين سيرفرين — الانقطاع ٤٢٣ ملّي ثانية

الترحيل الحيّ في Proxmox — Live Migration بأرقام حقيقية | مرام هوست - الترحيل الحيّ: انقل جهازاً يعمل بين سيرفرين — الانقطاع ٤٢٣ ملّي ثانية

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

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

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

أول ملاحظة: الزرّ غير موجود أصلاً

شريط أدوات جهاز في بروكسموكس على عقدة منفردة بلا زرّ ترحيل
شريط أدوات الجهاز على عقدة منفردة: تشغيل وإطفاء وكونسول — ولا أثر لزرّ Migrate

بروكسموكس لا يُطفئ زرّ الترحيل على نظام منفرد — بل يُخفيه تماماً. إن كنت تبحث عنه ولا تجده فلست أمام عطل: أنت لست في كلاستر. وهذه أول إجابة عن سؤال يتكرّر كثيراً.

الحوار

حوار ترحيل جهاز في بروكسموكس يعرض العقدة الهدف ووضع الترحيل
حوار الترحيل: العقدة الهدف، ووضع الترحيل الذي يُحدَّد تلقائياً بحسب حالة الجهاز
قائمة العقد الهدف في حوار الترحيل في بروكسموكس
قائمة العقد المتاحة — والعقدة الحالية مستثناة تلقائياً
الخانةماذا تعنيملاحظة
Target nodeوجهة الترحيلتظهر الذاكرة الحرّة لكل عقدة — اقرأها قبل الاختيار
ModeOnline أو Offlineيُختار تلقائياً: الجهاز يعمل ⇒ Online
Target storageأين تهبط الأقراصيظهر فقط حين تكون الأقراص محليّة

⭐ الترحيل الحيّ يحدث فعلاً — هذا سجلّه

نافذة مهمّة الترحيل في بروكسموكس أثناء نسخ القرص
المرحلة الأولى: مرآة القرص (drive mirror) — القرص يُنسَخ والجهاز ما زال يعمل ويكتب عليه
سجلّ ترحيل حيّ في بروكسموكس يعرض سرعة النقل وزمن الانقطاع
السجلّ الكامل — والسطران الأهمّ فيه: سرعة الترحيل وزمن الانقطاع الفعليّ

هذه أرقام هذا الترحيل بالضبط، من السجلّ لا من التقدير:

القياسالقيمةالمعنى
حجم القرص المنقول1.0 GiBنُسخ كاملاً لأن التخزين محلّي لا مشترك
زمن نسخ القرصثانية واحدةثم بقي في وضع «مزامنة نشطة» حتى اللحظة الأخيرة
حجم حالة الذاكرة المنقولة3.7 MiBما تبقّى من صفحات لم تلحق المزامنة
متوسط سرعة الترحيل264.4 MiB/sعلى شبكة المختبر
الانقطاع الفعليّ423 msأقلّ من نصف ثانية — أقصر من مهلة أي بروتوكول عملي
الزمن الكلّي للعملية00:00:37من الضغط حتى TASK OK

كيف يكون الانقطاع ٤٢٣ ملّي ثانية فقط؟ الترحيل ينسخ الذاكرة والجهاز يعمل، ثم ينسخ الصفحات التي تغيّرت أثناء النسخ، ثم التي تغيّرت أثناء ذلك… حتى يصغر المتبقّي بما يكفي. عندها فقط يوقف الجهاز لأجزاء من الثانية، ينقل الباقي، ويشغّله على العقدة الأخرى. سقف الانقطاع المستهدف يظهر في السجلّ نفسه: migration downtime limit: 100 ms — وبروكسموكس يرفع السقف تدريجياً إن لم يستطع اللحاق.

سجلّ ترحيل مكتمل في بروكسموكس بحالة TASK OK
النهاية: migration finished successfully ثم TASK OK
شجرة موارد بروكسموكس تعرض الجهاز تحت العقدة الثانية بعد الترحيل
الجهاز انتقل في الشجرة إلى العقدة الثانية — وهو يعمل منذ ما قبل الترحيل ولم يُعَد تشغيله

الحاويات قصّة أخرى تماماً

حوار ترحيل حاوية في بروكسموكس مع خيار إعادة التشغيل
حوار ترحيل الحاوية: لا وجود لوضع «حيّ» — بل Restart Mode
سجلّ ترحيل حاوية في بروكسموكس يعرض نسخ القرص
سجلّ ترحيل الحاوية: إطفاء ← نسخ القرص ← تشغيل على العقدة الأخرى

ورقمياً، هذا ما حدث في مختبرنا للحاوية نفسها:

جهاز (KVM)حاوية (LXC)
الوضعترحيل حيّإطفاء ← نسخ ← تشغيل
حجم القرص1 GiB2 GiB
زمن العملية37 ثانية3 دقائق و45 ثانية
الانقطاع0.42 ثانية≈3 دقائق (كامل مدّة النسخ)
سرعة النسخ المسجّلة264 MiB/s12–17 MB/s
اكتمال ترحيل حاوية في بروكسموكس مع زمن العملية
اكتمال ترحيل الحاوية بعد ثلاث دقائق وخمس وأربعين ثانية — كلّها انقطاع

⚠️ الحاويات لا تُرحَّل حيّاً في بروكسموكس. الانقطاع يساوي زمن نسخ القرص كاملاً — وهو يتناسب مع حجم القرص لا مع حجم الذاكرة. حاوية بقرص 100 GB على تخزين محلّي تعني انقطاعاً بالساعات.

العلاج الحقيقي هو التخزين المشترك (Ceph أو NFS أو ZFS مع نسخ متزامن): عندها لا يُنسَخ شيء، والانقطاع يصير ثوانيَ معدودة هي زمن الإطفاء والتشغيل فقط. الفرق ليس تحسيناً بل تغيير فئة.

الترحيل الجماعي

حوار الترحيل الجماعي في بروكسموكس مع قائمة الضيوف
Bulk Migrate: أفرغ عقدة كاملة قبل صيانتها بحوار واحد

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

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

⭐ ما الذي يمنع الترحيل الحيّ؟

المانعالرسالة أو العرَضالحلّ
معالجات من عائلتين مختلفتينالجهاز ينهار أو يرفض بعد الترحيلترحيل بلا اتصال فقط — أو وحّد نوع المعالج المعلن
تمرير جهاز PCI أو USBالترحيل مرفوضأزل التمرير مؤقّتاً، أو استعمل خرائط الموارد
وسائط ISO محليّة مركّبةالقرص غير موجود على الهدففكّ الوسائط قبل الترحيل
جسر شبكة غير موجود على الهدفالجهاز يرحل ثم يفقد الشبكةوحّد أسماء الجسور على كل العقد
مخزّن غير معرّف على الهدففشل مبكّرعرّف نفس المخزّن، أو اختر مخزّناً هدفاً
الجهاز مقفول من محاولة فاشلةVM is locked (migrate)qm unlock <vmid> بعد التأكّد من توقّف العملية

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

وهذا قرار يُتّخذ عند الشراء لا عند الترحيل: خطّط لعائلة معالج واحدة داخل الكلاستر الواحد.

الترحيل المشفّر مقابل السريع

النمطمتىالكلفة
secure (افتراضي)الترحيل يمرّ على شبكة غير موثوقةتشفير يستهلك معالجاً ويخفض السرعة
insecureشبكة خاصة معزولة تماماً بين العقدأسرع بوضوح على الروابط العريضة

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

أخطاء شائعة

الخطألماذا يؤذي
ترحيل كل شيء دفعة واحدةيغرق الشبكة ويبطئ الجميع — استعمل الترحيل الجماعي المتتابع
عدم اختبار الترحيل قبل الحاجة إليهليلة الصيانة ليست وقت اكتشاف أن جسراً ناقص
نسيان أن القرص يُنسَخترحيل جهاز بقرص 500 GB على تخزين محلّي يأخذ ساعات
الترحيل والعقدة الهدف ممتلئةيفشل في منتصفه — اقرأ الذاكرة الحرّة في القائمة
إعادة المحاولة فوراً بعد فشلالجهاز يبقى مقفولاً؛ افحص ثم unlock

أسئلة شائعة

هل يفقد الجهاز اتصاله أثناء الترحيل؟

عملياً لا. انقطاع أقلّ من نصف ثانية لا تلاحظه جلسة SSH ولا اتصال قاعدة بيانات ولا مكالمة VoIP.

هل يمكن الترحيل والجهاز مُوقف؟

نعم، ويكون أسرع لأنه ينقل الملفّات فقط بلا ذاكرة.

ماذا لو انقطعت الشبكة أثناء الترحيل؟

الترحيل يفشل والجهاز يبقى يعمل على العقدة المصدر. بروكسموكس لا يحذف المصدر إلا بعد نجاح مؤكّد — لذلك الترحيل الفاشل مزعج لا مدمّر.

هل يعمل الترحيل بين إصدارَي بروكسموكس مختلفين؟

من الأقدم إلى الأحدث غالباً نعم، والعكس لا. لذلك تُرقَّى العقد إلى نفس الإصدار قبل الاعتماد على الترحيل.

ما أسرع طريقة لإفراغ عقدة قبل الصيانة؟

Bulk Migrate مع اختيار كل الضيوف. وإن كانت الموارد HA مُدارة فبروكسموكس يعرف تلقائياً أين يضعها.

ماذا بعد؟

ذكرنا أن تمرير جهاز PCI يمنع الترحيل الحيّ. وهذا يقودنا مباشرة إلى المقالة التالية: تمرير كروت الشاشة وأجهزة USB إلى الأجهزة الافتراضية — متى يستحقّ، وما ثمنه.

Powered by WHMCompleteSolution