Πώς να δημιουργήσετε και να εγκαταστήσετε Guest Virtual Machines στον XenServer - Μέρος 5


Συνεχίζοντας να προχωράμε με τη σειρά XenServer, αυτό το άρθρο θα προσεγγίσει τη δημιουργία των ίδιων των πραγματικών επισκεπτών (που συχνά ονομάζονται εικονικές μηχανές).

Ενημέρωση: Τον Μάιο του 2016, η Citrix κυκλοφόρησε τη νέα έκδοση της πλατφόρμας XenServer 7. Για εγκατάσταση ακολουθήστε τα εξής: Νέα εγκατάσταση του XenServer 7.

Αυτό το άρθρο θα υποθέσει ότι όλα τα προηγούμενα άρθρα που καλύπτουν τη δικτύωση, την ενημέρωση κώδικα και την αποθήκευση έχουν ολοκληρωθεί. Ευτυχώς, δεν χρειάζεται να συζητηθεί άλλη νέα ορολογία και η δημιουργία των καλεσμένων μπορεί να ξεκινήσει!

Αναθεώρηση συστήματος

Σε αυτό το σημείο, έχουν ρυθμιστεί πολλά σε αυτόν τον κεντρικό υπολογιστή XenServer. Αυτό θα χρησιμεύσει ως μια γρήγορη ανασκόπηση σχετικά με το τι έχει ρυθμιστεί και ποιο άρθρο συζητήθηκε το θέμα.

  1. Ο XenServer 6.5 εγκαταστάθηκε στον διακομιστή
    1. https://linux-console.net/citrix-xenserver-installation-and-network-configuration-in-linux/
  2. Όλες οι ενημερώσεις κώδικα του XenServer 6.5 έχουν εφαρμοστεί
    1. https://linux-console.net/install-xenserver-patches-in-linux/
  3. Δημιουργήθηκαν ομαδοποίηση διεπαφής δικτύου και VLAN
    1. https://linux-console.net/xenserver-network-lacp-bond-vlan-and-bonding-configuration/
  4. Τα αποθετήρια αποθήκευσης iSCSI και ISO δημιουργήθηκαν για να αποθηκεύουν αρχεία εγκατάστασης του λειτουργικού συστήματος και τους εικονικούς σκληρούς δίσκους που χρησιμοποιούν οι επισκέπτες
    1. https://linux-console.net/xenserver-create-and-add-storage-repository/

Δημιουργία Virtual Guests στον XenServer

Αυτό το τμήμα του οδηγού θα βασίζεται σε προγράμματα εγκατάστασης ISO για να εκκινήσουν πραγματικά το νεοδημιουργημένο μηχάνημα επισκέπτη και να εγκαταστήσουν ένα λειτουργικό σύστημα. Φροντίστε να διαβάσετε το τέταρτο άρθρο για πληροφορίες σχετικά με τη δημιουργία ενός αποθετηρίου ISO.

Το XenServer συνοδεύεται από μια σειρά προτύπων που μπορούν να χρησιμοποιηθούν για τη γρήγορη παροχή ενός εικονικού επισκέπτη. Αυτά τα πρότυπα παρέχουν κοινές επιλογές για το επιλεγμένο λειτουργικό σύστημα. Οι επιλογές περιλαμβάνουν πράγματα όπως ο χώρος στον σκληρό δίσκο, η αρχιτεκτονική της CPU και η διαθέσιμη ποσότητα μνήμης ram μεταξύ άλλων επιλογών.

Αυτές οι επιλογές μπορούν να τροποποιηθούν χειροκίνητα αργότερα, αλλά προς το παρόν θα χρησιμοποιηθεί ένα απλό πρότυπο για την απεικόνιση της χρήσης τους. Για να αποκτήσετε τη λίστα των διαθέσιμων προτύπων, στην παραδοσιακή εντολή 'xe' μπορούν να περάσουν διαφορετικά ορίσματα για να ζητηθεί από το σύστημα να επιστρέψει τα διαθέσιμα πρότυπα.


xe template-list

Αυτή η εντολή είναι πιθανό να επιστρέψει πολλή έξοδο. Για να γίνει πιο ευανάγνωστη η έξοδος, προτείνεται η έξοδος να διοχετεύεται σε ‘λιγότερο’ ως εξής:


xe template-list | less

