الحوسبة اﻹفتراضية Virtualization بإستخدام VirtualBox

السلام عليكم

في الماضي كُنت اسمع بالـ Virtualization في المخدمات كثيراً، وهي أن يتم إحضار مخدم بمواصفات كبيرة ثم يتم تثبيت نظام Virtualization فيه ليسمح بتقسيم هذا الجهاز إلى أجهزة افتراضية أصغر، مثلاً يتم تقسيمه إلى ٤ مخدمات، ويُمكن أن تحتوي على أنظمة تشغيل مختلفة، ويكون لها عنوان IP مختلف. وكٌنت ضد هذه الفكرة، لعدة أسباب وهي:

  • كُنت اجهل آلية عملها، و الإنسان عدو ما يجهل
  • النتيجة النهائية هي أجهزة افتراضية بمواصفات ضعيفة
  • إذا تلف الجهاز الحقيقي تكون قد تلفت عدد من اﻷجهزة بدل جهاز واحد وهو ما يُسمى في اﻹدارة بالـ single point of failure
  • احياناً يتم تثبيت أنظمة لينكس في بيئة إفتراضية مبنية على نظام وندوز، فيكون استقرار البرنامج الذي يعمل في نظام لينكس هو العامل المشترك اﻷصغر في استقرار النظامين

لكن في المقابل كُنت في امس الحاجة لعمل تجارب تحتاج لأكثر من جهاز، وقد تكلمت في تدوينة سابقة عن هذا الموضوع. وقبل عدة اسابيع فكرت في تجربة الحوسبة الإفتراضية، وقد بدأت بتجربة نظام VirtualBox التابع لشركة أوراكل، وقد تفاجأت بالنتائج، حيث كان البرنامج سهل الإستخدام، وقد وجدت هُناك ميزات عديدة، منها أنه يُمكن تثبيت نظام تشغيل في هذه البيئة وعمل إعدادات له وتثبيت برامج عليه ثم نقل هذه النُسخة في شكل ملف واحد إلى جهاز آخر يحتوي على نفس برنامج VirtualBox ليعمل عندها البرنامج بدون أي اختلاف. مثلاً قُمت بتثبيت نسخة Linux mint ثم قُمت بتثبيت أداة التطوير لازاراس فيها، وعندما ذهبت إلى المكتب قُمت بنسخ الملف الذي يُمثل هذه النُسخة (instance) إلى جهاز المكتب لأجد نُسخة مطابقة من النظام الذي قُمت بتثبيته في اللابتوب.

virtualbox

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

المشكلة الوحيدة لبرنامج VirutalBox هو أنه يدعم فقط معمارية ٣٢ بت للأجهزة اﻹفتراضية، لذلك لم استطع سوى تثبيت نُسخ ٣٢ بت من أنظمة التشغيل مع أن البرنامج نفسه يعمل في نظام تشغيل ٦٤ بت. لكن من ناحية عملية فأن الذاكرة تبقى دائماً محدودة، فإذا قُمت بتشغيل ثلاث أجهزة إفتراضية وكان كل واحد منها تمت تهيئته على استخدام ذاكرة قدرها واحد قيقا، فإن مجموعهم ٣ قيقا وهذا غير الذاكرة التي يستخدمها الجهاز المُضيف. لذلك فإن حدود الذاكرة القصوى لمعمارية ٣٢ بت (٤ قيقاً) فهي كافية من ناحية عملية، وكذلك فهي تدعم معمارة PAE والتي تصل إلى ٦٤ قيقا.

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

virtualbox-config

كانت الفائدة العملية إلى اﻵن والتي حصدها من تلك التجربة هي أن قُمت بتثبيت نُسخة لينكس ٣٢ بت في جهاز أوبونتو ٦٤ بت لأقوم بإنتاج نسخة ٣٢ بت من البرامج التي اكتبها بواسطة لازاراس، والفائدة الثانية هي تجربة برامج جافا في بيئات مختلفة، مثلاً مخدم لينكس لا يحتوي على واجهة رسومية. والفائدة الثالثة هي تجارب في الشبكات حيث أقرأ هذه اﻷيام كتاب عن هذا الموضوع ربما أتكلم عنه لاحقاً إن شاء الله.

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

virualbox-instances

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

