Page 78 - Linux Inside τ. 8

Basic HTML Version

Linux Inside
78
Ο
σκοπός του άρθρου είναι να περι-
γράψει με απλότητα τα βήματα που
απαιτούνται για τη δημιουργία μίας
εικονικής μηχανής. Οι εικονικές μηχανές εί-
ναι αυτόνομα και πλήρη συστήματα, τα
οποία δεν χρειάζονται ξεχωριστό hardware
για να τρέχουν. Λειτουργούν παράλληλα με την ήδη εγκατε-
στημένη Linux διανομή και μοιράζονται τους πόρους του συ-
στήματος.
Με τον όρο Virtualization μπορούμε να εκφράσουμε δύο
μεγάλες κατηγορίες συστημάτων:
• Server Virtualization
• Desktop Virtualization
Ως Server Virtualization εκφράζουμε την ύπαρξη πολλα-
πλών λειτουργικών συστημάτων, που τρέχουν πάνω από ένα
(ή και περισσότερα) σύστημα και εξυπηρετούν διάφορα
services που είναι απαραίτητα για έναν οργανισμό.
Ως Desktop Virtualization εκφράζουμε τη λειτουργία και
χρήση ενός πλήρους εικονικού περιβάλλοντος, το οποίο δεν
τρέχει στον υπολογιστή που χρησιμοποιούν οι υπάλληλοι μιας
εταιρείας, αλλά μέσω τοπικού (και όχι μόνο) δικτύου από
τους servers ενός οργανισμού.
Μία εταιρεία μπορεί να έχει σε εικονικές μηχανές και τα πε-
ριβάλλοντα των υπαλλήλων και τους servers της. Η παρακά-
τω λίστα παρουσιάζει τα δημοφιλέστερα προϊόντα στο χώρο:
XenServer:
http://www.citrix.com
vSphere:
http://www.vmware.com
Hyper-V:
https://www.microsoft.com
rhev:
https://www.redhat.com
VirtualBox:
https://www.virtualbox.org
Τι είναι το KVM;
Με τον όρο KVM (Kervel-Based Virtual Machine) αναφερόμα-
στε στην τεχνολογία virtualization που προ-
σφέρει ο πυρήνας Linux. Αν ο επεξεργαστής
υποστηρίζει αυτή την τεχνολογία, τότε μπο-
ρούμε ενδογενώς να σηκώσουμε εικονικές
μηχανές στο σύστημά μας. Αν η έκδοση του
πυρήνα μας είναι νεότερη του Linux 2.6.20
(Φεβ. 2007) και ο επεξεργαστής μας υποστηρίζει hardware
virtualization extensions, τότε μπορούμε να δημιουργήσουμε μία
εικονική μηχανή στο σύστημά μας. Αν η παρακάτω εντολή επι-
στρέψει αποτελέσματα, τότε ο επεξεργαστής μας υποστηρί-
ζει KVM:
grep -E 'vmx|svm' /proc/cpuinfo
Εάν δεν επιστρέψει κάτι, αλλά ο επεξεργαστής είναι σχετικά
πρόσφατος (από το 2006 και μετά), ρίξτε μια ματιά στο BIOS.
Μπορεί να έχει μία έξτρα επιλογή για να το ενεργοποιήσετε.
Ίσως χρειαστεί να ρίξετε μια ματιά στους ιστότοπους των Intel
και AMD για να επιβεβαιώσετε ότι ο επεξεργαστής σας δεν
υποστηρίζει KVM. Όσοι δεν μπορείτε να παρακολουθήσετε το
άρθρο, ρίξτε μια εκτενή ματιά στο VirtualBox της Oracle. Αυτό
δημιουργεί εικονικές μηχανές μέσω software virtualization και
υποστηρίζεται σε πολλά λειτουργικά συστήματα.
Τι χρειάζεται πριν ξεκινήσω;
Βήμα 1ο
Θα πρέπει να φορτώσετε (αν δεν είναι ήδη φορτωμένα)
δύο modules στον πυρήνα:
Για επεξεργαστή Intel:
# modprobe kvm
# modprobe kvm-intel
Για επεξεργαστή AMD:
# modprobe kvm
# modprobe kvm-kvm
Μετά επιβεβαιώνετε ότι έχουν φορτωθεί με την εντολή:
lsmod | grep kvm
Αν φορτώσετε το 2ο module, θα φορτωθούν αυτόματα και
οι εξαρτήσεις του! Αλλά καλό είναι να ξέρουμε τι κάνουμε.
Βήμα 2ο
Χρειαζόμαστε το πρόγραμμα qemu-kvm. Το qemu είναι ένα
ανοιχτού κώδικα λογισμικό εξομοίωσης συστημάτων και πλέ-
ον υποστηρίζει το KVM για να μπορούμε να δημιουργούμε ει-
κονικές μηχανές. Το εγκαθιστούμε μέσω της προσφαθαίρε-
σης προγραμμάτων της διανομής μας.
Πόροι
Για να δημιουργήσουμε την πρώτη μας εικονική μηχανή,
χρειαζόμαστε τουλάχιστον τους παρακάτω πόρους:
Του Ευάγγελου Μπαλάσκα <ebalaskas@ebalaskas.gr>
Linux Labs - KVM
Τι κάνει ένας διαχειριστής για να τρέχουν
απρόσκοπτα τα συστήματά του και να μην χρειάζεται
συνεχώς αναβαθμίσεις; Υπάρχει τρόπος να «τρέχει»
ένας Windows server πάνω σε έναν Linux server,
στο ίδιο μηχάνημα; Τη λύση μπορεί να δώσει το
virtualization (εικονικοποίηση) με τη χρήση της
τεχνολογίας KVM του Linux.
Εργαλεία:
KVM, QEmu
Δυσκολία:
URL:
http://goo.gl/ZRAJc
Δείτε το Wiki
Εικονικοποίηση με τη βοήθεια του πυρήνα
Ο Βαγγέλης προσπαθεί να βοηθήσει τα νέα μέλη του χώρου.
Χρήσιμες εντολές
• grep -E 'vmx|svm' /proc/cpuinfo
• qemu-img create -f qcow2 virtualdisk.qcow2 15G
• qemu-kvm virtualdisk.qcow2 -m 512 -usbdevice tablet
Με τον όρο KVM (Kervel-Based Virtual
Machine) αναφερόμαστε στην τεχνολογία
virtualization που προσφέρει ο πυρήνας Linux.