Qemu-Kvm + Virt-Manager ב- Debian - רשתות מחשבים עבור חברות קטנות ובינוניות

אינדקס כללי של הסדרה: רשתות מחשבים לעסקים קטנים ובינוניים: מבוא

במאי 2013 פרסמנו שני מאמרים בבלוג זה המוקדשים להתקנת Qemu-Kvm על דביאן 7 " Wheezy ". הם עדיין רלוונטיים. מאחר שתהליך ההתקנה והתצורה בדביאן 8 "Jessie" השתנה במידה מסוימת, אנו רוצים לעדכן את ההליך.

לא יזיק לקרוא את המאמר הקודם, וירטואליזציה בדביאן: מבוא - רשתות מחשבים לעסקים קטנים ובינוניים , לפני שתצלול למדריך זה , כדי לקבל קצת רקע על הנושא.

אתרים שאנו מציעים לבקר בהם

תצפית

  • אנו מעתיקים את פלט הפקודות, מכיוון שהן דידקטיות הרבה יותר מכל קומפוזיציה אחרת שנכתבה על ידינו. אנו מציעים לך לקרוא בעיון את ההודעות של המנדטים השונים, מכיוון שזו אחת הדרכים הטובות ביותר ללמוד מבלי לעבור לחיפוש באינטרנט. לפחות זו דעתנו.

התקנה

אנו מתחילים בהתקנה בסיסית של דביאן "ג'סי", כמתואר בסעיף התקנת תחנת עבודה - רשתות מחשבים לעסקים קטנים ובינוניים . לאחר מכן, אנו מתקינים את סביבת שולחן העבודה המועדפת עלינו, כמתואר בסעיף 6 סביבות שולחן עבודה בדביאן - רשתות מחשבים לעסקים קטנים ובינוניים.

עבור מאמר זה, בחרנו ב- Cinnamon Desktop . בחרנו בו מכיוון שקוראים רבים אוהבים את סביבת שולחן העבודה הזו. 😉

הנתונים הכלליים של תחנת העבודה שלנו הם:

שם דומיין: desdelinux.אוהד
שם הצוות: סיסדמין
FQDN: מנהל מערכת.desdelinux.אוהד
כתובת IP: 192.168.10.3
תת רשת: 192.168.10.0/24
משתמש רגיל: זמזום
שם משתמש מלא: מערכת ההפעלה הראשונה של דביאן

אנו בודקים תמיכה בווירטואליזציה

בקונסולה אנו מבצעים:

buzz @ sysadmin: ~ $ egrep -c "(svm | vmx)" / proc / cpuinfo
2

במקרה שלנו, הפקודה מחזירה לנו שיש לנו 2 מעבדים עם תמיכה ראויה.

חבילות שנתקין

קודם כל, נגלה שאנחנו הולכים להתקין באמצעות הפקודות הבאות:

buzz @ sysadmin: ~ $ aptitude search kvm
p ikvm - מכונה וירטואלית של Java עבור ה- CLI          
v kvm                             - 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 עדיפות: extra מקטע: net מפתח: PKG OpenStack[מוגן בדוא"ל]> ארכיטקטורה: הכל גודל לא דחוס: 50.2 k תלוי ב: 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 API "המקורי" שלו, הוא תומך גם ב-API של 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 חדש: כן סטטוס: לא הוסרה Multi-Arch: זר גרסה: 1:2.1+dfsg-12+deb8u1 עדיפות: אופציונלי מקטע: שונות מפתח: צוות Debian QEMU[מוגן בדוא"ל]> ארכיטקטורה: amd64 גודל לא דחוס: 60.4k תלוי ב: 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 התקן את qemu-kvm libvirt-bin-bridge-utils
יותקנו החבילות החדשות הבאות:     
  augeas-lenses {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} libseccomp2 {a} libspice-server1 {a} libvdeplug2 {a} libvirt-bin libvirt-clients {a} libvirt-daemon {a} libvirt-daemon-system {a} libvirt0 {a} libx86-1 {a} libxen-4.4 {a} libxenstore3.0 { a} libxml2-utils {a} lvm2 {a} netcat-openbsd {a} pm-utils {a} powermgmt-base {a} qemu-kvm qemu-system-common {a} qemu-system-x86 {a} qemu -משתמשים {a} ביוביות {a} vbetool {a} 0 חבילות עודכנו, 42 חדשות מותקנות, 0 להסרה ו 0 לא מעודכנות. אני צריך להוריד 8,422 kB / 14.8 MB קבצים. לאחר פרוק השימוש ב -53.3 מגהבייט. האם אתה רוצה להמשיך? [Y / n /?] ו-

