ما هي الآلة الافتراضية؟ (لماذا ومتى يتم استخدامه)

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

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

دعونا نلقي نظرة على ماهية الأجهزة الافتراضية ولماذا يتم استخدامها.

ما هي الآلة الافتراضية؟

الجهاز الظاهري هو مثيل لنظام التشغيل (OS) مثل Windows أو Mac OS أو Linux الذي يعمل ضمن نظام التشغيل الرئيسي لجهاز الكمبيوتر.

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

آلة افتراضية 1
الصورة 1: آلة افتراضية تعمل على كمبيوتر محمول.

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

آلة افتراضية 2
صورة 2: آلة مضيفة تقوم بتشغيل أجهزة افتراضية متعددة.

يمكن للمضيف أيضًا تشغيل العديد من أجهزة VM بأنظمة تشغيل مختلفة ، بما في ذلك Linux و Mac OS و Windows. تعتمد هذه الإمكانية على برنامج يسمى برنامج Hypervisor (انظر الصورة 1 أعلاه). يعمل برنامج Hypervisor على الجهاز المضيف ويسمح لك بإنشاء الأجهزة الافتراضية وتكوينها وتشغيلها وإدارتها.

يقوم برنامج Hypervisor بتخصيص مساحة القرص وجدولة وقت المعالجة وإدارة استخدام الذاكرة لكل جهاز افتراضي. هذا ما تطبيقات مثل Oracle فيرتثلبوإكس, في إم وير, المتوازيات، و Xen ، و Microsoft Hyper-V ، والعديد من الآخرين يفعلون ذلك: إنهم برامج Hypervisor.

يمكن تشغيل برنامج Hypervisor على كمبيوتر محمول أو كمبيوتر شخصي أو خادم. يجعل الأجهزة الافتراضية متاحة للكمبيوتر المحلي أو المستخدمين الموزعين عبر الشبكة.

تتطلب الأنواع المختلفة من الأجهزة والبيئات الافتراضية أنواعًا مختلفة من برامج Hypervisor. دعونا نلقي نظرة على بعضها.

أنواع الآلات الافتراضية

الأجهزة الافتراضية للنظام

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

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

معالجة الأجهزة الافتراضية

تختلف الأجهزة الظاهرية للعملية تمامًا عن أجهزة SVM – قد تجعلها تعمل على جهازك ولا تعرفها حتى. تُعرف أيضًا باسم الأجهزة الافتراضية للتطبيق أو بيئات وقت التشغيل المُدارة (MREs). تعمل هذه الأجهزة الافتراضية داخل نظام تشغيل مضيف وتدعم التطبيقات أو عمليات النظام.

لماذا استخدام PVM؟ يؤدون الخدمات دون الاعتماد على أنظمة تشغيل أو أجهزة معينة. لديهم نظام تشغيل صغير خاص بهم مع الموارد التي يحتاجون إليها فقط. يوجد تعليم مخاطر الألغام في بيئة منفصلة. لا يهم ما إذا كان يعمل على Windows أو Mac OS أو Linux أو أي جهاز مضيف آخر.

واحدة من أكثر الأجهزة الظاهرية للعملية شيوعًا هي تلك التي ربما تكون قد سمعت عنها وربما شاهدتها تعمل على جهاز الكمبيوتر الخاص بك. يتم استخدامه لتشغيل تطبيقات Java ويسمى اختصارًا Java Virtual Machine أو JVM.

أنواع برامج Hypervisors

تستخدم معظم الأجهزة الافتراضية التي نهتم بها برنامج Hypervisor لأنها تحاكي نظام كمبيوتر بأكمله. هناك نوعان مختلفان من برامج Hypervisor: Bare Metal Hypervisors و Hypervisors المستضافة. دعونا نلقي نظرة سريعة على كلاهما.

Hypervisor المعدني العاري

قد يُطلق على BMH أيضًا اسم برامج Hypervisors الأصلية ، ويتم تشغيلها مباشرة على أجهزة المضيف بدلاً من العمل داخل نظام التشغيل الخاص بالمضيف. في الواقع ، تحل محل نظام التشغيل الخاص بالمضيف ، وتقوم بجدولة استخدام الأجهزة وإدارتها بواسطة كل جهاز افتراضي ، وبالتالي تستغني عن ‘الرجل المتوسط’ (نظام التشغيل الخاص بالمضيف) في هذه العملية.

عادةً ما تُستخدم برامج Hypervisor الأصلية في الأجهزة الظاهرية للمؤسسات الكبيرة الحجم ، والتي تستخدمها الشركات لتزويد الموظفين بموارد الخادم. Microsoft Azure أو Amazon Web Services عبارة عن أجهزة افتراضية مستضافة على هذا النوع من البنية. ومن الأمثلة الأخرى KVM و Microsoft Hyper-V و VMware vSphere.

استضافت Hypervisor

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

يتضمن ذلك تطبيقات مثل Oracle VirtualBox و VMware Workstations و VMware Fusion و Parallels Desktop وغيرها الكثير. يمكنك العثور على مزيد من المعلومات التفصيلية حول برامج Hypervisor المستضافة في مقالتنا ، أفضل برنامج آلة افتراضية.

لماذا نستخدم الأجهزة الافتراضية؟

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

1. فعاله من حيث التكلفه

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

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

يمكن أن يكون استخدام VM على جهازك أيضًا توفيرًا كبيرًا للمال. إذا كنت بحاجة إلى العمل في أنظمة تشغيل متعددة أو تكوينات أجهزة مختلفة ، فيمكنك ذلك
استخدام أجهزة افتراضية متعددة على مضيف واحد – لا داعي للخروج وشراء جهاز كمبيوتر منفصل لكل مهمة.

2. قابلة للتطوير ومرنة

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

3. الإعداد السريع

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

4. التعافي من الكوارث

إذا كنت تحاول منع فقدان البيانات والاستعداد للتعافي من الكوارث ، يمكن أن تكون الأجهزة الافتراضية أداة رائعة. يسهل نسخها احتياطيًا ويمكن توزيعها في مواقع مختلفة إذا لزم الأمر. إذا كان طرف ثالث مثل Microsoft أو Amazon يستضيف الأجهزة الافتراضية ، فستكون خارج الموقع – مما يعني أن بياناتك آمنة إذا تعرض مكتبك للحرق.

5. سهلة التكاثر

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

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

6. مثالي للتطوير / الاختبار

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

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

تعمل VMs بشكل رائع لاختبار المنتج والمراجعات مثل تلك التي نقوم بها هنا في TechFewer.com. يمكنني تثبيت التطبيقات في جهاز افتراضي يعمل على جهازي واختبارها دون تشويش بيئتي الأساسية.

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

كلمات أخيرة

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