تثبيت KVM وإنشاء آلات افتراضية (Virtual Machines) باستخدامه على أوبونتو
يُعتبر KVM (Kernel-based Virtual Machine) من الحلول المفتوحة المصدر والمستخدمة بشكل واسع في مجال التقنيات الافتراضية، ويعتمد بشكل كامل على نواة لينوكس (Linux Kernel) لتوفير بيئة افتراضية عالية الأداء. إن استخدام KVM يوفر لك القدرة على إنشاء وإدارة العديد من الأجهزة الافتراضية التي تعمل في بيئة لينوكس، مما يسهل عمليات الاختبار، والتطوير، وإدارة الخوادم بشكل فعال. في هذا المقال، سنتناول بشكل موسع كيفية تثبيت KVM على توزيعة أوبونتو وإنشاء آلات افتراضية باستخدامه.
1. المتطلبات الأساسية لتثبيت KVM على أوبونتو
قبل البدء في عملية تثبيت KVM، يجب التأكد من أن جهازك يدعم المحاكاة الافتراضية. ويعني ذلك أن المعالج لديك يجب أن يدعم تقنيات مثل Intel VT-x أو AMD-V. يمكنك التحقق من دعم معالجك لهذه التقنيات عبر الأوامر التالية في الطرفية:
-
للمعالجات من Intel:
bashegrep -c '(vmx)' /proc/cpuinfo -
للمعالجات من AMD:
bashegrep -c '(svm)' /proc/cpuinfo
إذا كانت النتيجة أكبر من 0، فهذا يعني أن جهازك يدعم المحاكاة الافتراضية ويمكنك متابعة تثبيت KVM.
2. تثبيت KVM على أوبونتو
2.1. تحديث النظام
من المهم تحديث النظام قبل بدء عملية التثبيت لضمان أن جميع الحزم والمكتبات الضرورية محدثة. يمكنك القيام بذلك عبر الأوامر التالية:
bashsudo apt update sudo apt upgrade
2.2. تثبيت الحزم المطلوبة
لتثبيت KVM على أوبونتو، يتعين عليك تثبيت مجموعة من الحزم الأساسية. يمكن تثبيتها باستخدام APT، مدير الحزم الافتراضي في أوبونتو. الأوامر اللازمة هي:
bashsudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
-
qemu-kvm: هو المحاكي الأساسي لنظام KVM.
-
libvirt-daemon-system و libvirt-clients: تُستخدم لإدارة الأجهزة الافتراضية.
-
bridge-utils: يدير الشبكات الافتراضية بين الآلات.
-
virt-manager: هو الواجهة الرسومية لإدارة الآلات الافتراضية.
2.3. التحقق من نجاح التثبيت
بعد تثبيت الحزم، يجب التأكد من أن خدمة libvirt تعمل بشكل صحيح. تحقق من حالة الخدمة باستخدام:
bashsudo systemctl status libvirtd
إذا كانت الخدمة تعمل، فستتمكن من متابعة إنشاء الآلات الافتراضية.
3. إعداد الشبكة الافتراضية
في بعض الحالات، قد تحتاج إلى تكوين الشبكة الافتراضية لتمكين الآلات الافتراضية من الاتصال بشبكة الإنترنت أو الشبكات الأخرى. يمكنك إعداد شبكة جسرية باستخدام bridge-utils. يتم ذلك عبر الخطوات التالية:
-
قم بتحرير ملف إعدادات الشبكة:
bashsudo nano /etc/network/interfaces -
أضف التكوين التالي لإنشاء شبكة جسرية:
bashauto br0 iface br0 inet dhcp bridge_ports eth0 -
بعد حفظ الملف، قم بإعادة تشغيل خدمة الشبكة لتطبيق التغييرات:
bashsudo systemctl restart networking
الآن سيكون بإمكان الآلات الافتراضية الاتصال بالشبكة باستخدام الشبكة الجسرية.
4. إنشاء الآلات الافتراضية باستخدام virt-manager
4.1. فتح الواجهة الرسومية
أداة virt-manager هي الواجهة الرسومية المستخدمة لإدارة الآلات الافتراضية. لفتح الأداة، يمكنك استخدام الأمر:
bashvirt-manager
4.2. إنشاء آلة افتراضية جديدة
بمجرد فتح virt-manager، يمكنك إنشاء آلة افتراضية جديدة باتباع الخطوات التالية:
-
اضغط على File في الشريط العلوي واختر New Virtual Machine.
-
اختر نوع التثبيت: يمكنك تثبيت نظام التشغيل باستخدام ملف ISO أو من خلال الشبكة. في هذه الحالة، سنختار Local install media (ISO image or CDROM).
-
اختر ملف ISO الخاص بنظام التشغيل الذي تريد تثبيته.
-
اختر مقدار الذاكرة العشوائية (RAM) ومساحة القرص التي ترغب في تخصيصها للآلة الافتراضية.
-
اختر نوع المعالج وعدد النوى (cores) حسب متطلبات النظام الذي ستقوم بتثبيته.
-
قم بمراجعة الإعدادات واضغط على Finish لإنشاء الآلة الافتراضية.
4.3. تثبيت نظام التشغيل
بمجرد إنشاء الآلة الافتراضية، ستبدأ عملية التثبيت. يمكنك اتباع نفس الخطوات التي تستخدمها لتثبيت نظام التشغيل على جهاز فعلي، ولكن هنا يتم التثبيت داخل بيئة افتراضية.
5. استخدام الأوامر لإدارة KVM
إلى جانب virt-manager، هناك مجموعة من الأوامر التي يمكن استخدامها لإدارة الآلات الافتراضية عبر الطرفية. على سبيل المثال:
-
تشغيل آلة افتراضية:
bashvirsh start vm-name -
إيقاف آلة افتراضية:
bashvirsh shutdown vm-name -
إيقاف آلة افتراضية بشكل قسري:
bashvirsh destroy vm-name -
مراقبة حالة الآلات الافتراضية:
bashvirsh list --all -
الوصول إلى آلة افتراضية عبر VNC:
إذا تم تكوين VNC للآلة الافتراضية، يمكنك الوصول إليها باستخدام عميل VNC.
6. تحسين أداء KVM
لتحقيق أداء أفضل أثناء استخدام KVM، من المهم تفعيل بعض الإعدادات على مستوى النظام مثل تفعيل CPU Virtualization Extensions. يمكن ضبط هذا الأمر من خلال ملفات التكوين الخاصة بالآلة الافتراضية.
-
لتحسين الأداء، يمكنك تمكين Huge Pages:
bashsudo sysctl -w vm.nr_hugepages=128 -
إضافة بعض الإعدادات لزيادة الأداء مثل CPU Pinning لتحسين تخصيص المعالج:
bashvirsh vcpupin vm-name 0 0
7. إدارة الآلات الافتراضية عن طريق الإنترنت
إذا كنت ترغب في إدارة الآلات الافتراضية عن بُعد، يمكنك استخدام أدوات مثل Cockpit و WebVirtMgr لتوفير واجهة ويب للوصول إلى إدارة الآلات الافتراضية. يمكن تثبيت Cockpit عبر الأمر التالي:
bashsudo apt install cockpit
ثم الوصول إلى واجهة المستخدم عن طريق متصفح الويب عبر https://localhost:9090.
8. المشاكل والحلول الشائعة
8.1. “فشل في بدء تشغيل KVM”
قد يحدث أحيانًا أن تفشل خدمة KVM في البدء بسبب عدم توافر الدعم لمعالجات معينة. لحل هذه المشكلة، تأكد من أن المعالجات تدعم VT-x أو AMD-V كما ذكرنا سابقًا.
8.2. “أداة virt-manager لا تعمل”
إذا كانت virt-manager لا تعمل أو لا يمكن الوصول إليها، تأكد من أنك تستخدم حساب مستخدم له صلاحيات إدارة libvirt أو root. إذا كانت هناك مشاكل في الاتصال، حاول إعادة تثبيت الحزم أو فحص التكوينات الخاصة بـ libvirt.
الخاتمة
يُعد KVM على أوبونتو من الأدوات القوية لإنشاء وإدارة الآلات الافتراضية. من خلال تثبيت KVM، يمكنك الاستفادة من بيئة افتراضية مستقرة وآمنة تمكنك من تشغيل أنظمة تشغيل متعددة على نفس الجهاز. سواء كنت تقوم بتطوير التطبيقات أو إدارة الخوادم، يوفر KVM طريقة فعالة لإجراء الاختبارات وتوزيع المهام دون الحاجة إلى أجهزة فعلية إضافية.

