الفهرس العام للسلسلة: شبكات الحاسوب للشركات الصغيرة والمتوسطة: مقدمة
في مايو 2013 نشرنا في هذه المدونة ، مقالتين مكرسة لتركيب كيمو-كفم في دبيان 7 «صافر«. لا تزال صالحة. نظرًا لأن مشهد التثبيت والتهيئة في Debian 8 "Jessie" قد تغير قليلاً ، فنحن نريد تحديث الإجراء.
لن يكون الأمر إلا قبل الانغماس في قراءة هذا كيف يتم ذلك، سوف يزورون المقال السابق المحاكاة الافتراضية في دبيان: مقدمة - شبكات الكمبيوتر للشركات الصغيرة والمتوسطة، للحصول على خلفية صغيرة حول هذا الموضوع.
المواقع التي نقترح زيارتها
- الجهاز الظاهري القائم على Kernel
- هبرفيسر
- فهرس توثيق ريد هات
- دليل بدء المحاكاة الافتراضية
- دليل نشر وإدارة المحاكاة الافتراضية
- دليل ضبط المحاكاة الافتراضية والتحسين
- دليل أمان المحاكاة الافتراضية
- تحويل الأجهزة الافتراضية من برامج Hypervisor الأخرى إلى KVM باستخدام Virt-v2v
- مشروع Libvirt
- منظمة مدير الفضيلة
- منظمة Linux KVM
- منظمة Qemu
ملاحظة
- نقوم بنسخ إخراج الأوامر ، لأنها تعليمية أكثر بكثير من أي تركيبة أخرى نكتبها. نقترح عليك أن تقرأ بعناية رسائل الولايات المختلفة ، لأنها من أفضل الطرق للتعلم دون الحاجة إلى البحث على الإنترنت. على الأقل هذا هو رأينا.
تركيب
نبدأ من التثبيت الأساسي لـ Debian "Jessie" كما رأينا في تركيب محطات العمل - شبكات الحاسوب للشركات الصغيرة والمتوسطة. بعد ذلك ، نقوم بتثبيت سطح المكتب أو سطح المكتب الذي نفضله كما رأينا في 6 Debian Desktops - شبكات الحاسوب للشركات الصغيرة والمتوسطة.
لهذه المقالة اخترنا سطح القرفة. لقد اخترناها لأن العديد من القراء يحبون بيئة سطح المكتب هذه.
البيانات العامة لمحطة العمل لدينا هي:
اسم النطاق: desdelinux.معجب اسم الفريق: مسؤول النظام FQDN: مسؤول النظام.desdelinux.معجب عنوان IP: 192.168.10.3 الشبكة الفرعية: 192.168.10.0/24 مستخدم عادي: شرب حتى الثمالة اسم المستخدم الكامل: Debian First OS Buzz
نتحقق من دعم المحاكاة الافتراضية
في وحدة التحكم نقوم بتنفيذ:
buzz @ sysadmin: ~ $ egrep -c "(svm | vmx)" / proc / cpuinfo 2
في حالتنا ، يعيدنا الأمر أن لدينا وحدتي CPU مع الدعم المناسب.
الحزم التي سنقوم بتثبيتها
بادئ ذي بدء ، اكتشفنا أننا سنقوم بالتثبيت باستخدام الأوامر التالية:
buzz @ sysadmin: ~ $ aptitude search kvm p ikvm - آلة جافا الافتراضية لـ CLI الخامس كفم - p libicsharpcode-nrefactory-ikvm5 - مكتبة التحليل وإعادة البناء C # - IKVM p libikvm-native - مكتبة أصلية لـ IKVM.NET p nova-compute-kvm - OpenStack Compute - عقدة الحساب (KVM) p qemu-kvm - ظاهرية كاملة QEMU على أجهزة x86 buzz @ sysadmin: ~ aptitude $ show nova-compute-kvm الحزمة: nova-compute-kvm، جديدة: نعم، الحالة: غير مثبتة، الإصدار: 2014.1.3-11، الأولوية: إضافية، القسم: الشبكة، المطور: PKG OpenStack[البريد الإلكتروني محمي]> البنية: الكل، الحجم غير المضغوط: 50.2 كيلوبايت، يعتمد على: adduser، dpkg-dev، qemu-kvm | kvm، libvirt-daemon-system، nova-common، nova-compute، python-libvirt، يعتمد مسبقًا على: dpkg (الإصدار 1.15.6 أو أحدث)، يوصى باستخدام: guestmount، يتعارض مع: nova-baremetal، nova-compute-lxc، nova-compute-qemu، nova-compute-uml، nova-compute-xen، يوفر: nova-compute-hypervisor، الوصف: OpenStack Compute - عقدة الحوسبة (KVM). OpenStack هي بنية تحتية سحابية موثوقة. مهمتها هي إنتاج منصة حوسبة سحابية شاملة تلبي احتياجات موفري الخدمات السحابية العامة والخاصة بغض النظر عن حجمهم، وذلك من خلال سهولة التنفيذ وقابلية التوسع الهائلة. OpenStack Compute، المسمى رمزياً Nova، هو وحدة تحكم في بنية الحوسبة السحابية مصممة لتكون معيارية وسهلة التوسيع والتعديل. بالإضافة إلى واجهة برمجة تطبيقات OpenStack الأصلية، يدعم أيضاً واجهة برمجة تطبيقات Amazon EC2، ويدعم العديد من قواعد البيانات الخلفية المختلفة (بما في ذلك SQLite وMySQL وPostgreSQL)، وبرامج إدارة الأجهزة الافتراضية (KVM وXen)، وأنظمة دليل المستخدم (LDAP وSQL). هذه حزمة تبعية لعُقد الحوسبة التي تستخدم KVM. الصفحة الرئيسية: http://www.openstack.org/software/openstack-compute/
- لن نقوم بتثبيت الحزمة كومة مفتوحة، لأننا لا نحتاج إلى بنية أساسية افتراضية كاملة للسحابة - سحابة.
buzz @ sysadmin: ~ $ aptitude show qemu-kvm الحزمة: qemu-kvm، جديد: نعم، الحالة: غير مثبت، متعدد المعماريات: أجنبي، الإصدار: 1:2.1+dfsg-12+deb8u1، الأولوية: اختياري، القسم: متنوع، المطور: فريق دبيان كيو إي إم يو[البريد الإلكتروني محمي]> بنية النظام: amd64، الحجم غير المضغوط: 60.4 كيلوبايت، يعتمد على: qemu-system-x86 (الإصدار 1.7.0+dfsg-2~ أو أحدث)، يتعارض مع: kvm، يعطل: qemu-system-x86 (الإصدارات الأقدم من 1.7.0+dfsg-2~)، يستبدل: qemu-system-x86 (الإصدارات الأقدم من 1.7.0+dfsg-2~)، يوفر: kvm، الوصف: QEMU محاكاة افتراضية كاملة على معالجات x86. QEMU هو محاكي معالج سريع. توفر هذه الحزمة برنامجًا نصيًا وسيطًا /usr/bin/kvm لتشغيل qemu-system-x86 في وضع kvm للتوافق مع الإصدارات السابقة. يُرجى ملاحظة أن ملفات تكوين qemu-kvm القديمة (في /etc/kvm/) لم تعد مستخدمة.
الصفحة الرئيسية: http://www.qemu.org/
نقوم بتثبيت منصة المحاكاة الافتراضية Qemu-Kvm
buzz @ sysadmin: ~ $ sudo aptitude install qemu-kvm libvirt-bin bridge-utils
سيتم تثبيت الحزم الجديدة التالية:
العدسات augeas {a} bridge-utils dmeventd {a} ebtables {a} ethtool {a} hdparm {a} ipxe-qemu {a} libaio1 {a} libapparmor1 {a} libaugeas0 {a} libboost-thread1.55.0 {a } libdevmapper-event1.02.1 {a} libfdt1 {a} libiscsi2 {a} liblvm2cmd2.02 {a} libnetcf1 {a} libnuma1 {a} librados2 {a} librbd1 {a} libreadline5 {a} libseccomibspice {a} server {a} libvdeplug2 {a} libvirt-bin libvirt-clients {a} libvirt-daemon {a} libvirt-daemon-system {a} libvirt1 {a} libx2-0 {a} libxen-86 {a} libxenstore1 { a} libxml4.4-utils {a} lvm3.0 {a} netcat-openbsd {a} pm-utils {a} powermgmt-base {a} qemu-kvm qemu-system-common {a} qemu-system-x2 {a} qemu -utils {a} seabios {a} vbetool {a} تم تحديث حزم 2 ، تثبيت 86 حزمة جديدة ، 0 للإزالة و 42 غير محدث. أحتاج إلى تنزيل 0 كيلو بايت / 0 ميجا بايت من الملفات. بعد التفريغ ، سيتم استخدام 8,422 ميغابايت. هل تريد الاستمرار؟ [نعم / ن /؟] و
مهم
- نظرًا لأننا نقوم بالتثبيت على سطح المكتب ، سنحتاج إلى واجهة لإدارة KVM. إذا كنا نقوم بالتثبيت على خادم واحد أو أكثر ، فسيتم تثبيت كل من تثبيت سطح المكتب وتثبيت مدير آلة افتراضية, التي سنقوم بتثبيتها لاحقًا. Cعلى مثيل واحد لهذه الواجهة الرسومية، يمكننا إدارة جميع الخوادم التي قمنا بتثبيت الحزم فيها qemu-kvm ، libvirt-bin y أدوات الجسر.
- الشيطان الرئيسي - الخفي من الافتراضية هو libvirtd. لمعرفة حالته نقوم بتنفيذ:
buzz @ sysadmin: ~ $ sudo systemctl status libvirtd buzz @ sysadmin: ~ sudo service libvirtd status
- إذا قرأنا بعض الأسطر باللون الأحمر في إخراج أي من الأوامر السابقة ، فمن الجيد إعادة تشغيل الخدمة libvirtd وتحقق مرة أخرى ، أو أعد تشغيل الكمبيوتر وتحقق. هو سيناريوخدمة libvirtd من يقود سيستم دي، في /lib/systemd/system/libvirtd.service. لاحظ أنه يمكننا استدعاء هذا الشيطان بالطريقة القديمة أيضًا ، أي:
buzz @ sysadmin: ~ sudo service libvirtd
الاستخدام: /etc/init.d/libvirtd {بدء | إيقاف | إعادة تشغيل | إعادة تحميل | فرض إعادة التحميل | الحالة | فرض الإيقاف}
buzz @ sysadmin: ~ sudo service libvirtd أعد تشغيل buzz @ sysadmin: ~ sudo service libvirtd status
● libvirtd.service - البرنامج الخفي للمحاكاة الافتراضية
مُحمَّل: تم تحميله (/lib/systemd/system/libvirtd.service ؛ مُمكّن)
نشيط: نشط (قيد التشغيل) منذ الأحد 2016-11-27 11:23:53 EST ؛ 8min ago المستندات: man: libvirtd (8) http://libvirt.org الرئيسي PID: 1112 (libvirtd) CGroup: /system.slice/libvirtd.service └─1112 / usr / sbin / libvirtd
- El سيناريو وتقع في /etc/init.d/qemu-system-x86، مسؤول عن إدخال الوحدات اللازمة للتشغيل الصحيح لـ Qemu-Kvm. بعد أن تؤدي وظيفتها بنجاح ، يتم ذلك. إذا تحققنا من حالته ، فسيعود أنه 0 أو ناجح.
buzz @ sysadmin: ~ sudo systemctl status qemu-system-x86 ● qemu-system-x86.service - LSB: برنامج تحميل برنامج QEMU KVM تم تحميله: تم تحميله (/etc/init.d/qemu-system-x86) نشيط: نشط (خرج) منذ الأحد 2016-11-27 11:18:17 EST ؛ قبل 18 دقيقة العملية: 172 ExecStart = / etc / init.d / qemu-system-x86 start (الكود = تم الخروج ، الحالة = 0 / النجاح)
- إذا كان لدينا فضول ونريد معرفة الوحدات النمطية وموقعها ، فإننا ننفذ:
buzz @ sysadmin: ~ sudo updatedb buzz @ sysadmin: ~ $ حدد موقع kvm | grep ko /lib/modules/3.16.0-4-amd64/kernel/arch/x86/kvm/kvm-amd.ko /lib/modules/3.16.0-4-amd64/kernel/arch/x86/kvm/kvm-intel.ko /lib/modules/3.16.0-4-amd64/kernel/arch/x86/kvm/kvm.ko buzz @ sysadmin: ~ $ ls -l /lib/modules/3.16.0-4-amd64/kernel/arch/x86/kvm/ إجمالي 1016 -rw-r - r-- جذر واحد 1 يوليو 97120 17 kvm- amd.ko -rw-r - r - 1 جذر جذر 223680 17 يوليو 2015 kvm- intel.ko -rw-r - r - 1 جذر جذر 715920 17 يوليو 2015 kvm.ko
نقوم بتثبيت برنامج Virtual Machine Manager
buzz @ sysadmin: ~ $ sudo aptitude install Virt-manager
كلمة مرور [sudo] لـ buzz: سيتم تثبيت الحزم الجديدة التالية: gir1.2-gtk-vnc-2.0 {a} gir1.2-libvirt-glib-1.0 {a} gir1.2-spice-client-glib-2.0 { a} gir1.2-spice-client-gtk-3.0 {a} libvirt-glib-1.0-0 {a} python-ipaddr {a} python-libvirt {a} python-urlgrabber {a} Virt-manager Virt-viewer {a} Virtinst {a} 0 تم تحديث حزم ، وتثبيت 11 حزمة جديدة ، و 0 للإزالة ، و 0 لم يتم تحديثها. أحتاج إلى تنزيل 2,041،12.5 كيلو بايت من الملفات. بعد التفريغ ، سيتم استخدام XNUMX ميغابايت. هل تريد الاستمرار؟ [نعم / ن /؟] و
- بعد تثبيت الحزمة ، نستشير:
buzz @ sysadmin: ~ $ cat /usr/share/doc/virt-manager/README.Debian التحكم في الوصول ============== يتم التحكم في الوصول إلى مقبس libvirt من خلال العضوية في مجموعة "libvirt". إذا كنت ترغب في إدارة الأجهزة الافتراضية كمستخدم غير الجذر، فيجب عليك إضافة المستخدم الخاص بك إلى تلك المجموعة أو استخدام عناوين URI للجلسات مثل qemu:///session. راجع أيضًا /usr/share/doc/libvirt-bin/README.Debian. -- غيدو غونتر[البريد الإلكتروني محمي]> الخميس، 04 يونيو 2010 11:46:03 +0100
- يشير ما سبق إلى أننا يجب أن نجعل المستخدم يضغط على عضو من أعضاء مجموعة libvirt للوصول إلى الواجهة المثبتة حديثًا:
buzz @ sysadmin: ~ $ sudo adduser buzz libvirt إضافة "مشاركة" المستخدم إلى المجموعة` libvirt "... تمت إضافة مشاركة المستخدم إلى المجموعة libvirt.
- الآن نغلق الجلسة ونبدأها مرة أخرى. بعد دخول Cinnamon Desktop ، نذهب إلى القائمة -> الإدارة -> مدير الجهاز الظاهري، ونصل إلى واجهة إدارة KVM الخاصة بنا.
الشبكات الافتراضية في مدير الجهاز الظاهري
على الرغم من أن مدير الجهاز الظاهري سهل الاستخدام وأنه من خلال الممارسة اليومية يمكننا الحصول على درجة الماجستير في استخدامه ، فإننا نقدم نصيحه حول كيفية تعديل الشبكة الافتراضية التي يقوم Qemu-Kvm بتثبيتها افتراضيًا.
نحن ننتقل بك القائمة -> تحرير -> تفاصيل الاتصال، ونذهب إلى علامة التبويب «الشبكات الافتراضية«. إذا نقرنا على الرابط تكوين IPv4، ال أحمر، ويعلمنا أيضًا أنه تم تنشيط خادم DHCP من أجله. هذا الخادم يعمل بفضل الحزمة dnsmasq- قاعدةالذي تم تثبيته.
لمزيد من المعلومات ، انظر الملف: /usr/share/doc/libvirt-bin/README.Debian.
إذا أردنا تغيير تكوين الشبكة «الافتراضي"، سنمضي على النحو التالي:
buzz @ sysadmin: ~ sudo cp /etc/libvirt/qemu/networks/default.xml /etc/libvirt/qemu/networks/default.xml.original buzz @ sysadmin: ~ $ cat /etc/libvirt/qemu/networks/default.xml.original إفتراضي buzz @ sysadmin: ~ sudo nano /etc/libvirt/qemu/networks/default.xml $ إفتراضي buzz @ sysadmin: ~ $ sudo systemctl قم بإعادة تشغيل libvirtd buzz @ sysadmin: ~ $ sudo systemctl status libvirtd
إذا لم نقم بإغلاق Virtual Machine Manager قبل إعادة تشغيل ملف شيطان libvirtd، سوف نتلقى رسالة الخطأ التالية ، وهو أمر طبيعي لحدوث ذلك:
علينا فقط إغلاق ملف مدير الفضيلة وأعد فتحه. نعود إلى جزء تكوين الشبكات الافتراضية ، ونتحقق من أن الشبكة الافتراضي، لديك بالفعل المعلمات المعدلة.
نقترح تمكين البدء التلقائي للشبكة الافتراضي، بتحديد المربع «أوتوني".
التخزين في Virt-Manager
جانب آخر نريد أن نتطرق إليه هو التخزين - التخزين في مدير الفضيلة. بشكل افتراضي ، يوجد مجلد النظام لحفظ جميع صور الأجهزة الظاهرية فيه / var / lib / libvirt / images. لنفترض أن لدينا محرك أقراص ثابتًا مخصصًا تمامًا لهذه الوظيفة ، وقد تم تركيبه عليه / المنزل / vms. لإضافته إلى مدير الفضيلة، نتنقل عبر قائمته -> تحرير -> تفاصيل الاتصال -> التخزين. في الزاوية اليسرى السفلية نضغط على الزر «+«. ثم معالج لـ «قم بإنشاء دلو تخزين":
دعنا نلقي نظرة على أنواع التخزين المختلفة التي يمكننا الاختيار من بينها. وثائق مفصلة سنجدها دليل نشر وإدارة المحاكاة الافتراضيةمن ريد هات. سنختار أول «دير: دليل نظام الملفات".

في نهاية المعالج ، يكون خزان التخزين الجديد نشطًا وبداية تشغيله تلقائيًا.
أول آلة افتراضية
يجب أن نتنقل ونقرأ الخيارات المختلفة التي يقدمها Virt-Manager. دعونا نلاحظ في الصورة قبل الأخيرة لتلك التي تظهر لاحقًا ، أنه عندما نصل إلى إصدار الجهاز الظاهري المنشأ حديثًا وقبل ابدأ التثبيت، في خيار «المعالج«، نحتفل بالمربع "التكوين" نسخ تكوين وحدة المعالجة المركزية للكمبيوتر المضيف. قد لا يكون من الضروري القيام بذلك ، لكننا نلتزم بتوصية دبيان وممارسات خادم HP الخاصة بنا.
لمزيد من المعلومات ، انظر الملف: /usr/share/doc/libvirt-bin/README.Debian.








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