LTSP…la solution légère pour les réseaux lourds

 

ThinClient

Préambule

Dans notre société d’aujourd’hui on fait honneur à l’avance technologique des ordinateurs récents, mais aussi à l’équipement de nos écoles. Dans pratiquement toutes celles-ci, chaque salle de classe est équipée d’un ordinateur et il y en a même avec un ordinateur par élève pour que celui-ci puisse bien travailler. Malheureusement l’éducation nationale à signé un marché avec le dealer leader le plus riche du monde. Puis ce parc informatique doit être renouvelé en permanence pour pouvoir faire fonctionner les logi(racketi)ciels.

Maintenant, si je vous annonce que vous avez à acheter un ordinateur puissant tous les 3-4 ans, alors que presque n’importe quel vieux coucou peut vous encore servir, vous allez râler.Il vaut mieux être lucide, on devrait plus tôt apprendre a utiliser au mieux le matériel disponible.

Si nous mettons de coté l’aspect sectaire du logiciel, il y a aussi un problème budgétaire et environnemental, car tous les 5 ans actuellement les ordinateurs sont remplacés dans notre département par d’autres plus puissants et toutes ces machines on un coût qui pèse de plus en plus dans le budget de celui-ci. Puis quand je vois aussi l’impact environnemental que va produire cette frénésie du “bigger,stronger,faster”, je suis un peu révolté par toutes ces ressources gâchées. Dans le monde du libre, mais aussi dans le monde propriétaire, il existe depuis des lustres la solution des clients légers. Hein? Non il ne s’agit pas d’un ultime régime pour vous ou votre ordinateur mais tout simplement une solution économique et fiable.

 

Un client léger est un terminal qui reçoit les informations par un serveur, donc rien n’est stocké sur le pc du client.

ltsp

Comme il n’y a rien de stocké sur le terminal du client, la puissance de celui-ci peut être faible. Tout est sur le serveur, le système d’exploitation, les logiciels mais aussi les dossiers personnels.

Via ce système on va réduire le temps de maintenance, donc aussi le budget. Un client léger coûte entre 80€ à 200 €, donc largement inférieur du prix d’un PC.

Voici quelques modèles de clients légers :

 

Itium 2910

KAC Pro

Raspberry Pi

Itium-2910 KAC Pro

raspi

190 €

103 €

70 €

 

Mais avant de changer tout un parc avec des clients légers, on peut, bien sur aussi continuer d’utiliser les Pc’s déjà sur place ou les remplacer quand il sont vraiment irrécupérables par des clients légers qui sont en plus moins énergiovores par rapport a un Pc classique. Pour le serveur il ne faut pas trop faire d’économies, comme il doit tout gérer il est important de l’équiper avec beaucoup de Ram et un disque dur rapide. Enfin il faut un vrai serveur et pas l’ordi de papy qu’on transforme en serveur.

Mais rien vous empêche de faire un serveur LTSP avec un portable pour animer une séance de formation de 6-10 personnes car quand je vous parle d’avoir d’un vrai serveur, c’est pour toute une école avec 150 pc’s. Personnellement j’utilise LTSP à la maison. Le PC du salon est le serveur LTSP et dans la chambre des mes enfants, j’ai mis des vieux portables ou des Raspberry’s comme client ce qui m’a permis d’offrir à chacun son ordinateur et de m’économiser en temps, maintenance et énergie, car il me faut installer une seule fois un logiciel pour qu’il soit disponible pour tout le monde.

Bon assez expliqué on va passer aux choses sérieuses…

L’installation du serveur ltsp

Dans ce tuto je vais vous expliquer comment installer un serveur LTSP sur une distribution gnu/linux basée sur debian. Avant de commencer a installer les différentes paquets dans notre distro,  assurez-vous d’avoir le matériel nécessaire.

Le matériel:

Il vous faut au minimum:
  • 1 ordinateur/portable avec min 1gb de ram
  • 1 ordinateur/portable/client léger bootable en réseau
  • 1 routeur
  • 1 switch

Dans les lignes qui vont suivre on va créer notre propre réseau avec un adressage d’ip spécifique pour être sur que les clients vont trouver toute suite notre serveur, a vous, après de l’adapter à votre réseau. Pour ce tuto j’utilise deux ordinateurs portables dell 630, un routeur TP-Link TL-WR841N, puis un switch hp procurve 12 ports.
Le but avec cette configuration est simple. Grâce à celle-ci, je peux déplacer mon réseau facilement sans le re-configurer à chaque fois car autrement il faut faire 2-3 manips à chaque déplacement. La première chose à faire est de brancher tout le bazar ensemble et de vérifier si tout marche.

On branche comme sur l’image.

IMG_20131002_113050

Câble bleu = arrivé d’internet (wan)

Câble vert = liaison vers le switch (lan)

Câbles jaunes = serveur et clients