חשוב

  • כאשר אנו מתקינים על שולחן עבודה, נצטרך ממשק לניהול ה- KVM. אם היינו מתקינים על שרת אחד או יותר, גם התקנת שולחן העבודה וגם התקנת ה- מכונה וירטואלית, שנתקין בהמשך. Cבמופע יחיד של ממשק גרפי זה, אנו יכולים לנהל את כל השרתים בהם התקנו את החבילות qemu-kvm, libvirt-bin y גשר כלים.
  • השד הראשי - דמון של וירטואליזציה הוא libvirtd. כדי לדעת את מעמדו אנו מבצעים:
buzz @ sysadmin: ~ $ sudo systemctl status libvirtd
buzz @ sysadmin: ~ $ sudo service libvirtd status
  • אם בפלט של אחת מהפקודות הקודמות, אנו קוראים כמה שורות באדום, זה בריא להפעיל מחדש את השירות libvirtd ובדוק שוב, או הפעל מחדש את המחשב ובדוק. הוא תסריטlibvirtd.service שנוהג system, נמצא ב /lib/systemd/system/libvirtd.service. שים לב שנוכל להפעיל את השד גם בדרך הישנה, ​​כלומר:
buzz @ sysadmin: ~ $ sudo service libvirtd
שימוש: /etc/init.d/libvirtd {התחל | עצור | הפעל מחדש | טען מחדש | טען מחדש | סטטוס | עצור כוח}

buzz @ sysadmin: ~ $ sudo service libvirtd הפעל מחדש את buzz @ sysadmin: ~ $ sudo service libvirtdlibvirtd.service - דמון וירטואליזציה
   נטען: נטען (/lib/systemd/system/libvirtd.service; מופעל)
   פָּעִיל: פעיל (רץ) מאז יום ראשון 2016-11-27 11:23:53 EST; לפני 8 דקות Docs: 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 התחל (קוד = יציאה, סטטוס = 0 / SUCCESS)
  • אם אנו סקרנים ורוצים לדעת מהם המודולים ומיקומם, אנו מבצעים:
buzz @ sysadmin: ~ $ סודו עודכן

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 2015 יולי XNUMX kvm-amd.ko
-rw-r - r-- 1 שורש שורש 223680 17 ביולי 2015 kvm-intel.ko
-rw-r - r-- 1 שורש שורש 715920 17 ביולי 2015 kvm.ko

אנו מתקינים את מנהל המחשב הווירטואלי

buzz @ sysadmin: ~ $ sudo aptitude להתקין את virt-manager
סיסמת [sudo] לבאז: יותקנו החבילות החדשות הבאות: 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} viewer virt-manager {a} virtinst {a} 0 חבילות עודכנו, 11 חדשות הותקנו, 0 להסרה ו- 0 לא עודכנו. אני צריך להוריד 2,041 kB קבצים. לאחר הפירוק ישמש 12.5 מגהבייט. האם אתה רוצה להמשיך? [Y / n /?] ו-
  • לאחר התקנת החבילה, אנו מתייעצים עם:
buzz @ sysadmin: ~ $ cat /usr/share/doc/virt-manager/README.Debian 
בקרת גישה ============== הגישה לשקע libvirt נשלטת על ידי חברות בקבוצת "libvirt". אם ברצונך לנהל מכונות וירטואליות כלא-root, עליך להוסיף את המשתמש שלך לקבוצה זו או להשתמש ב- session URI כמו qemu:///session. ראה גם /usr/share/doc/libvirt-bin/README.Debian. -- גווידו גונתר[מוגן בדוא"ל]> יום ה', 04 ביוני 2010 11:46:03 +0100
  • האמור לעיל מציין כי עלינו להפוך את המשתמש לזמזם כחבר ב- קבוצת ליבוויר כדי לגשת לממשק החדש שהותקן:
buzz @ sysadmin: ~ $ sudo adduser buzz libvirt
הוספת משתמש 'באז' לקבוצה 'libvirt' ... הוספת באז משתמש לקבוצת libvirt בוצע.
  • כעת אנו סוגרים את הפגישה ומתחילים בה שוב. לאחר שנכנס לשולחן העבודה של קינמון, אנחנו הולכים אל תפריט -> ניהול -> מנהל מכונות וירטואליות, ואנחנו ניגשים לממשק הניהול של ה- KVM שלנו. מנהל סגולה

