Εδώ και λίγο καιρό έχω στήσει ένα σύστημα με το Xen όπου έχω LinuxMint Debian Edition για dom0 και Windows7 για domU.
Δεν έχω βρει κάποιο tutorial για κάτι τέτοιο στα ελληνικά. Θα άξιζε να φτιάξω ένα για το adslgr;
Υπενθυμίζω ότι με το Xen θα μπορούσατε να στήσετε ένα VM μέσα στα linux και να έχετε native support των συσκευών που θέλετε στο guest λειτουργικό.
Ο λόγος που έφτιαξα το δικό μου, είναι επειδή είχα βαρεθεί το dual boot, μονο και μονο για να παιζω παιχνιδια στα Windows.
Εμφάνιση 1-15 από 57
-
25-04-13, 12:41 Tutorial για Xen Hypervisor #1
-
27-04-13, 03:30 Απάντηση: Tutorial για Xen Hypervisor #2
windows 7 σε xen εχουν σοβαρη υποστηριξη στα γραφικα?
-
30-04-13, 13:53 Απάντηση: Tutorial για Xen Hypervisor #3
-
01-05-13, 16:44 Απάντηση: Tutorial για Xen Hypervisor #4
Με vga passthrough ετσι?
-
01-05-13, 20:11 Απάντηση: Tutorial για Xen Hypervisor #5
Ναι, βέβαια. Μερικές nVidia όμως παρουσιάζουν θεματα με το passthrough όπως έχω διαβάσει σε ξένα φόρουμ. Δεν έχω κάποια εύκαιρη για να την δοκιμάσω.
Passthrough έχω κάνει την κάρτα γραφικών (7950), μια Creative SB Audigy(PCI), και ένα TP-Link gigabit ethernet(PCI), και τα usb3.0 ports από την MSI Z77A-G43
-
05-05-13, 16:46 Απάντηση: Tutorial για Xen Hypervisor #6
+1 για το tutorial
-
05-05-13, 18:02 Απάντηση: Tutorial για Xen Hypervisor #7
Θα με ενδιέφερε κι εμένα.
"Το λουφάρειν εστί φιλοσοφείν"
-
06-05-13, 13:38 Απάντηση: Tutorial για Xen Hypervisor #8
Ωραία, οπότε εφόσον υπάρχει ενδιαφέρον θα φτιάξω ένα guide με host Debian Wheezy ( τα linux mint τα βαρεθηκα, πολύ αργά repositories )
Να σημειώσω ότι κατά κύριο λόγο θα συμβουλευτώ αυτά τα 2 guides και θα προσθέσω και κάποια bugs που διόρθωσα όσον αφορά το PCI passthrough
http://forums.linuxmint.com/viewtopic.php?f=42&t=112013
http://gro.solexiv.de/2012/08/pci-passthrough-howto/Τελευταία επεξεργασία από το μέλος divinesheet : 06-05-13 στις 15:01.
-
11-05-13, 19:54 Απάντηση: Tutorial για Xen Hypervisor #9
Λοιπόν ας ξεκινήσουμε !
Καταρχάς πρέπει να σιγουρευτούμε ότι έχουμε σύστημα που να υποστηρίζει το VT-d της Intel ή το iommu της AMD.
Μπορείετε να δείτε εδώ μια λίστα με ήδη δοκιμασμένο hardware:
http://wiki.xen.org/wiki/VTd_HowTo
Εδώ μια λίστα με τους επεξεργαστές της Intel που υποστηρίζουν VT-d:
http://ark.intel.com/search/advanced?VTD=true
Να σημειώσω ότι όλα τα Q77 και μόνο ορισμένα Z77 motherboards υποστηρίζουν VT-d (τα MSI και ASRock υποστηρίζουν σε όλα τους σχεδόν τα ATX Z77)
To hardware που χρησιμοποιώ:
CPU: Intel Core i7-3770 (ο k δεν υποστηρίζει VT-d προς μεγάλη μου λύπη, είχα έναν k και αναγκαστηκα να τον αλλάξω και να πάρω έναν non-k)
Motherboard: MSI Z77A-G43
RAM: 24GB corsair vengeance Performance (2*4+2*8) (με 8GB θα είστε οκ - με 4GB ούτε κατα διάνοια ειδικά αν ακολουθείτε το tutorial αυτο για να παίζετε games στo domU*)
GPU: Sapphire 7950 3GB**
* Να σημειώσω ότι από εδώ και στο εξής θα αναφερόμαστε στο host λειτουργικό σαν dom0 και στο guest σαν domU, στην περίπτωσή μου dom0=Debian Wheezy 7.0, domU=Windows7
** Έχω ακούσει ότι το Xen έχει κάποια θέματα με τις nVidia, δεν το έχω ψάξει πολύ, δεν έχω κάποια εύκαιρη να δοκιμάσω
ΣΗΜΑΝΤΙΚΟ : Αν δεν έχετε δεύτερη κάρτα γραφικών (onboard ή κάποια άλλη δεν μπορώ να σας βοηθήσω, έχει αρκετή διαδικασία και δεν την έχω ψάξει)
Μέρος 1: Εγκατάσταση λειτουργικού και του Xen
Σιγουρευτείτε ότι το VT-d είναι ενεργοποιημένο από το bios
Εγκατέστησα το dom0 με την εξής διάταξη: (Σιγουρευτείτε να αφήσετε κάπου χώρο και για τo domU)
/ -> σε όλο τον SSD μου (/dev/sda1)
/black -> στον μισό μου δίσκο (300GiB) (τον είπα έτσι μιας και ειναι WD Black 640GB) (/dev/sdb1)
unformatted -> από το υπόλοιπο HDD όπου θα βάλω lvm (280GiB) (/dev/sdb2)
Στο τέλος του δίσκου /dev/sdb -> το swap ( ~18GiB πολύ έχω βάλει έ; ) (/dev/sdb3)
Μετά την εγκατάσταση του λειτουργικού και αφού συνδεθήκατε στο νέο σας σύστημα εγκαταστήστε τα εξής πακέτα:
xen-hypervisor-4.1-amd64
xen-linux-system
xen-utils-4.1
xen-utils-common
xenstore-utils
xenwatch
xen-tools
Το xen θα κάνει αυτόματα το update-grub. Αν θέλετε με την επανεκκίνηση να συνδέεστε στο Xen αλλάξτε τη γραμμή "GRUB_DEFAULT=....." στο /etc/default/grub σε
Κώδικας:GRUB_DEFAULT="Xen 4.1-amd64"
Στο αρχείο /etc/default/xen αλλάξτε τη γραμμή "TOOLSTACK=...." σε
Κώδικας:TOOLSTACK="xm"
Κάντε επανεκκίνηση στον υπολογιστή σας, λογικά με το που κάνετε log in τρέξτε την εντολή "xm list". Αυτό θα σας βγάλει σαν έξοδο την λίστα με τα λειτουργικά που χειρίζεται το xen. Το Domain-0 είναι ο host, το dom0 δηλαδή.
Μέρος 2: Παραμετροποίηση του xen και των ρυθμίσεων του domU.
Αν έχετε κάρτα δικτύου που θέλετε να την κάνετε passthrough στο domU δεν χρειάζετε να ακολουθήσετε τα βήματα για δημιουργία εικονικής κάρτας δικτύου:
Σταματάμε τον netowrk-manager με την εντολή:
service network-manager stop
Ανοίγουμε το αρχείο /etc/network/interfaces και το αλλάζουμε ώστε να μοιάζει σαν και αυτό:
Για ip με DHCP:
Κώδικας:auto lo iface lo inet loopback auto xenbr0 iface xenbr0 inet dhcp bridge_ports eth0
Αποθηκεύουμε και τρέχουμε την εντολή:
Κώδικας:service networking restart
Τώρα θα δημιουργήσουμε το LVM που θα χρησιμοποιήσω για σκληρό δίσκο στο /dev/sdb2:
Σιγουρευτείτε ότι θα τροποποιήσετε σύμφωνα με τα δικά σας δεδομένα. Δεν φέρω καμία ευθύνη αν κάνετε κάποιο λάθος στο formatting ή σε οτιδήποτε άλλο.
guest είναι το volume group, και win7 το logic volume όνομα. Βάλτε όποιο θέλετε εσείς απλά προσέξτε να αλλάξετε και τον κώδικα που θα ακολουθήσει στο configuration file του domU.
Κώδικας:pvcreate /dev/sdb2 vgcreate guest /dev/sdb2 lvcreate -L 280Gi -n win7 guest
Για το passthrough:
Δημιουργήστε τις εξής συντομεύσεις για την αποφυγή λαθών κατα την δημιουργία του domU με τις εντολές:
Κώδικας:ln -s /usr/lib /usr/lib64 ln -s /usr/lib/xen-default /usr/lib/xen ln -s /usr/share/qemu-linaro /usr/share/qemu ln -s /usr/lib/xen-4.1 /usr/lib/xen-default ln -s /usr/share/qemu-linaro/qemu/ /usr/share/qemu
Χρησιμοποιήστε την εντολή
Κώδικας:lspci
Σημειώστε τον κωδικό στην αρχή της κάθε γραμμής του τύπου XX:XX.XX
Να σημειώσω ότι με το που γίνουν passthrough θα πρέπει να κάνετε επανεκκίνηση στον υπολογιστή σας για να τις έχετε πάλι διαθέσιμες στο dom0.
Εγώ θα κάνω passthrough τις εξής:
00:14.0 (ένα usb 3.0 controller)
01:00.0 (η 7950)
01:00.1 (το HDMI-Audio της 7950 - να το κάνετε πάντα και αυτό passthrough γιατί αλλιώς παρουσιάζει προβλήματα η κάρτα γραφικών στα Windows)
05:01.0 (μια Creative Soundblaster PCI)
05:02.0 (ένα TP-Link PCI gigabit controller - δεν χρησιμοποιώ το xenbr0 μιας και εκείνο το έχω για άλλο vm)
Δημιουργήστε και δώστε δικαιώματα εκτέλεσης στο αρχείο pciback (εγώ το έβαλα στην διαδρομή /etc/xen) και γράψτε στα περιεχόμενά του το κατόθι bash script (προσέξτε να βάλετε 0000: μπροστά από κάθε κωδικό συσκευής):
Κώδικας:remove_device () { BDF=$1 # Unbind a PCI function from its driver as necessary [ ! -e /sys/bus/pci/devices/$BDF/driver/unbind ] || \ echo -n $BDF > /sys/bus/pci/devices/$BDF/driver/unbind # Add a new slot to the PCI Backend's list echo -n $BDF > /sys/bus/pci/drivers/pciback/new_slot # Now that the backend is watching for the slot, bind to it echo -n $BDF > /sys/bus/pci/drivers/pciback/bind } #usb 3.0 controller remove_device "0000:00:14.0" #AMD 7950 remove_device "0000:01:00.0" remove_device "0000:01:00.1" #Creative Soundblaster remove_device "0000:05:01.0" #TP-Link remove_device "0000:05:02.0"
Για να μπορέσετε να τρέξετε το pciback θα πρέπει να είναι ενεργοποιημένο το xen-pciback module.
Ενεργοποιείται με την εξής εντολή:
Κώδικας:modprobe xen-pciback
Τώρα ας φτιάξουμε το configuration file για το domU/Windows7 win7.cfg:
Το δικό μου(/etc/xen/win7.cfg):Κώδικας:# nut sure if really needed kernel="/usr/lib/xen-default/boot/hvmloader" builder = "hvm" name = "win7" # RAM size in MB memory = "4096" #edw vazete thn mnimi pou thelete na exei to domU # number CPU cores vcpus = 8 #posa core tha xrhsimopoiei to domU - egw ta evala ola #boot from hdd #disk = ['phy:/dev/guest/win7,hda,w'] #boot="c" #boot from cd disk = ['phy:/dev/guest/win7,hda,w','file:/home/............/win7.iso,hdc:cdrom.r'] # valte to path me to iso twn win7 boot="dc" #otan teleiwsei h egkatastash twn windows kante comment-out tis grammes apo panw #kai uncomment tis grammes poy den periexoun to cd # enable remote vnc access until video card driver is installed vnc = 1 apic=1 acpi=1 sdl=0 serial='pty' # list your pci devices (HD7950,HD7950,USB) pci=['01:00.0','01:00.1','00:14.0','05:01.0','05:02.0']
Αφού σώσετε το αρχείο εκτελέστε το pciback αφου πρώτα έχετε δώσει δικαιώματα εκτέλεσης και έχετε ενεργοποιήσει το xen-pciback όπως περιγράφω παραπάνω.
Κώδικας:cd /etc/xen ./pciback
Κώδικας:xm pci-list-assignable-devices
Σας εμφανιστούν οι κωδικοί των συσκευών που είχατε βάλει στο pciback
Αν όλα είναι οκ τρέξτε την εντολή
Κώδικας:xm create win7.cfg
Εγκαταστήστε το vncviewer για να μας βοηθήσει με την εγκατάσταση του λειτουργικού μέχρι να εγκαταστήσουμε τα drivers της κάρτας γραφικών.
Κώδικας:apt-get install vncviewer vncviewer localhost:0
Εγκαταστήστε τα Windows, και μετά τα drivers της κάρτας γραφικών
Αν εγινε σωστα η εγκατάσταση, η κάρτα γραφικών θα αρχίσει δουλεύει μετά την οθόνη με το λογότυπο των Windows. Από εκεί και πρίν μόνο από vnc μπορείτε να δείτε τι παίζει.
BUGS:
Αν κατά την δημιουργία του domU σας παρουσιάσει πρόβλημα με sibling device ή Error 22 βρείτε το αρχείο pciif.py στη διαδρομή /usr/lib/xen-4.1/lib/python/xen/xend/server/pciif.py
Βρείτε τις γραμμές 285,286,287,288 (για το sibling device) και κάντε τες comment out
Και στην γραμμή 343 (για το Error 22) και αλλάξτε το όρισμα της if από
Κώδικας:if not self.vm.info.is_hvm() and dev.irq:
Κώδικας:if dev.irq:
Είμαι σίγουρος ότι έχω κάνει ορθογραφικά και τυπογραφικά λάθη, θα ξανακοιτάξω και πάλι και πάλι το κείμενο αλλά αν βρείτε και εσείς κάποιο λάθος μου λέτε και το διορθώνω !
Απλά δεν ξέρω τώρα αυτές τις βδομάδες αν θα μπαίνω συχνά μιας και είναι περίοδος εξεταστικής και πρέπει να δώσουμε και κανα μάθημα :Ρ
Επίσης να πω ότι είναι το πρώτο μου tutorial σε κάτι, θα διορθώσω και το κείμενο από πλευράς αισθητικής γιατι έχει πολύ μαυρίλα πάνω του και όσο να'ναι ένα tutorial πρέπει να είναι φιλικό προς το χρήστη !
Ευχαριστώ τον powerhouse απο το linuxmint community και τον lug απο το http://gro.solexiv.de/2012/08/pci-passthrough-howto/
-
14-03-14, 14:38 Απάντηση: Tutorial για Xen Hypervisor #10
Θα ανεβάσω ένα tutorial σύντομα για εγκατάσταση του Xen 4.4 το οποίο έχει αρκετά περισσότερα features σε σχέση με το 4.1 που χρησιμοποιούσα μέχρι τώρα.
topkek
-
14-03-14, 19:13 Re: Tutorial για Xen Hypervisor #11
-
16-03-14, 00:51 Απάντηση: Tutorial για Xen Hypervisor #12
Σε xen 4.3.0 που δοκίμασα πριν από λίγο (το 4.4 θέλει λίγα fixes ακόμα, μάλλον θα ανεβάσω guide για xen 4.3.2 το οποίο δουλεύει καλά) έχει full υποστήριξη σε Crossfire (2 Sapphire R9 280X)
Θα τρέξω μερικά benchmarks από παιχνίδια και μετά θα κάνω και ένα clean install windows 7 σε έναν σκληρό για να συγκρίνω απόδοση xen και κανονικής εγκατάστασης windows.topkek
-
19-03-14, 06:50 Απάντηση: Tutorial για Xen Hypervisor #13
Μπράβο ωρέ KGeorgeG7 για την πρωτοβουλία. Δυστυχώς παίζουν πολύ λίγα resources πάνω στα hypervisors. Ουσιαστικά παίζουν 2 μεγάλα threads, το ένα στο overclock.net με τον dizzy4 και τον powerhouse, και το άλλο στο linuxmint με τον powerhouse πάλι. Αυτά, μερικά σκόρπια blogs και ένα vga passthrough για kvm thread στο arch forums. Πέτυχα και το post σου στο linuxmint και έτσι ήρθα εδώ. Προσωπικά εδώ και κάποιους μήνες ψάχνομαι με το hardware για την υλοποίηση ενός τέτοιου project.
Να ρίξω και μια ιδέα προς τους mods. Μπας και να κάναμε ρε παιδιά ένα subforum ας πούμε "virtualization" ή "hypervisors", και να είχαμε μέσα ξεχωριστά sections για xen, kvm, esxi, κτλ; Έχει πολύ ψωμί το όλο θέμα, και ειδικά με την έλευση του XenGT που απ'ότι πήρε το μάτι μου επιτρέπει να έχεις shared igp σε πολλαπλά VMs ξεπερνάμε και το πρακτικό πρόβλημα του να έχεις μια ξεχωριστή gpu για κάθε VM (εκτός από τα headless).
KGeorgeG7, αν μπορείς ρίξε benchmarks και με μια gpu, και προσπάθησε να δεις τι παίζει κι απο latency/lag σε multi online παιχνίδια. Αυτός είναι ο τομέας που με τρομάζει προσωπικά και κράτάω μια πισινή. Το να τρέξεις ένα offline single player παιχνίδι με καλά fps σίγουρα γίνεται, το έχουν καταφέρει πάρα πολλοί. Το θέμα είναι τι παίζει όταν εμπλέκεται και networking/επικοινωνία με server ενδιάμεσα. Γιατί ένας τύπος στο overlock.net έλεγε πχ οτι στο Killing Floor (mod πάνω στο unreal tournament 2004) είχε τραγικά fps.Τελευταία επεξεργασία από το μέλος daffy : 19-03-14 στις 13:02.
-
21-03-14, 15:44 Απάντηση: Tutorial για Xen Hypervisor #14
Έχω λίγο βαρύ πρόγραμμα αυτές τις μέρες, οπότε δεν ξέρω αν προλάβω να ασχοληθώ σύντομα με τα benchmarks.
Έστειλα πάντως μήνυμα στο support τους για το Xen 4.4 που δεν κάνει compile τα xen-utils-4.4 (ούτε μπορώ να τα βρω κάπου) που είναι απολύτως σημαντικά για να φτιάξουμε το VM.
Μέχρι τη Δευτέρα λογικά θα μου έχουν απαντήσει (2 business days)topkek
-
22-03-14, 12:28 Απάντηση: Tutorial για Xen Hypervisor #15
Good post....Unix is user-friendly. It's just very selective about who its friends are...
Παρόμοια Θέματα
-
Διαμέρισμα στα τούβλα - Ερωτήσεις για δικτύωση !?!?! Γρήγορα να προλάβουμε!
Από Eleasar στο φόρουμ NetworkingΜηνύματα: 278Τελευταίο Μήνυμα: 30-07-13, 14:58 -
Για "παλιους" πελατες..
Από paparen στο φόρουμ VDSLΜηνύματα: 1Τελευταίο Μήνυμα: 26-04-13, 01:05 -
PHP tutorial
Από manos_pap στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμούΜηνύματα: 3Τελευταίο Μήνυμα: 14-07-12, 16:51
Bookmarks