L’infrastructure de bureau virtuel (VDI) permet de déporter le système d’un ordinateur sur un serveur. Le système va être hébergé sur le serveur seul la souris, le clavier et l’affichage vont être déportés sur le client léger. Cela permet de garder en service des machines qui ne sont plus assez puissantes pour supporter un système d’exploitation par exemple.




 

Généralité

Fonctionnement d’un VDI

Dans une architecture VDI un serveur est utilisé pour faire tourner des clients légers. Le système de ces clients va tourner sur le serveur, seul les contrôles (clavier, souris..) et l’affichage seront déportés. Votre équipement va servir de terminal d’accès (client léger).

Grâce à la mise en place d’un VDI, vous pourrez utiliser des terminaux légers mais aussi garder en service des équipements devenus obsolètes/lents, vous permettant d’avoir un gain financier car ces équipements pourront rester en service.  Autre point positif, les clients légers se déploient très facilement une fois votre serveur configuré.

Néanmoins l’architecture de votre solution doit avoir été murement réfléchie. Vous devrez dimensionner votre serveur en fonction du nombre de clients légers, mais aussi avoir un réseau assez performant afin que vos clients n’aies pas de lenteur.

 

Les VDI existants

Sur le marché il y a plusieurs solutions de VDI, pour vous citer quelques exemples:

Outils sous licence:

  • XenDesktop (Citrix)
  • Microsoft (A partir Windows Server 2008)

Outils libres:

  • RHEV (Red Hat Entreprise Virtualization)
  • LTSP (Linux Terminel Server Project) que nous allons déployer dans ce tutoriel

 

LTSP

Architecture

Lors de ce tutoriel nous allons mettre en place l’architecture suivante:

Elle est composée d’un serveur LTSP et d’un client léger.  Si vous êtes curieux vous pouvez réaliser ce tutoriel sur un outil de virtualisation (Worstation, Virtualbox…). Dans ce cas, créez une machine virtuelle sous Ubuntu qui sera votre serveur et créez une seconde machine, en supprimant le disque dur, qui sera votre client léger. Prenez soin de mettre vos deux machines sur le même réseau.

 

Fonctionnement

L’outil LTSP s’appuie sur trois protocoles pour fonctionner: DHCP, TFTP et SSH.

Grâce au protocole DHCP, notre serveur va attribuer aux clients la configuration réseau adéquate. Ensuite le client léger va charger son système grâce au protocole TFTP. Les échanges entre le client et le serveur vont ensuite s’effectuer avec le protocole SSH.

 

Installation

Lors de ce tutoriel je vais utiliser la distribution Ubuntu 16.04 téléchargeable ici. Commencez par mettre à jour votre système.

sudo apt-get update

sudo apt-get upgrade

 

Configurez une IP fixe sur votre serveur, éditez le fichier « interfaces » avec la commande suivante:

sudo nano /etc/network/interfaces

 

Copiez le contenu suivant dans le fichier en remplaçant eth0 par votre interface réseau. Vous pourrez avoir le nom de celle-ci en tapant la commande « ifconfig » si vous ne la connaissez pas.

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 10.1.24.203
netmask 255.255.255.0
gateway 10.1.24.254
dns-nameservers 8.8.8.8

 

Redémarrez le service réseau du serveur afin que les modifications soient prises en compte.

sudo /etc/init.d/networking restart

 

Nous allons installer LTSP. Lancez la commande ci-dessous:

sudo apt-get install ltsp-server-standalone

 

Passons à la configuration du serveur DHCP, éditez le fichier suivant:

sudo nano /etc/ltsp/dhcpd.conf

 

Entrez le texte ci-dessous en adaptant les paramètres à votre réseau:

# 
# Configuration DHCP LTSP dhcpd.conf 
# 
authoritative; 
subnet 10.1.24.0 netmask 255.255.255.0 { 
range 10.1.24.50 10.1.24.250; 
option domain-name "ain.local"; 
option domain-name-servers 8.8.8.8; 
option broadcast-address 10.1.24.255; 
option routers 10.1.24.254; 
next-server 10.1.24.203
option subnet-mask 255.255.255.0; 
option root-path "/opt/ltsp/i386"; 
if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" { 
filename "/ltsp/i386/pxelinux.0"; 
} else { 
filename "/ltsp/i386/nbi.img"; 
} 
}

 

Maintenant que le serveur est configuré nous allons redémarrer le service DHCP afin que les modifications soient prises en compte.

sudo service isc-dhcp-server restart

 

Nous allons créer l’image système qui va être chargée sur nos clients. Vous devez avoir une connexion internet fonctionnelle pour cette étape. Lancez la commande suivante:

sudo ltsp-build-client --arch i386

 

Le chargement se lance, cette opération va prendre quelques minutes. Une fois terminée, entrez les commandes suivantes afin que la création soit prise en compte:

sudo apt-get update
sudo apt-get upgrade
sudo ltsp-update-kernels
sudo ltsp-update-image
sudo ltsp-update-sshkeys

 

Dans ce tutoriel je laisse les paramètres par défaut, libre à vous de les modifier en éditant le fichier suivant :

sudo nano /opt/ltsp/i386/etc/lts.conf

 

Vous pourrez modifier différents paramètres, comme par exemple si un client de votre réseau possède moins de XX GB de RAM, celui-ci sera forcé de démarrer en client léger.

 

Lancement client léger

Notre serveur est configuré, nous allons maintenant tester le bon fonctionnement de celui-ci. Vous devez dans un premier temps vous assurer que le client démarre en premier sur la carte réseau. Pour vérifier, rendez-vous dans le bios de votre client dans l’onglet « Boot » et utilisez – ou + pour mettre votre carte réseau en première.

 

Allez ensuite dans l’onglet « Exit » et sélectionnez « Exit Saving Changes » pour sauvegarder vos modifications.

 

Démarrez le client. Celui-ci va dans un premier temps récupérer une adresse IP:

 

 

 

Le client va ensuite charger l’image système en TFTP.

 

 

 

Une fois le chargement terminé, vous devriez arriver sur la fenêtre ci-dessous:

 

Dépannage

Si votre client ne charge pas l’image système, contrôlez votre configuration. Vérifiez que les services DHCP, TFTP et SSH soient bien lancés sur le serveur avec les commandes suivantes:

systemctl status isc-dhcp-server
systemctl status ssh
systemctl status tftpd-hpa

 

Nous arrivons à la fin de ce tutoriel. Vous connaissez désormais les bases sur la virtualisation de clients légers et savez comment mettre en place une architecture VDI.

Ne manquez aucun article !

Nous ne spammons pas !

4 commentaires

  1. Merci pour tous ces détails.
    Je monte un réseau expérimental chez moi, pour le fun!
    Ingénieur logiciel, je m’oriente vers l’adm.
    Bonne suite.

  2. Bonjour,
    J’ai installé ltsp sur mon serveur ubuntu 16.04 et quand je connecte un client léger(ordi portable) en boot pxe, j’ai bien écran de login.
    Mais lorsque je rentre les identifiants d’un utilisateur du serveur, il se connecte, il y a un écran noir avec la souris(en chargement) et ensuite il y a un message de restart LDM, que faire ?
    Le login est bien accepté vu que lorsque je rentre un mauvais mdp, il y a un message d’erreur.
    J’ai essayé avec des raspberry pi (avec berryterminal) mais c’est le même problème.
    Merci d’avance.

    Marceau

Répondre à Vincent Krahenbuhl Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.