רשתות וירטואליות במנהל המכונות הווירטואליות

למרות שמנהל המכונות הווירטואליות קל לשימוש ועם תרגול יומיומי נוכל להשיג שליטה בשימוש בו, אנו מציעים טיפ כיצד לשנות את הרשת הווירטואלית ש-Qemu-Kvm מתקין כברירת מחדל.

אנו מנווטים דרך התפריט שלו -> עריכה -> פרטי חיבור , ונעבור ללשונית " רשתות וירטואליות ". אם נלחץ על קישור תצורת IPv4 , הרשת תוצג , והיא גם מודיעה לנו ששרת ה-DHCP מופעל עבורה. שרת זה פועל הודות לחבילת dnsmasq-base , המותקנת.

למידע נוסף, עיין בקובץ: /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

אם לא סגרנו את מנהל המחשב הווירטואלי לפני הפעלה מחדש של שד libvirtd, נקבל את הודעת השגיאה הבאה, שהיא נורמלית שזה יקרה: שגיאה

אנחנו פשוט צריכים לסגור את Virt-Manager ולפתוח אותו מחדש. נחזור למקטע תצורת הרשתות הווירטואליות ונוודא שרשת ברירת המחדל כוללת כעת את הפרמטרים שהשתנו.

אנו מציעים להפעיל הפעלה אוטומטית של רשת ברירת המחדל על ידי סימון התיבה " הפעלה אוטומטית ".

אחסון ב- Virt-Manager

היבט נוסף שאנו רוצים לגעת בו הוא אחסון - אחסון ב- Virt-Manager. כברירת מחדל, תיקיית המערכת לשמירת כל התמונות של המכונות הווירטואליות נמצאת / var / lib / libvirt / images. נניח שיש לנו כונן קשיח המוקדש לחלוטין לפונקציה זו, ויש לנו אותו מותקן / home / vms. כדי להוסיף אותו ל מנהל וירט, אנו מנווטים בתפריט שלה -> עריכה -> פרטי חיבור -> אחסון. בפינה השמאלית התחתונה אנו לוחצים על הכפתור «+«. ואז אשף עבור «צור דלי אחסון": אחסון

בואו נסתכל על סוגי האחסון השונים שאנחנו יכולים לבחור מהם. תיעוד מפורט שנמצא ב מדריך פריסה וניהול וירטואליזציה, מ- Red Hat. אנו נבחר את הראשון «dir: מדריך מערכת הקבצים". אחסון 2

אחסון 3

בסוף האשף, מיכל האחסון החדש פעיל ועם תחילתו באופן אוטומטי.

מכונה וירטואלית ראשונה

עלינו לנווט ולקרוא את האפשרויות השונות שמציע Virt-Manager. שימו לב בתמונה הלפני אחרונה המוצגת למטה שכאשר אנו מגיעים להגדרות המכונה הווירטואלית החדשה שנוצרה ולפני תחילת ההתקנה , באפשרות " מעבד " , אנו מסמנים את התיבה "תצורה", "העתק תצורת מעבד מהמכונה המארחית ". ייתכן שזה לא הכרחי, אך אנו פועלים לפי המלצת דביאן והניסיון שלנו עם שרתי HP.

למידע נוסף, עיין בקובץ: /usr/share/doc/libvirt-bin/README.Debian. create-vm01

create-vm02

create-vm03

create-vm04

create-vm05

create-vm06

create-vm07

create-vm08

create-vm09

נוסיף רק שפלטפורמת הווירטואליזציה הזו נמצאת בייצור בשתי חברות כבר למעלה משלוש שנים. למרות הפסקות חשמל, מחשבים סטנדרטיים ש"הסתגלו " לתפקד כשרתים, וכל הקשיים שיכולים להתקיים במדינה מתפתחת כמו שלנו, Qemu-Kvm תמיד עבדה כהלכה, וכך גם השרתים הווירטואליים שרצים עליה.

אנו מקווים שמאמר זה שימושי עבורך.

המסירה הבאה?

" Virsh על דביאן "

זכרו שזו תהיה סדרת מאמרים בנושא רשתות מחשבים לעסקים קטנים ובינוניים . אנחנו מחכים לכם!


הוסף כמקור מועדף בגוגל