Αυτό θα επιτρέψει την ευκολότερη ανάλυση των διαθέσιμων προτύπων για τον εντοπισμό των απαραίτητων πληροφοριών UUID. Αυτό το άρθρο πρόκειται να συνεργαστεί με το Debian 8 Jessie αλλά θα απαιτήσει τη χρήση του παλαιότερου προτύπου Debian 7 Wheezy έως ότου το Citrix κυκλοφορήσει το νέο πρότυπο .

Η επιλογή του Debian 7 δεν θα επηρεάσει τίποτα στη λειτουργία του πραγματικού λειτουργικού συστήματος. (Το στιγμιότυπο οθόνης παρακάτω χρησιμοποίησε το UUID στην εντολή για να περικόψει μέρος της κανονικής εξόδου).


xe sr-list name-label=”Tecmint iSCSI Storage”

Με αυτό το UUID, έχουν ληφθεί όλες οι αρχικές πληροφορίες για τη ρύθμιση αυτού του επισκέπτη. Όπως συμβαίνει σχεδόν με τα πάντα στον XenServer, μια άλλη εντολή ‘xe’ θα χρησιμοποιηθεί για την παροχή του νέου επισκέπτη.


xe vm-install template=”Debian Wheezy 7.0 (64-bit)” new-name-label="TecmintVM" sr-uuid=bea6caa4-ecab-8509-33a4-2cda2599fb75

Το επισημασμένο UUID είναι το UUID του πρόσφατα παρεχόμενου επισκέπτη. Υπάρχουν μερικά βήματα συντήρησης σπιτιού που μπορούν ενδεχομένως να κάνουν τα πράγματα πιο εύκολα στο μέλλον. Η πρώτη είναι η παροχή μιας ετικέτας ονόματος στο νέο VDI που δημιουργήθηκε και η δεύτερη είναι η τροποποίηση οποιασδήποτε από τις προεπιλεγμένες προδιαγραφές υλικού που παρέχονται από το πρότυπο.

Για να δείτε γιατί θα ήταν σημαντικό να ονομάσετε το VDI, ρίξτε μια ματιά στο τι θα εκχωρήσει αυτόματα το σύστημα στο VDI όταν παρέχεται χρησιμοποιώντας τις ακόλουθες εντολές ‘xe’:


xe vbd-list vm-name-label=TecmintVM – Used to get the VDI UUID
xe vdi-list vbd-uuids=2eac0d98-485a-7c22-216c-caa920b10ea9    [Used to show naming issue]

Μια άλλη διαθέσιμη επιλογή είναι η συλλογή και των δύο πληροφοριών είναι η ακόλουθη εντολή:


xe vm-disk-list vm=TecmintVM

Το μέρος στο κίτρινο είναι η ανησυχία. Για πολλούς ανθρώπους αυτό το ζήτημα είναι ασήμαντο, αλλά για λόγους συντήρησης σπιτιού είναι επιθυμητό ένα πιο περιγραφικό όνομα για να παρακολουθείτε τον σκοπό του συγκεκριμένου VDI. Για να μετονομάσετε αυτό το συγκεκριμένο VDI, απαιτείται το UUID στην παραπάνω έξοδο και πρέπει να δημιουργηθεί μια άλλη εντολή ‘xe’.


xe vdi-param-set uuid=90611915-fb7e-485b-a0a8-31c84a59b9d8 name-label="TecmintVM Disk 0 VDI"
xe vm-disk-list vm=TecmintVM

Αυτό μπορεί να φαίνεται ασήμαντο να ρυθμιστεί, αλλά από την εμπειρία, αυτό απέτρεψε ένα σοβαρό ζήτημα κατά την αποσύνδεση ενός αποθετηρίου αποθήκευσης από έναν XenServer και την προσπάθεια προσάρτησής του σε έναν άλλο XenServer. Αυτό το συγκεκριμένο σενάριο, ένα αντίγραφο ασφαλείας μεταδεδομένων όλων των πληροφοριών επισκεπτών απέτυχε να αποκατασταθεί στον νέο XenServer και ευτυχώς ονομάζοντας το VDI σε κάθε έναν από τους καλεσμένους, η σωστή αντιστοίχιση του επισκέπτη στο VDI του μπόρεσε να γίνει απλά από τον όνομα-ετικέτα.

Το επόμενο βήμα διατήρησης σπιτιού για αυτό το άρθρο είναι να παρέχουμε σε αυτόν τον συγκεκριμένο επισκέπτη περισσότερους πόρους. Όπως προβλέπεται, αυτός ο επισκέπτης θα έχει μόνο περίπου 256 MiB (Mebibytes) μνήμης. Για τους περισσότερους επισκέπτες αυτό δεν είναι αρκετό, επομένως είναι ωφέλιμο να γνωρίζετε πώς να αυξήσετε τη διαθέσιμη μνήμη του επισκέπτη. Όπως με οτιδήποτε στον XenServer, αυτό μπορεί να επιτευχθεί με εντολές ‘xe’.


