FLASH INFORMATIQUE FI

FI-spécial été 2008 - Pérenne-IT


Agepolix ou comment économiser de l’énergie, du temps et de l’effort




Laurent FASNACHT


On parle actuellement beaucoup de développement durable, et en particulier d’économie d’énergie.
Si l’informatique a fait d’énormes progrès, un PC de bureau consomme toujours environ 100W (sans écran). Pour économiser, il est clair que nous pouvons choisir des ordinateurs consommant moins et éteindre les machines lorsqu’elles ne sont pas utilisées.
Si ces solutions sont simples théoriquement parlant, il s’avère qu’elles ne satisfont pas toujours les utilisateurs. En effet, beaucoup veulent avoir la machine directement prête lorsqu’ils arrivent, et ne souhaitent pas devoir patienter le temps du démarrage.
Une solution plus innovante consiste à mettre en place un système de clients légers. Le concept est simple : les ordinateurs sont remplacés par des petites boîtes, économes en énergie, et reliées par le réseau à un serveur, qui héberge les applications et les données de tous les utilisateurs. Les clients légers ne sont responsables que des interactions avec l’utilisateur, tous les calculs étant effectués sur le serveur.
Nous avons monté un tel système pour l’Agépoly (Association Générale des Étudiants de l’EPFL), car il fallait 10 postes de travail supplémentaires pour les commissions et nous estimions qu’il était important de proposer un système innovant. S’il existe plusieurs solutions commerciales (notamment proposée par Sun ou NoMachine), nous avons décidé de mettre en place une solution basée uniquement sur des logiciels non commerciaux et du matériel facilement disponible.

Matériel



Concernant le serveur, nous avons du matériel tout à fait standard (Dell PowerEdge). De fait, il est particulièrement important d’avoir une machine correctement dimensionnée en mémoire vive, car elle aura beaucoup d’applications à exécuter simultanément. Il est probablement raisonnable de compter au minimum 200Mo de RAM par client léger. Dans notre cas toutefois, nous avons 4Go de RAM sur le serveur, ceci nous laisse une certaine marge.
Pour les clients légers, nous avons opté pour des ALIX 3c3, fabriqués par PC Engines. Ils présentent l’avantage d’être de véritables ordinateurs tout en ne consommant que 5W. De plus, ils ne coûtent pas cher (environ 150CHF). Les ALIX sont très performants également comme machine indépendante en leur ajoutant une carte Compact Flash comme disque dur.

Logiciel

Nous avons choisi d’utiliser LTSP pour les clients légers. L’idée de base du projet consistait à préparer une image de démarrage des clients légers à partir de la distribution installée sur le serveur.
LTSP est intégrée dans plusieurs distributions et le choix s’est porté sur Ubuntu car les utilisateurs y sont habitués.
L’installation est vraiment facile. Il suffit de choisir à l’écran de démarrage que l’on veut installer un serveur LTSP, et de suivre les instructions (il n’y a presque pas de différence avec une installation standard).
Ensuite, il faut configurer le DHCP. Le fichier se trouve dans un emplacement non standard (/etc/ltsp/dhcpd.conf). Sur le réseau de l’EPFL, il est fortement conseillé de spécifier explicitement les machines auxquelles le serveur DHCP répondra, afin d’éviter de polluer le réseau. Voici un exemple minimaliste de fichier dhcpd.conf, qui ne donne que les paramètres pour la machine yyy dans le subnet xxx :

max-lease-time 240;
default-lease-time 180;

subnet 128.178.xxx.0 netmask 255.255.255.0 {
option domain-name "epfl.ch";
option domain-name-servers 128.178.15.7,128.178.15.8;
option routers 128.178.xxx.1;
# LTSP
option root-path "/opt/ltsp/i386";
use-host-decl-names on;
if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
 filename "/ltsp/i386/pxelinux.0";
} else {
 filename "/ltsp/i386/nbi.img";
}
# Liste des hosts
host yyy.epfl.ch {
 hardware ethernet 00:11:22:33:44:55;
 fixed-address yyy.epfl.ch;
}
deny unknown-clients;

}

Il faudra ensuite construire l’image. En résumé, cela se limite aux commandes suivantes :

ltsp-build-client --arch i386
ltsp-update-image --arch i386

