ما هو KVM؟

What Is Kvm



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

فوائد المحاكاة الافتراضية

في الماضي ، كان التجانس هو أسلوب العمل في مراكز البيانات ، وبيوت التطوير ، وفي المنزل. من الناحية العملية ، ستقوم جميع الأجهزة بتشغيل نفس الإصدار من نظام تشغيل واحد ، سواء كان Linux أو Windows أو FreeBSD. لقد تغير الزمن.







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



تشمل مزايا الأجهزة الافتراضية على الأجهزة المادية ما يلي:



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

إدخال KVM

الجهاز الظاهري المستند إلى Kernel ، أو KVM باختصار ، هو حل مجاني ومفتوح المصدر لبرنامج Hypervisor. إنها تتنافس في صناعة ناضجة مع بدائل مفتوحة المصدر مثل زين و فيرتثلبوإكس ، وكذلك المنتجات المسجلة الملكية مثل برنامج VMware vSphere و سيتريكس زين سيرفر و مايكروسوفت هايبر- V .





قبل عام 2005 ، كانت حلول برنامج Hypervisor في ذلك الوقت ، مثل Xen و VirtualBox ، تعتمد جميعها على البرامج. لم يكن لدى بنية x86 ببساطة توفير لدعم المحاكاة الافتراضية. في عام 2005 ، أدى إدخال امتدادات مجموعة التعليمات Intel VT و AMD-V إلى تغيير مشهد المحاكاة الافتراضية بشكل دائم. أصدرت KVM نسختها الأولى في عام 2006 ، وكانت واحدة من أوائل برامج Hypervisor التي استفادت من توفير الأجهزة الجديدة لتحسين أداء المحاكاة الافتراضية.

يمكنك تثبيت KVM على أي كمبيوتر 32 بت أو 64 بت x86 ، 'الجهاز المضيف' بلغة Hypervisory ، والتي تدعم امتداد Intel VT أو AMD-V. اليوم ، تدعم برامج Hypervisor الحديثة المحاكاة الافتراضية الهجينة: بمساعدة الأجهزة عندما يكون ذلك ممكنًا وتجاوز الفشل للبرامج فقط للشرائح القديمة.



يتم تصنيف KVM على أنه برنامج Hypervisor من النوع 2 ، مما يعني أنه يعمل ضمن نظام تشغيل مضيف. كما يوحي اسمها ، فإن KVM تعتمد على kernel ، ولكي تكون أكثر دقة ، فهي Linux kernel. لذلك ، ليس من المستغرب أن KVM يدعم Linux فقط باعتباره نظام التشغيل المضيف. (تم نقل KVM لاحقًا إلى FreeBSD.) إذا كنت تريد برنامج Hypervisor من النوع 2 مفتوح المصدر متعدد الأنظمة الأساسية ، فإن VirtualBox يعد مرشحًا جيدًا. يمكن تشغيل VirtualBox أصليًا على أنظمة التشغيل Windows و Linux و Mac OS X و Solaris.

Xen ، على النقيض من ذلك ، هو برنامج Hypervisor من النوع 1 ، والمعروف أيضًا باسم برنامج hypervisor العاري ، والذي يعمل مباشرة كبرنامج ثابت على الجهاز المضيف. تتمثل ميزة النوع 1 على النوع 2 في الكفاءة المكتسبة بسبب تشغيل برنامج Hypervisor مباشرة على الأجهزة الأساسية. العيب هو أن برنامج Hypervisor من النوع 1 قد لا يدعم نطاقًا واسعًا من الأجهزة المضيفة مثل نظام التشغيل المضيف لبرنامج Hypervisor من النوع 2.

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

  • توزيعات Linux بما في ذلك Debian و Ubuntu و Centos و Fedora و RedHat Enterprise Linux
  • BSD مثل OpenBSD و FreeBSD و NetBSD
  • سولاريس
  • شبابيك

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


كيف يعمل KVM

يتكون KVM من مكونين تقنيين: النواة ومساحة المستخدم. يتكون مكون النواة من وحدتي kernel قابلين للتحميل: kvm.ko ، وإما kvm-intel.ko أو kvm-amd.ko. توفر الوحدة النمطية kvm.ko معالجة افتراضية مستقلة عن البنية الأساسية. تتوافق الوحدات النمطية kvm-intel.ko و kvm-amd.ko مع الوحدات النمطية الخاصة بمعالج Intel و AMD. تم دمج هذه الوحدات في Linux kernel اعتبارًا من إصدار kernel 2.6.20.

التكامل المحكم لـ KVM مع Linux kernel له مميزاته. KVM قادر على التفويض إلى Linux للقيام بأعمال النظام الشاقة ، بينما يركز على التعامل مع تعليمات المحاكاة الافتراضية الجديدة التي تعرضها الأجهزة. تستفيد KVM أيضًا من خلال الوراثة من أي تحسين مستمر للنظام من المنبع في مجتمع Linux الأكبر.

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


الملخص والاستنتاج

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