24 thoughts on “الحوسبة اﻹفتراضية Virtualization بإستخدام VirtualBox

  1. انا جربت تشغيل اوبنتو في في VirutalBox ، لكن software center لم يعمل ، لكن برنامج synaptic يعمل، ربما لان النظام المضيف هو ويندوز.
    النظام يعمل بسرعة ممتازة، اجمل خاصية في VirutalBox هي المجلد المشترك بين النظام الضيف والمضيف.

  2. نعم نسيت أن أقول أن Ubuntu Desktop لم تعمل في الـ VirtualBox بسبب أنه لا يتعرف على كرت الشاشة أو أبعادها، لكن لينكس مينت وفيدورا اشتغلت بدون مشاكل
    السرعة تلاحظها عندنا تقوم بتثبيت نسخة لاتحتوي على واجهة رسومية مثل Ubuntu server ويمكن أن يعمل في ذاكرة أقل من ٥٠٠ ميقا

  3. وهذه رسالة ظهرت قبل الرسالة السابقة:
    VT-x/AMD-V hardware acceleration has been enabled, but is not operational. Your 64-bit guest will fail to detect a 64-bit CPU and will not be able to boot.

    Please ensure that you have enabled VT-x/AMD-V properly in the BIOS of your host computer.

  4. انا ايضا جربت ويندوز 64 و فيدورا 64 ولم تظهر لي هذه الرسالة. جرب ان تعطل هذه الخاصية VT-x/AMD-V من
    setting >>system>>accelleration

  5. عندما أقوم بتعطيلها يتم اختيارها تلقائياً، فهي ضرورية لمعمارية ٦٤ بت. لاحظ هذه الرسالة:
    Please ensure that you have enabled VT-x/AMD-V properly in the BIOS of your host computer.
    بحثت عنها في الـ BIOS ولم اجد هذه الخاصية

  6. انا جربت تعطيله في معمارية 32 لكن اليوم حاوت مع 64 واعطاني نفس الرسالة.
    يبدو ان الامر يعتمد على نوع المعالج
    http://askubuntu.com/questions/41550/how-do-i-run-a-64-bit-guest-in-virtualbox
    حسب ما في الموقع اعلاه اذا لم يعط الامر التالي مخرجات فلن تتمكن من تشغيل نظام 64
    egrep ‘(vmx|svm)’ /proc/cpuinfo

  7. أعطاني مخرجات:
    egrep ‘(vmx|svm)’ /proc/cpuinfo
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts nopl aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm dtherm tpr_shadow vnmi flexpriority
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts nopl aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm dtherm tpr_shadow vnmi flexpriority

    وقد جربته في جهاز جديد لكن نفس المشكلة

  8. السلام عليكم

    بالنسبة للمشاكل التي واجهتا:
    1- حتى تنصب نظام 64 بت داخل النظام الضيف يجب أن يكون النظام المضيف 64 بت و بالتالي المعالج يجب أن يكون 64 بت

    2- بالنسبة لمشكلة تعريف كرت الشاشة في أوبونتو ربما تحل بتثبيت البرنامج الخاص بفيرتشوال بوكس داخل النظام الضيف (إسمه غير حاضر في ذهني الآن) ستجده داخل النظام الوهمي تحت القائمة الخاصة بضم الإسطوانات

    3- بالنسبة لـ VT-x/AMD-V فهو خاص بالمعالجات التي تدعم الأنظمة الوهمية (المحاكاة) و هذه المعالجات بالطبع تكون أفضل لهذه الأمور

  9. عندي مشكلة ان البرنامج جربته وكل شئ تماما الا ان عندي كارت شاشة بيلت اووت ( كارت خارجي نفيديا 1 ج ) بس المشكلة ان البرنامج يقرأ فيجا الموضجودة على البوردة بس وهي 128 ميجا بس ومحتاج اجعله يقرا الكارت الآخر كيف ؟؟

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

  11. طيب إذا كان عندك برنامج آخر للأنظمة الوهمية يستطيع قراءة الكروت الخارجية لأني بحتاج اختبر بعض الاشياء التي تتطلب كارت شاشة عالي أرجو إفادتي به .. أنا جربت
    vmware work staion
    بس ايضا لم استطع ان اجعله يقرا كارت النيفديا هو فقط معتبر ومعترف بالفيجا تبع البوردة .. وشكرا انتظر ردك أو رد اي احد له معرفة بالموضوع .

  12. اﻷخ نادر
    أمس قُمت بتثبيت برنامج Virtual Box مرة أخرى، واليوم قُمت بتثبيت وندوز ٧ عليه، حيث كانت لدي اسطوانة اصلية لم استطع تثبيتها لأنه لا يوجد لدي جهاز به مساحة، وكُنت في حاجة لتثبيت وندوز ٧، وهذه أول مرة أنزل وندوز داخل لينكس. اﻵن اصبحت لدي نُسخة وندوز تعمل بسهولة دون أن اقوم بإعادة اﻹقلاع، فشكراً لك على الفكرة

  13. العفو يا الغالي
    . . وأتمنى لو عرفت اي فكرة او برنامج يحل مشكلة عدم قراءة الكارت الخارجي تعلمني لم تفد الصفحة السباقة 😦

أضف تعليقاً

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s