xe vm-param-list uuid=6eab5bdd-c277-e55d-0363-dcfd186c8e8e | grep -i memory

Το πλαίσιο με πράσινο χρώμα παραπάνω υποδεικνύει ότι η μεγαλύτερη μνήμη που θα μπορούσε ποτέ να έχει αυτός ο συγκεκριμένος επισκέπτης είναι περίπου 256 MiB. Για λόγους δοκιμής, αυτό θα ήταν εντάξει, αλλά για κάθε είδους σύστημα βαριάς χρήσης, αυτό θα αποδεικνυόταν ανεπαρκές.

Για να τροποποιήσετε αυτήν την τιμή για να δώσετε στον επισκέπτη πρόσβαση σε περισσότερη μνήμη RAM, μια απλή εντολή ‘xe’ μπορεί να εκδοθεί με τον επισκέπτη απενεργοποιημένο. Σε αυτό το παράδειγμα, η ποσότητα μνήμης ram που θα δοθεί σε αυτό το μηχάνημα θα αντιπροσωπεύεται σε byte αλλά θα ισούται με αξία ram 2 Gibibyte.


xe vm-memory-limits-set dynamic-max=2147483648 dynamic-min=2147483648 static-max=2147483648 static-min=2147483648 name-label=TecmintVM

Παρατηρήστε ότι θα δεσμεύονται συνεχώς δύο GiB ram για αυτόν τον επισκέπτη.

Τώρα ο συγκεκριμένος επισκέπτης είναι έτοιμος να εγκαταστήσει ένα λειτουργικό σύστημα. Από το προηγούμενο άρθρο σχετικά με τα αποθετήρια αποθήκευσης, προστέθηκε ένα κοινόχρηστο στοιχείο Samba σε αυτόν τον XenServer για την αποθήκευση αρχείων προγράμματος εγκατάστασης ISO. Αυτό μπορεί να επιβεβαιωθεί με την ακόλουθη εντολή ‘xe’:


xe sr-list name-label=Remote\ ISO\ Library\ on:\ //<servername>/ISO

Βεβαιωθείτε ότι έχετε αντικαταστήσει το <servername> με το όνομα του κατάλληλου διακομιστή Samba για το περιβάλλον στο οποίο πραγματοποιείται αυτή η διαμόρφωση. Μόλις επιβεβαιωθεί ότι ο XenServer βλέπει το αποθετήριο αποθήκευσης ISO, πρέπει να προστεθεί ένα εικονικό CD-ROM στον επισκέπτη για να εκκινήσει το αρχείο ISO. Αυτός ο οδηγός θα υποθέσει ότι το Debian Net Installer ISO υπάρχει στο αποθετήριο αποθήκευσης ISO.


xe cd-list | grep debian


xe vm-cd-add vm=TecmintVM cd-name=debian-8-netinst.iso device=3
xe vbd-list vm-name-label=TecmintVM userdevice=3

Οι παραπάνω εντολές αναφέρουν πρώτα το όνομα για το Debian ISO. Η επόμενη εντολή θα προσθέσει μια εικονική συσκευή CD-ROM στον επισκέπτη TecmintVM και θα του εκχωρήσει το αναγνωριστικό συσκευής του 3.

Η τρίτη εντολή χρησιμοποιείται για τον προσδιορισμό του UUID για το CD-ROM που προστέθηκε πρόσφατα για να συνεχιστεί η ρύθμιση της συσκευής για την εκκίνηση του Debian ISO.

Το επόμενο βήμα είναι να κάνετε το CD-ROM με δυνατότητα εκκίνησης καθώς και να δώσετε εντολή στον επισκέπτη να εγκαταστήσει ένα λειτουργικό σύστημα από το CD-ROM.


xe vbd-param-set uuid=3836851f-928e-599f-dc3b-3d8d8879dd18 bootable=true
xe vm-param-set uuid=6eab5bdd-c277-e55d-0363-dcfd186c8e8e other-config:install-repository=cdrom