D’autres commandes utiles sont ltsp-update-kernels pour mettre à jour le noyau pour les clients légers et ltsp-update-sshkeys pour mettre à jour les clés SSH, indispensable si l’adresse IP du serveur a été modifiée ou si les clés du serveur ont changé. On peut également paramétrer précisément comment doivent se comporter les clients dans le fichier /var/lib/tftpboot/ltsp/i386/lts.conf. Je recommande la configuration suivante : LDM_DIRECTX fait que la connexion n’est pas chiffrée une fois que le login est établi. Cela rend le système un peu vulnérable au sniffing, mais c’est nettement plus rapide et efficace.

[default]
LDM_DIRECTX=True
SCREEN_07=ldm

Voilà... après cela vous devriez avoir un système fonctionnel. Il reste bien sûr plein de petites modifications à faire afin d’améliorer le système, mais l’essentiel est fait.

Utilisation des ressources

N’ayant pas encore fait le déploiement des dix clients légers, il est difficile de savoir la charge exacte que cela représentera au niveau du serveur et du réseau.
Nous avons toutefois installé l’un d’eux afin de pouvoir le tester en circonstances réelles. Après un peu plus d’un mois d’utilisation par les membres de la GNU Generation et quelques invités, il s’avère que la charge au niveau serveur est négligeable, presque indétectable.
Par contre, le réseau est assez fortement sollicité, environ 20Mbps pour un utilisateur d’Internet, X11 ne faisant pas de compression. La bande passante varie assez fortement selon le type d’utilisation ; pour la bureautique et le dessin vectoriel, elle est de l’ordre de 1 à 10Mbps. À l’autre extrême, regarder une vidéo sur YouTube consomme dans les 70Mbps. Il faudra donc veiller à assurer une connexion satisfaisante du serveur.

Avantages et inconvénients

L’avantage direct de cette infrastructure par rapport à dix ordinateurs normaux est clairement le coût, non seulement d’acquisition, mais également de gestion. En effet il n’y a qu’une seule machine à gérer, le serveur. On économise également beaucoup en terme d’électricité consommée.
D’un point de vue plus pratique, les ALIX, n’ayant aucune pièce mobile, sont totalement silencieux et il semblerait que nos utilisateurs en soient très contents. De plus, LTSP fonctionne bien. Il permet notamment d’accéder à une clé USB branchée sur le client léger et le son fonctionne correctement.
Concernant les désavantages et difficultés que nous avons rencontrés... nous avons d’abord eu des problèmes pour le démarrage depuis le réseau à cause d’un serveur DHCP un peu trop généreux qui donnait ses paramètres aux ALIX et empêchait ainsi leur démarrage.
Du point de vue utilisation, on notera que les ALIX ne sont pas efficaces pour la 3D, car ils n’ont pas d’accélération graphique. De plus, certaines applications particulièrement lourdes peuvent être lentes, en particulier si la bande passante est limitée.
En résumé, ce système convient parfaitement pour la bureautique.

Autres sources intéressantes

Le guide d’installation rapide de LTSP sur Ubuntu résume les étapes pour l’installation. Il y a également le Linux Magazine France de février 2008 qui a un article sur le sujet.
Jeter un coup d’œil au site officiel de LTSP n’est pas sans intérêt non plus.

N’hésitez pas non plus à me contacter pour tous renseignements et conseils sur le sujet ou si vous souhaitez tester le système.



Cherchez ...

- dans tous les Flash informatique
(entre 1986 et 2001: seulement sur les titres et auteurs)
- par mot-clé

Avertissement

Cette page est un article d'une publication de l'EPFL.
Le contenu et certains liens ne sont peut-être plus d'actualité.

Responsabilité

Les articles n'engagent que leurs auteurs, sauf ceux qui concernent de façon évidente des prestations officielles (sous la responsabilité du DIT ou d'autres entités). Toute reproduction, même partielle, n'est autorisée qu'avec l'accord de la rédaction et des auteurs.


Archives sur clé USB

Le Flash informatique ne paraîtra plus. Le dernier numéro est daté de décembre 2013.

Taguage des articles

Depuis 2010, pour aider le lecteur, les articles sont taggués:
  •   tout public
    que vous soyiez utilisateur occasionnel du PC familial, ou bien simplement propriétaire d'un iPhone, lisez l'article marqué tout public, vous y apprendrez plein de choses qui vous permettront de mieux appréhender ces technologies qui envahissent votre quotidien
  •   public averti
    l'article parle de concepts techniques, mais à la portée de toute personne intéressée par les dessous des nouvelles technologies
  •   expert
    le sujet abordé n'intéresse que peu de lecteurs, mais ceux-là seront ravis d'approfondir un thème, d'en savoir plus sur un nouveau langage.