Donc on allume les deux postes pour vérifier si internet fonctionne. Une liaison internet n’est pas nécessaire pour le ltsp, sauf pour l’installation des paquets, mais peut-être plus tard vos clients voudront aller sur internet donc autant anticiper.
C’est bon vous avez pu consulter vite fait votre compte facebook?  Cool ;) On va désactiver le serveur dhcp dans le routeur et saisir l’ip par defaut 192.18.1.1 dans le routeur

Configuration du routeur:

dhcp-tp-link

L’installation du serveur:

Passons à l’installation du serveur lui même, c’est super simple en fait… Commençons par ouvrir un terminal…Oui oui je sais le truc en noir et blanc, le truc de geek barbu.
Pour lancer le terminal appuyer sur la combinaison des touches ctrl+alt+t.Puis coller dans le terminal cette commande, puis saisissez votre mot de passe:

sudo apt-get install ltsp-server-standalone openssh-server

install-ltsp

 

Une fois l’installation terminée on va créer un client qui va permettre de se lancer plus tard sur les machines.
Hop…on copie dans le terminal..puis on laisse dérouler.

sudo ltsp-build-client

ltsp-build-client

 Configuration du serveur:

Maintenant on va configurer le serveur dhcp de notre serveur ltsp.
Comme c’est lui qui va gérer nos clients, il faut l’adapter a nos besoins.

Donc on va ouvrir encore un terminal ctrl+alt+t, puis on colle:

sudo gedit /etc/ltsp/dhcpd.conf

On efface tout dedans, puis on colle.

dhcpd.conf
# /etc/ltsp/dhcpd.conf

# Default LTSP dhcpd.conf config file.

#

authoritative;

 

subnet 192.168.1.0 netmask 255.255.255.0 {

   range 192.168.1.100 192.168.1.200;

# nom de domaine s’il y en a un

   option domain-name « exemple.com »;

# IP du routeur

   option domain-name-servers 192.168.1.1;

   option broadcast-address 192.168.1.255;

# si le serveur ne résoud pas le nom de domaine il tape sur un routeur… C’est le routeur

   option routers 192.168.1.1;

#    next-server 192.168.0.1;

#    get-lease-hostnames true;

   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 »;

   }

}

Enregistrer le fichier, puis on le ferme

Maintenant on va configurer notre connexion internet.
Dans le terminal on lance :

sudo gedit /etc/network/interfaces

modification du fichier interfaces

# /etc/network/interfaces

# The loopback network interface

auto lo

iface lo inet loopback

auto eth0

iface eth0 inet static

address 192.168.1.42

netmask 255.255.255.0

network 192.168.1.0

broadcast 192.168.1.255

gateway 192.168.1.1

dns-nameservers 192.168.1.1

Bien sur il faut l’adapter si votre config réseau ne correspond pas

 

Le dernier fichier à modifier est le fichier lts.conf dans /var/lib/tftpboot/ltsp/i386/lts.conf
Dans un terminal vous collez:

sudo gedit /var/lib/tftpboot/ltsp/i386/lts.conf

Remplacer le texte en dessous:

lts.conf

#/var/lib/tftpboot/ltsp/i386/lts.conf

[default]

LOCAL_APPS=True

LOCAL_APPS_MENU=True

LOCAL_APPS_MENU_ITEMS=scribus,x11vnc,ocsinventory-agent,conky,teamviewer

LDM_SESSION= »gnome-session –session=gnome-classic »

LDM_LIMIT_ONE_SESSION=True

SOUND=True

XKBLAYOUT=fr

X_NUMLOCK=True

X_COLOR_DEPTH=24

LOCALDEV=true

Comme vous pouvez voir, j’ai mis gnome-classic,car en LTSP Cinnamon est encore mal supporté. Enfin pour l’instant…

Pour ajouter d’autres applications locales , par exemple vlc ou mplayer, il faudra alors reprendre la démarche pour installer les paquets nécessaire et modifier la ligne comme cela LOCAL_APPS_MENU_ITEMS=firefox,vlc,mplayer

Test du bon fonctionnement du serveur:

Bon on va redémarrer notre poste, pour savoir si tout fonctionne toujours bien, et on vérifie si internet marche. Si tout fonctionne, vous pouvez à présent tester le ltsp pour savoir s’il se propage bien sur un autre poste.
Pour démarrer un poste en réseau, il faut souvent appuyer sur une touche ou de configurer le BIOS. Sur le NEC c’est la touche F12

 

pxe-boot

Un fois le client bien lancé, il attend que vous saisissez le compte et le mot de passe

ThinClient

Voila il nous reste que à créer des comptes et votre LTSP est prêt. Car le LTSP n’est rien d’autre que d’une déportation du serveur vers un client. Donc tout se configure sur le serveur et tout est disponible sur le client. Cool non? Il faut simplement configurer le serveur pour chaque client, puis ensuite le client peut se servir. Ce qui veut dire aussi que si un client à une défaillance technique, il faut juste remplacer et rebrancher le nouveau matériel. Fini la maintenance

Configuration des clients:

Pour ajouter un compte il faut aller dans Administration->Comptes utilisateurs

comptes

 