Η πρώτη εντολή παραπάνω ορίζει το CD-ROM να είναι εκκινήσιμο χρησιμοποιώντας το UUID του που επισημαίνεται με πράσινο στο παραπάνω στιγμιότυπο οθόνης. Η δεύτερη εντολή δίνει οδηγίες στον επισκέπτη να χρησιμοποιήσει το CD-ROM ως μέθοδο εγκατάστασης του λειτουργικού συστήματος. Το UUID για τον επισκέπτη Tecmint επισημαίνεται στο παραπάνω στιγμιότυπο οθόνης με κίτρινο χρώμα.

Το τελευταίο βήμα για τη ρύθμιση του επισκέπτη είναι να επισυνάψετε μια εικονική διεπαφή δικτύου (VIF). Αυτό είναι ιδιαίτερα σημαντικό για αυτήν τη μέθοδο εγκατάστασης, καθώς χρησιμοποιείται το πρόγραμμα εγκατάστασης Δίκτυο Debian και θα χρειαστεί να τραβήξει πακέτα από τα αποθετήρια του Debian.

Κοιτάζοντας πίσω στο άρθρο δικτύωσης XenServer, ένα ειδικό VLAN είχε ήδη δημιουργηθεί για αυτόν τον επισκέπτη και ήταν το VLAN 10. Χρησιμοποιώντας ‘xe’ μπορεί να δημιουργηθεί η απαραίτητη διεπαφή δικτύου και να εκχωρηθεί σε αυτόν τον επισκέπτη.


xe network-list name-description="Tecmint test VLAN 10"
xe vif-create vm-uuid=6eab5bdd-c277-e55d-0363-dcfd186c8e8e network-uuid=cfe987f0-b37c-dbd7-39be-36e7bfd94cef device=0

Η πρώτη εντολή χρησιμοποιείται για τη λήψη του UUID του δικτύου που δημιουργήθηκε για αυτόν τον επισκέπτη. Η επόμενη εντολή χρησιμοποιείται για τη δημιουργία ενός προσαρμογέα δικτύου για τον επισκέπτη και τη σύνδεση του προσαρμογέα δικτύου στο κατάλληλο δίκτυο.

Συγχαρητήρια! Σε αυτό το σημείο, η εικονική μηχανή είναι έτοιμη για εκκίνηση και εγκατάσταση! Για να ξεκινήσετε τον επισκέπτη, εκδώστε την ακόλουθη εντολή ‘xe’.


xe vm-start name-label=TecmintVM

Εάν το τερματικό δεν παράγει σφάλματα, τότε ο επισκέπτης ξεκίνησε με επιτυχία. Η σωστή εκκίνηση του επισκέπτη μπορεί να επιβεβαιωθεί με την ακόλουθη εντολή ‘xe’:


xe vm-list name-label=TecmintVM

Τώρα το μεγάλο ερώτημα. Πώς να αποκτήσετε πρόσβαση στο πρόγραμμα εγκατάστασης; Αυτή είναι μια έγκυρη ερώτηση. Η εγκεκριμένη μέθοδος της Citrix είναι η χρήση του XenCenter. Το ζήτημα εδώ είναι ότι το XenCenter δεν εκτελείται σε Linux! Υπάρχει λοιπόν μια λύση ώστε οι χρήστες να μην χρειάζεται να δημιουργήσουν έναν ειδικό σταθμό των Windows απλώς για να έχουν πρόσβαση στην κονσόλα ενός επισκέπτη που τρέχει.

Αυτή η διαδικασία περιλαμβάνει τη δημιουργία μιας σήραγγας SSH από τον υπολογιστή Linux στον κεντρικό υπολογιστή XenServer και στη συνέχεια την προώθηση μιας σύνδεσης VNC μέσω αυτής της σήραγγας. Είναι πολύ έξυπνο και λειτουργεί υπέροχα, αλλά αυτή η μέθοδος προϋποθέτει ότι ο χρήστης μπορεί να έχει πρόσβαση στον XenServer μέσω SSH.

Το πρώτο βήμα είναι να προσδιορίσετε τον αριθμό τομέα του επισκέπτη στον XenServer. Αυτό γίνεται με τη χρήση πολλών διαφορετικών εντολών.


xe vm-list params=dom-id name-label=TecmintVM
xenstore-read /local/domain/1/console/vnc-port

Η σειρά αυτών των εντολών είναι σημαντική! Η πρώτη εντολή θα επιστρέψει έναν αριθμό που απαιτείται για τη δεύτερη εντολή.

