كيفية استعادة VMs سيتريكس Xen مجانا مع Xen-Phoenix (باش)
هل سبق لك أن كنت بحاجة لاستعادة أجهزة Citrix-Xen VM الخاصة بك بشكل كبير من أجل حل استرداد الحالات المستعصية (DR) ، أو لمجرد اختبار عمل النسخ الاحتياطية الخاصة بك؟ يشرح HTG كيفية استخدام Xen-Phoenix ، وهو برنامج نصي مجاني bash ، لاستعادة VM.
الصورة الائتمان: ريان مكوردي عبر Compfight cc
كما ذكرنا في "كيفية عمل نسخة احتياطية من Citrix Xen VMs مجاناً مع Xen-pocalypse" ، أحد الأشياء الجيدة في Citrix Xen هو أن العديد من ميزاته حر للشحن. مع ذلك ، إذا كنت تريد ميزة "الحماية الآلية لاستعادة البيانات الظاهرية" ، فيجب عليك البدء في دفع الرخصة "المتقدمة". مرة أخرى ، ليس أننا نحن في HTG نرفض قيمة حل النسخ الاحتياطي الحقيقي ، ولكن إذا كنت تستخدم ميزانية ضيقة ، فقد حصلت بالفعل على صور VM من برنامج hypervisor وهي في حاجة إلى طريقة لأتمتة " إجراءات استعادة الاستعادة ”/” DR ”، قد تجد أن Xen-Phoenix هو حل معقول تماما قبل الالتزام بالميزانية.
نظرة عامة
"حالة الاستخدام": لديك زوجين من أجهزة VM التي تتطلب استعادة. إن عملية الاستيراد في "Xen Center" باستخدام نقرات يمينية تعمل بشكل جيد ، ولكنك تريد أن تتم هذه العملية تلقائيًا وعلى جدول زمني. يستخدم هذا البرنامج النصي باش الأمر "XE" لأداء واجباته. XE هي واجهة سطر الأوامر Xen (CLI) ، وهي مكافئة تلقائية لإصدار "النقرات الصحيحة" في "مركز زين". سوف نتصل بالسيناريو من Cron الذي سيوفر جزء "الجدولة". في أبسط أشكاله ، يكون تدفق الاستعادة:
- حذف جميع * VMs الموجودة سابقا على الخادم
- استيراد VMs من الملفات الموجودة في موقع النسخ الاحتياطي.
- تحقق من أن جميع أجهزة VM قابلة للتشغيل عن طريق تنشيطها واحدة تلو الأخرى والبحث عن نبضات أدوات الضيف.
- إيقاف تشغيل VMs عند اكتشاف ضربات قلب ، أو تم الوصول إلى مهلة.
* الحذف يمكن تعطيل كل سلوك VM بشكل كامل ويدعم الاستثناءات (انظر أدناه).
فلنسرع :)
الحصول على البرنامج النصي
يمكن الحصول على طائر الفينيق بحرية من جيثب ، وذلك باستخدام طرق git العادية. مع ذلك ، إذا لم تكن على دراية بـ git بعد ، يمكنك الحصول على ملف zip بهذا الرابط. بما أن البرنامج النصي بحاجة إلى العمل على أحد خوادم Xen الخاصة بك ، فيجب عليك استخراجه حتى يتم الحفاظ على أذونات التنفيذ.
wget https://github.com/aviadra/Xen-phoenix/archive/master.zip
بفك سيد
أثناء عمل ما سبق ، ننصح باستخدام طريقة GIT حتى تتمكن من الاستفادة من التحديثات المستقبلية.
موقع الصادرات
نحن بحاجة إلى تكوين مكان أخذ صادرات VM من.
في حين أن بدسًا عشوائيًا في Citrix Xen ، فقد وجدت أن مستودعات التخزين (SRs) متاحة للاستخدام تحت "/ var / run / sr-mount /٪ UUID٪" حيث UUID هو المعرّف الفريد لـ SR ، والذي يمكن أن يكون الحصول عليها من واجهة المستخدم الرسومية.
هذا يعني أنه يمكننا استخدام المعالج "التالي - التالي - التالي" لإنشائه "التحميل" إلى موقع النسخ الاحتياطي المطلوب ، ومن ثم استخدام البرنامج النصي لهذا المسار (كما هو مفترض للعبث مع التثبيت من سطر الأوامر وهو خارج نطاق هذا الدليل).
لإنشاء "تثبيت" جديد ، انقر بزر الماوس الأيمن على اسم الخادم وحدد New SR.
في هذا المثال ، سنشير Xen إلى مشاركة Windows ، لذا اختر "مشاركة ملفات Windows (CIFS)":
أكمل التالي -> التالي -> إنهاء.
الحصول على UUID الخاص SR
للحصول على UUID الخاص بـ SR ، ما عليك سوى النقر فوق اسمه في مركز Xen والانتقال إلى علامة التبويب "عام".
من أجل نسخ UUID ، ببساطة انقر بزر الماوس الأيمن واختر "نسخ".
مع وجود هذه المعلومات في متناول اليد ، أنت على استعداد لتحرير ملف الإعدادات.
تكوين ملف الإعدادات
يأتي مشروع Xen-phoenix مع قالب ملف "الإعدادات". يجب تحرير هذا القالب ليعكس الإعداد الخاص بك وتمريره كوسيطة أولى للبرنامج النصي.
يحدد ملف الإعدادات ما يلي:
- موقع مصدر الصادرات - إذا كنت قد اتبعت الدليل إلى هذه النقطة ، فيجب عليك استبدال٪ UUID٪ مع SR حيث تم الحصول عليها من أعلاه.
- موقع SendEmail - إذا كنت قد اخترت تمكين البريد الإلكتروني ، فستحتاج إلى إدخال المكان الذي استخرجت منه بيرل القابل للتنفيذ هنا.
- التحقق - يتحكم هذا في إجراء التحقق من استعادة المشاركة. يتم تمكين هذا بشكل افتراضي ، لأن "استعادة مستوى الملف" الناجحة لا يعني بالضرورة وجود VM وظيفي.
- Server_prep - هذا يتحكم في ما قبل الاستعادة حذف من جميع VMs على خادم DR. يتم تمكين هذا بشكل افتراضي لأنه من المفترض أن خادم DR هو خادم مخصص لهذا الغرض. إذا كنت بحاجة إلى جهاز VM يعمل على هذا الخادم حتى لا يتم حذفه ، فقم بتكوينه ليتم استبعاده. إذا لم يكن هذا السلوك مناسبًا لموقفك ، فما عليك سوى تعطيله تمامًا.
- تفاصيل البريد الإلكتروني - مرة أخرى ، إذا قمت بتمكين البريد الإلكتروني ، فستحتاج إلى تحديد تفاصيل مثل: إلى ، From ، Servername / IP & etc '.
- التصحيح - يكون الإعداد الافتراضي هو إيقاف تشغيل التصحيح باستخدام القيمة "0" (صفر). لا يجب عليك تشغيل هذا الخيار ، ولكن إذا قمت بذلك ، يتم ملاحظة المزيد من المعلومات في جزء استكشاف الأخطاء وإصلاحها..
إعدام
يأخذ هذا البرنامج النصي ملف الإعدادات كوسيطة أولى وأي وسائط أخرى باسم "Chevrons" للبحث عنها (مفصولة بمسافات). Chevrons ، هي "سلاسل" ، والتي تدعم التعبيرات العادية التي تمثل على الأقل جزء من اسم الملف المطلوب لصادرات VM.
هذا ، في أبسط صوره ، يبدو أن احتجاء طائر الفينيق كالتالي:
./Xen-phoenix.sh settings.cfg DevTools
حيث في الحالة أعلاه ، نحن داخل الدليل الذي يحمل النص البرمجي وملف الإعدادات و "Chevron" الذي سيبحث عنه البرنامج النصي هو "DevTools". سيؤدي ذلك إلى ظهور جميع الملفات في دليل الصادرات مع السلسلة "DevTools" في اسمها ليتم استيرادها.
يمكن أن يبدو المثال الأكثر تعقيدًا كما يلي:
./Xen-phoenix.sh settings.cfg [Aa] [Dd] [Bb] [iI] [Dd] ev [Tt] ools
في المثال أعلاه ، سيتم استيراد الملفات التي تحتوي على كلمة "devtools" التي يتم تهجئها برأستي "D" و "T" أو غير رأسية ، بالإضافة إلى "AD" و "BI" مع أو بدون استخدام الأحرف الكبيرة..
جدولة
كما ذكرنا أعلاه ، سنستخدم Cron لجدولة التنفيذ. قبل أن نذهب إلى التكوين ، هو ينصح به بشده قمت بتكوين حزمة SSMTP المثبتة بالفعل على خادم Xen الخاص بك. في حين أن هذه خطوة اختيارية ، فإن القيام بذلك سيعطيك أداة تجميع "العكسي". قد ينبهك وجود "مجمّع الغسل العكسي" هذا إلى أشياء لا يستطيع البرنامج النصي القيام بها.
أدخل في وضع تحرير كرون بإصدار:
crontab -e
إذا كنت قد اتبعت الإرشادات المذكورة أعلاه وتريد إضافة نسخة احتياطية مجدولة ليوم الأحد في 01:31 (1:31 صباحًا) ، فأدخل أدناه:
31 01 * * sun /root/Xen-phoenix-master/Xen-phoenix.sh /root/Xen-phoenix-master/settings.cfg [Aa] [Dd] DB [Bb] [iI] [Dd] ev [Tt ] ools
ما سبق هو الصحيح بافتراض أن ملفك النصي والإعدادات هما تحت عنوان "/ root / Xen-phoenix-master /".
الحصول على SendEmail (اختياري)
لقد كتبنا عن برنامج SendEmail perl في الماضي ، لذا لا داعي للتكرار هنا. يكفي القول ، إنه يعمل بنفس الطريقة على لينكس كما هو الحال في Windows.
على الرغم من أن تمكين البريد الإلكتروني هو أمر اختياري ، إلا أنه يوصى به بشدة لأن البرنامج النصي سيكون قادرًا على:
- إخبارك عند بدئها والانتهاء من التشغيل.
- نبهك بأية أخطاء تمكنت من اكتشافها والتعامل معها.
تحميل البرنامج إلى خادم Xen واستخراج.
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
tar xvzhf sendEmail-v1.56.tar.gz
لاحظ الموقع الذي استخرجته منه. سوف تحتاج إلى ملف الإعدادات.
تعريف علامة "حذف استثناء" (اختياري)
يأخذ Xen-Phoenix صفحة من أسلافه (Xen-Pocalypse) ويمنحك القدرة على استبعاد VM بشكل دقيق من الحذف على مستوى النظام باستخدام أداة التحكم TAG. من أجل القيام بذلك ، تحتاج إلى تحديد "حقل مخصص" جديد.
للقيام بذلك ، افتح الخادم أو حتى خصائص VM. في جزء التنقل ، حدد "الحقول المخصصة".
إذا كانت هذه هي المرة الأولى التي تقوم فيها بتعريف "حقل مخصص" (كما هو موضح في المثال أعلاه) ، فلن يكون لديك حقل "Phoenix_keeper" لإدخال البيانات ، لذا تحتاج إلى إنشائه. للقيام بذلك ، انقر فوق "تحرير الحقول المخصصة" في مربع الحوار الذي ينبثق ، ثم انقر فوق "إضافة ..."
إنشاء حقل نوع "نص" باسم "Phoenix_keeper".
ملحوظة: كان اسم الحقل المخصص "مشفرًا" في النص البرمجي ، لذلك يجب أن لا تحيد عن التهجئة أعلاه ، ما لم تغير الكود ذي الصلة أيضًا.
بمجرد إنشاء الحقل ، يجب أن تشاهد:
أغلق النافذة. يجب عليك الآن ملء حقل "Phoenix_keeper" ، كما في الصورة أدناه.
الآن ، كل ما عليك القيام به هو ملء هذا الحقل بملاحظة (أي ملاحظة ستفعل) ، والتي سوف تتسبب في تخطي Xen-phoenix عند حذفه.
استكشاف الأخطاء وإصلاحها
في حين أني بذلت الكثير من الجهد لجعل النص سهل الاستخدام وبأقصى ما يمكن ، "العالم هو مختبر أكبر". قد تساعدك المعلومات الواردة أدناه في التأكد من مصدر مشكلاتك.
تسجيل
يتم جمع كل "التسجيل" بواسطة مضيف Xen الذي يقوم بتشغيل البرنامج النصي في آلية سجل النظام. هذا ، بالطبع ، يمكن مشاهدته بـ:
أقل + F / var / log / messages
كنت تبحث عن الكلمة الرئيسية "Xen-Phoenix".
ملاحظة: قامت Citrix بتعيين سياسة احتفاظ لمدة يومين (2) لسجل مخدماتها. قد تحتاج إلى أن تضع ذلك في الاعتبار ل postmortems.
التصحيح
كما هو موضح في مقطع ملف الإعدادات ، يوجد توجيه لتمكين تصحيح الأخطاء. سيؤدي تمكين التصحيح إلى قيام البرنامج النصي بإخراج التسجيل المطوّل إلى وحدة التحكم وإخراجه من إرسال رسائل البريد الإلكتروني وتنفيذ عمليات الاستيراد فعليًا ، ما لم يتم أيضًا تعيين العلامات ذات الصلة. تتم الإشارة إلى العلامات المحتملة في قالب ملف الإعدادات ، وتمكنك من تحديد ما تريد تصحيحه بدقة.
آمل أنك لم تكن بحاجة إلى أي تصحيح وأنت تجني ثمار عملي :)
فقط فكر في كل الفقر والكراهية والأكاذيب ، وتخيل تدمير كل ما تحتقره. ببطء من الرماد ، سوف تنشأ طائر الفينيق ...