Quand vous ajoutez un compte, je vous conseille de le mettre an “Administrateur” au début, puis une fois tout configuré de le passer en compte normal, et puis quand vous n’en n’avez plus besoin de le supprimer.
Exemple quand vous animez un atelier, vous créez le nombres des comptes avant, vous ajoutez vos document ou liens dans chaque compte, puis a la fin de vos cours vous pouvez supprimer les comptes. Donc pas de maintenance sur chaque poste à faire.
Bon tout semble ok, il ne vous reste plus qu’à mettre à jour l’image du client via la commande dans un terminal

sudo ltsp-update-image

Maintenant vous pouvez allumer autant ordinateurs que vous avez de comptes et ceux-ci pourront se connecteront au serveur.

7 Commentaires

  • Dufour Guy
    7 février 2014 - 14 h 13 min | Permalien

    bonjour, nouveau sur gebull, je m’adresse à vous pour avoir des infos suivantes si possible;
    je souhaite faire communiquer 2 ordi. c’est à dire avoir accès aux documents stocké sur l’un pour pouvoir les consulter et travailler avec l’autre, et vice- versa. mise en réseau ? avec quel logiciel ? j’ai essayé d’installer samba, mais pour moi c’est une usine à gaz, abandonné, LTSP ??
    ma config:
    1° ordi – portable samsung R730 17″ RAM 4G windows 7 (qui ne sert plus) avec ubuntu 12.04 LTS en parralèle,connexion internet filaire,
    2° ordi – portable acer AO 725 12″ RAM 2G windows 7 ( qui sert à rien) avec ubuntu 13.10 connexion wifi

    pour info j’ai eu Gargamel au tél. hier soir qui ma préconiser d’en débattre sur le forum.
    merci pour les infos, heu.., j’oubliais, je suis débutant disons un peu bricoleur….

    cordialement

  • Mouchlach
    26 août 2014 - 18 h 44 min | Permalien

    Bonjour,
    Au travail nous réalisons un réseau LTSP pour un projet dans un entreprise social, ça à l’aire de fonctionner pas mal mais nous avons des problèmes lors de la communication.

    Nous avons installer edubuntu sur un serveur et installons 3 postes clients sur le serveur et tous fonctionne à peu près car nous avons des problèmes pour configurer comme nous le souhaitons les clients…Nous testons et voulons un service précis en modifications/problèmes.

    Je me posais la question de savoir si nous devons installer une version standalone et suivre le tuto ou bien si edubuntu est configuré pour que tout fonctionne sans faire de changement, si changements est possible…

    Il me semble que votre configuration est la plus simple, me trompe-je ?

    En tout cas, très bien fait…

    Merci de votre réponse…

    Nicolas.M

  • Dirk
    26 août 2014 - 22 h 30 min | Permalien

    Selon moi il est préférable d’installer Ubuntu-server, puis ensuite d’ajouter les paquets nécessaire. Car je constater des problèmes avec edubuntu.
    Les plus important est de bien vérifier le réseau et la vitesse du disque/processeur du serveur. Puis d’ajouter les applis sur l’image du client si possible.

    Cordialement
    Dirk

  • Guillaume
    12 novembre 2014 - 12 h 08 min | Permalien

    Merci pour ce tutoriel de qualité et rare dans ce domaine.
    Concernant les localapps, comme vlc par exemple le programme s’exécute bien en local mais je n’arrive pas à lire des vidéos partagées sur le serveur ou le bureau du client.
    Avez-vous une solution ?
    Merci d’avance.
    Cordialement.

    • 12 novembre 2014 - 14 h 23 min | Permalien

      J’utilise un serveur ltsp à la maison. Je stock mes vidéos « familial » sur un NAS. Donc je monte un lecteur (video) sur le serveur dans le home de chaque PC/client (Raspberry). Je ne pas de souci pour lire les vidéos. Avez vous monter le lecteur ou essayer de le lire dans un navigateur ?

  • JMT
    19 novembre 2014 - 17 h 09 min | Permalien

    Bonjour Dirk,
    Vous utilisez des clients Raspberry. Utilisez-vous Berryboot pour booter sur la RJ45 ou avez-vous une autre solution.
    En effet, en ce qui me concerne, c’est la solution que j’utilise mais je n’arrive pas à avoir de son, ni en HDMI, ni par le Jack…
    Je vous remercie pour toute info,
    Cordialement,
    JMT

    • 16 décembre 2014 - 14 h 04 min | Permalien

      Je ne pas de souci avec le son, mais sans doute parc-que je mis vlc,firefox,mplayer en appli locale.

      Je travaille actuellement sur une solution equivalent,mais plus facile à mettre en place. Le DRBL de clonezilla, qui propose à la fois une soluce de sauvegarde réseau et un serveur pour client leger.
      Une fois le serveur en place, il faut juste créer des comptes sur le serveur puis c’est fini.

      Voila le bidule:
      http://lecturesnippets.com/clonezilla-se-on-ubuntu-12-04/

  • Laisser un commentaire

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

    Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>