Η έξοδος και από τις δύο εντολές είναι σημαντική. Η πρώτη έξοδος δηλώνει το αναγνωριστικό τομέα στον οποίο εκτελείται ο επισκέπτης. 1 σε αυτήν την περίπτωση. Η επόμενη εντολή απαιτεί αυτόν τον αριθμό για να προσδιορίσει τη θύρα VNC για την περίοδο λειτουργίας της κονσόλας επισκέπτη. Η έξοδος από αυτήν την εντολή παρέχει τη θύρα VNC που μπορεί να χρησιμοποιηθεί για σύνδεση στο βίντεο από αυτόν τον συγκεκριμένο επισκέπτη.

Με τις παραπάνω πληροφορίες που λαμβάνονται, είναι καιρός να μεταβείτε σε έναν σταθμό Linux και να συνδεθείτε στον XenServer για να δείτε την περίοδο λειτουργίας της κονσόλας αυτού του επισκέπτη. Για να γίνει αυτό, θα δημιουργηθεί μια σήραγγα SSH και θα ρυθμιστεί η προώθηση θύρας για να κατευθύνει μια τοπική σύνδεση VNC μέσω της σήραγγας SSH. Αυτή η σύνδεση θα γίνει από έναν σταθμό εργασίας Linux Mint 17.2, αλλά θα πρέπει να είναι παρόμοια για άλλες διανομές.

Το πρώτο βήμα είναι να διασφαλίσετε ότι το OpenSSH client και το xtightnvcviewer είναι εγκατεστημένα στον κεντρικό υπολογιστή Linux. Στο Linux Mint αυτό μπορεί να επιτευχθεί με την ακόλουθη εντολή:


sudo apt-get install openssh-client xtightvncviewer

Αυτή η εντολή θα εγκαταστήσει τα απαραίτητα βοηθητικά προγράμματα. Το επόμενο βήμα είναι να δημιουργήσετε μια σήραγγα SSH στον κεντρικό υπολογιστή XenServer και να προσδιορίσετε νωρίτερα την προώθηση της θύρας στη θύρα VNC στον κεντρικό υπολογιστή XenServer (5902).


ssh -L <any_port>:localhost:<VM_Port_Above> root@<server> -N
ssh -L 5902:localhost:5902 root@<servername> -N

Η επιλογή ‘-L’ λέει στο ssh να μεταφέρει προς τα εμπρός. Η πρώτη θύρα μπορεί να είναι οποιαδήποτε θύρα πάνω από το 1024 που δεν χρησιμοποιείται στον υπολογιστή Linux Mint. Το 'localhost:5902' υποδηλώνει ότι η κίνηση πρέπει να προωθηθεί στην απομακρυσμένη θύρα localhost 5902 σε αυτήν την περίπτωση που είναι η θύρα XenServer VNC του TecmintVM δυνατός>.

Το 'root@' είναι τα διαπιστευτήρια σύνδεσης στο SSH στον κεντρικό υπολογιστή XenServer. Τέλος, το ‘-N’ λέει στο SSH να ανοίξει απλώς μια σύνδεση προώθησης θύρας. Χρησιμοποιώντας την εντολή 'lsof' το τούνελ μπορεί να προβληθεί στην έξοδο.


sudo lsof -i | grep 5902

Εδώ η σήραγγα είναι ρυθμισμένη και ακούει για συνδέσεις. Τώρα είναι ώρα να ανοίξετε μια σύνδεση VNC στον επισκέπτη στον XenServer. Το βοηθητικό πρόγραμμα που έχει εγκατασταθεί είναι ‘xvncviewer’ και η σύνδεση ssh για την προώθηση της κυκλοφορίας στον XenServer ακούει στο ‘localhost:5902’ ώστε να μπορεί να δημιουργηθεί η κατάλληλη εντολή.


xvncviewer localhost:5902

Voila! Υπάρχει η περίοδος λειτουργίας της κονσόλας TecmintVM που εκτελεί το Debian Network Installer που περιμένει να ξεκινήσει η διαδικασία εγκατάστασης. Σε αυτό το σημείο, η εγκατάσταση προχωρά όπως κάθε άλλη εγκατάσταση του Debian.

Μέχρι αυτό το σημείο, τα πάντα με τον XenServer έχουν γίνει μέσω της διεπαφής γραμμής εντολών (CLI). Ενώ πολλοί χρήστες Linux απολαμβάνουν το CLI, υπάρχουν βοηθητικά προγράμματα που απλοποιούν τη διαδικασία διαχείρισης κεντρικών υπολογιστών και πισινών XenServer. Το επόμενο άρθρο αυτής της σειράς θα καλύψει την εγκατάσταση αυτών των εργαλείων για χρήστες που επιθυμούν να χρησιμοποιήσουν γραφικά συστήματα αντί CLI.