سلسلة RHCSA: أساسيات الافتراضيات وإدارة الضيف باستخدام KVM – الجزء 15

مضيفًا. المضيف.

RHCSA Series: Essentials of Virtualization and Guest Administration with KVM – Part 15

من خلال استخدام مراقب الجهاز الظاهري (المعروف أيضًا بـ المراقب)، يتم توفير موارد افتراضية للآلات الظاهرية (المشار إليها بـ الضيوف) من الأجهزة الأساسية.

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

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

يرجى ملاحظة أن المقال الحالي مقصود به أن يكون نقطة انطلاق لتعلم أساسيات التخيل في RHEL 7 باستخدام KVM (Kernel-based Virtual Machine) مع الأدوات سطر الأوامر، وليس مناقشة عميقة للموضوع.

التحقق من متطلبات الأجهزة وتثبيت الحزم

لإعداد الافتراضي، يجب أن يدعم معالج الـ CPU الخاص بك ذلك. يمكنك التحقق مما إذا كانت نظامك يفي بالمتطلبات باستخدام الأمر التالي:

# grep -E 'svm|vmx' /proc/cpuinfo

في لقطة الشاشة التالية يمكننا رؤية أن النظام الحالي (بمعالج AMD) يدعم الافتراضي، كما هو موضح بـ svm. إذا كان لدينا معالج من Intel، سنرى vmx بدلاً من ذلك في نتائج الأمر أعلاه.

Check KVM Support

بالإضافة إلى ذلك، ستحتاج أيضًا إلى تمكين قدرات الافتراضي في البرنامج الثابت للمضيف (BIOS أو UEFI).

الآن قم بتثبيت الحزم اللازمة:

  1. qemu-kvm هو برنامج افتراضي مفتوح المصدر يوفر محاكاة الأجهزة لمشغل KVM بينما يوفر qemu-img أداة سطر أوامر لتلاعب بصور الأقراص.
  2. libvirt يتضمن الأدوات للتفاعل مع قدرات الافتراضي لنظام التشغيل.
  3. libvirt-python يحتوي على وحدة تسمح لتطبيقات مكتوبة بلغة Python باستخدام الواجهة التي يوفرها libvirt.
  4. libguestfs-tools: أدوات سطر الأوامر المتنوعة لمسؤولي النظام لآلات الافتراضي.
  5. virt-install: أدوات سطر الأوامر الأخرى لإدارة الآلة الافتراضية.
# yum update && yum install qemu-kvm qemu-img libvirt libvirt-python libguestfs-tools virt-install

بمجرد اكتمال التثبيت، تأكد من بدء وتمكين خدمة libvirtd:

# systemctl start libvirtd.service
# systemctl enable libvirtd.service

بشكل افتراضي، ستكون كل آلة افتراضية قادرة فقط على التواصل مع بقية الآلات في نفس الخادم الفعلي ومع المضيف نفسه. للسماح للضيوف بالوصول إلى الآلات الأخرى داخل شبكة الشبكة المحلية الخاصة بنا وأيضًا الإنترنت، نحتاج إلى إعداد واجهة جسر في المضيف الخاص بنا (قل br0، على سبيل المثال) عن طريق:

1. إضافة السطر التالي إلى تكوين بطاقة الشبكة الرئيسية لدينا (على الأرجح /etc/sysconfig/network-scripts/ifcfg-enp0s3):

BRIDGE=br0

2. إنشاء ملف التكوين لـ br0 (/etc/sysconfig/network-scripts/ifcfg-br0) بهذه المحتويات (لاحظ أنه قد تحتاج إلى تغيير عنوان الآي بي، عنوان البوابة، ومعلومات DNS):

DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.0.18
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
NM_CONTROLLED=no
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=br0
ONBOOT=yes
DNS1=8.8.8.8
DNS2=8.8.4.4

3. في النهاية، تمكين توجيه الحزم عن طريق جعل، في /etc/sysctl.conf،

net.ipv4.ip_forward = 1

وتحميل التغييرات إلى تكوين النواة الحالي:

# sysctl -p

يرجى ملاحظة أنه قد تحتاج أيضًا إلى إخبار firewalld بأن هذا النوع من حركة المرور يجب أن يُسمح به. تذكر أنه يمكنك الرجوع إلى المقالة حول هذا الموضوع في نفس هذه السلسلة (الجزء 11: التحكم في حركة المرور باستخدام FirewallD و Iptables) إذا كنت بحاجة إلى مساعدة للقيام بذلك.

Source:
https://www.tecmint.com/kvm-virtualization-basics-and-guest-administration/