Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Una de las tecnologas clave incluidas en la mayora de los sistemas operativos GNU/Linux
modernos es el Linux Terminal Server Project (LTSP) el cual permite iniciar varios thin clients
desde un nico servidor. Para entornos de educacin, LTSP disminuye los costes de hardware
al permitir el uso de mquinas ms viejas y con menos potencia como thin clients, as como
reducir la administracin a slo tener que instalar y mantener el software en el servidor. Los
thin clients son generalmente tiles durante 5 o 10 aos, comparados con los 2 a 4 aos de los
fat clients. Cuando una estacin de trabajo falla, simplemente se puede reemplazar sin prdida
de datos o reinstalacin del sistema operativo.
La computacin con thin clients existe desde hace tiempo en el mundo UNIX. Aunque la
implementacin ha evolucionado bastante, el concepto ha permanecido el mismo:
El thin client slo se preocupa de las funciones bsicas como monitor, teclado, ratn y
sonido.
El servidor realiza las tareas pesadas. Todas las aplicaciones se ejecutan en el servidor,
y
simplemente se muestran en el thin client. Ya que los thin clients tienen un nmero limitado
de tareas que realizar, el harware del thin client puede ser pequeo y barato. Los thin clients
en s mismos estn bsicamente libres de mantenimiento. Duran ms tiempo porque no tienen
almacenamiento con partes mviles como discos duros. Si se rompen no se pierden los datos
ya que no se almacena nada en el cliente.
Simplemente se reemplaza el cliente por otro y de vuelta al trabajo. Si le roban su thin client o
se tira a la basura, no hay peligro de que los datos acaben en manos de gente no autorizada.
El servidor ejecuta todas las aplicaciones y contiene todos los datos. Todo el mantenimiento
regular (actualizacin de software, administracin) tiene lugar en el servidor. El nmero de
thin clients que el servidor puede soportar es proporcional a la potencia del servidor. Debido a
que GNU/Linux hace un uso eficiente de los recursos, puede soportar un nmero sorprendente
de thin clients con una mquina que slo se considerara potente al ser usada por un nico
usuario con otros sistemas operativos. Consulte el dimensionamiento del servidor para ms
detalles.
En un entorno de computacin de thin clients, la estabilidad del servidor es importante. Es
importante asegurarse que su servidor est protegido contra fallos de alimentacin, como
tener un UPS instalado, y dependiendo de la disponibilidad requerida, puede que se necesiten
fuentes de alimentacin redundantes. Tambin, los usuarios que tienen los recursos pueden
decidir invertir en varios discos con soporte RAID, y otras opciones que pueden ser necesarias
en un entorno de alta disponibilidad. Sin embargo, no son necesarias en todos los entornos, y
la alta calidad de GNU/Linux significa que no sern necesarios a menos que se trate de un
entorno muy exigente.
El software LTSP permite a PCs cliente con pocos recursos conectarse en una red local a un
servidor para cargar el sistema operativo y ejecutar aplicaciones utilizando sus recursos
(procesador y memoria). LTSP son un conjunto de aplicaciones servidores que proporcionan la
capacidad de ejecutar Linux en computadores de pocas prestaciones de velocidad o de bajo
costo, permitiendo reutilizar equipos que actualmente resultan obsoletos debido a los altos
requisitos que piden los sistemas operativos. LTSP se distribuye bajo licencia GNU GPL de
software libre.
El sistema de funcionamiento del LTSP consiste en repartir por medio de la red el ncleo Linux
que es ejecutado por los clientes y que posteriormente ejecutaran secuencias de scripts tpicos
de una mini distribucin. Los clientes podrn acceder a las aplicaciones por medio de una
consola textual o por un servidor grfico que se comparte utilizando el protocolo XDMCP.
Este sistema te permite configurar un servidor para que de soporte a terminales tontos.
LTSP es un proyecto bajo linux que a grandes rasgos, te permite que clientes ligeros
(ordenadores con carencias, ya sea falta de hdd, poca ram, cpu's antiguas y desfasadas, etc)
arranquen via PXE (arranque por ethernet) como si fueran mquinas autnomas.
Al configurar un servidor LTSP, este da servicio a los clientes ligeros (ofrece recursos).
Cuando un cliente ligero arranca, el servidor le suministra el sistema operativo, en este caso
cualquier distribucin de Linux. Por eso, se puede arrancar un cliente ligero sin que disponga
de hdd.
El sistema de funcionamiento del LTSP consiste en repartir por medio de la red el ncleo linux
que es ejecutado por los clientes y que posteriormente ejecutaran secuencias de scripts tpicos
de una mini distribucin. Los clientes podrn acceder a las aplicaciones por medio de una
consola textual o por un servidor grfico que se comparte utilizando el protocolo XDMCP.
Para poder crear el servidor LTSP necesitamos un equipo con Ubuntu instalado (ser nuestro
servidor), conexin a internet y uno o varios equipos para que hagan de clientes conectado a la
red , para poder funcionar con con pxe.
Seguro
Coste eficiente
Bien soportado
El soporte de LTSP est disponible a travs de la comunidad LTSP. Muchos de los autores del
software que se incluye en LTSP, incluyendo los respectivos desarrolladores de las varias
implementaciones GNU/Linux de LTSP, pueden ser contactados directamente a travs de e-
mail o canales IRC.
Hay muchas formas de soporte disponibles, incluyendo listas de correo, sitios Wiki, canales
IRC, y bug trackers. Tambin existen grupos especiales de soporte para el uso de LTSP y
GNU/Linux.
El canal IRC oficial de soporte se encuentra en freenode.org en #ltsp
La lista de correo oficial de LTSP se encuentra aqu:
https://lists.sourceforge.net/lists/listinfo/ltsp-discuss
De hecho, parte del dinero que se hubiera dedicado a comprar software puede invertirse en
contratar expertos que le ayuden a ensearse, y para ayudarle a mantener su red. LTSP puede
ayudarle a tomar el control sobre su red mientras tambin beneficiar a su economa local. Con
los sistemas basados en LTSP, la eleccin es suya.
Hay soporte de pago de empresas como Canonical (responsable de Ubuntu Linux) y otras
compaas independientes. Buscar en la web o preguntar en #ltsp debera proporcionarle
varias posibilidades de soporte.
1. Cargar el kernel Linux en la memoria del cliente. Esto se puede hacer de varias formas,
usandoPXE, gPXE, Etherboot o yaboot.
Cada uno de los mtodos se explican despus. Pero por ahora, debe tenerse en cuenta que el
mtodo ms comn es PXE, ya que muchas tarjetas de red, y casi cualquier placa base actual
con tarjeta de red integrada lo posee.
2. Cuando el kenel ha sido cargado en la memoria, empezar a ejecutarse.
3. El kernel iniciar cualquier dispositivo de bajo nivel que necesite, tales como ram disks.
Cuando el kernel se descargue, tambin descarga un "initramfs" o "initial ram filesystem", el
cual contiene varias utilidades y scripts de shell que el cliente necesita para arrancar.
5. El script /init empieza montando /proc y /sys, inicia udev para descubrir e inicializar el
hardware, especialmente la tarjeta de red, la cual se necesita para cada aspecto del inicio a
partir de ese momento. Tambin, crea un pequeo ram disk, donde cualquier almacenamiento
local requerido (para el sistema de ficheros /var, por ejemplo) se puede escribir.
7. Un pequeo cliente DHCP llamado ipconfig se ejecuta, para hacer otra peticin al servidor
DHCP. Esta peticin de espacio de usuario separado recibe informacin proporcionada en el
fichero dhcpd.conf, como la puerta de enlace por defecto y otros parmetros importantes.
8. Cuando ipconfig recibe respuesta desde el servidor, la informacin que recibe se usa para
configurar la tarjeta de red Ethernet, y determinar el servidor desde el que montar root.
9. En este punto, el sistema de ficheros root ha sido un ram disk. Ahora, el script /init montar
un nuevo sistema de ficheros root a travs de NBD o NFS. En el caso de NDB, la imagen que
normalmente se carga en /opt/ltsp/images/i386.img. Si root se monta a travs de NFS,
entonces el directorio que se exporta del servidor es normalmente /opt/ltsp/i386. No puede
simplemente montar el nuevo sistema de ficheros como /. Primero debe montarlo en un
directorio por separado. Entonces, realizar un run-init el cual cambiar el actual sistema de
ficheros por uno nuevo. Cuando se complete, el sistema de ficheros se montar en /. En este
punto, todos los directorios que necesitan permisos de escritura para que se produzca el inicio
normalmente, como /tmp o /var, son montados desde el disco ram en este momento.
10. Cuando el montaje de el nuevo sistema de ficheros se completa, hemos terminado con el
script de shell /init y necesitamos invocar el programa /sbin/init real.
11. El programa init empezar estableciendo el entorno thin client, y leyendo los comandos de
arranque en /etc/rcS.d.
12. ste ejecutar el comando ltsp-client-setup el cual configurar varios aspectos del entorno
del thin client, tales como habilitar el swap de NBD, configurar el syslog remoto, cargar
cualquier mdulo de kernel especificado, etc.
15. El fichero lts.conf ser interpretado, y todos los parmetros en el fichero que pertenecen a
este thin client sern establecidos como variables de entorno para ser usados por el script
S20ltsp-clientcore.
16. Si el Sonido est configurado en este punto, el demonio pulseaudio se inicia, para permitir
conexiones remotas de audio para conectar y reproducirse en el thin client.
17. Si el thin client dispone de soporte para dispositivos locales habilitado, el programa ltspfsd
se inicia para permitir que el servidor lea desde tales dispositivos tales como memorias USB, o
cdroms conectados al thin client.
18. En este punto, cualquier sesin de pantalla que se haya definido en su lts.conf se ejecutar.
Las sesiones de pantalla son lo que se quiere lanzar en cualquier pantalla virtual del terminal.
Estasson las pantallas estndar virtuales que todas las distros GNU/Linux disponen. ALT-F1 a
ALT-F10.
Por defecto, un getty estndar basado en caracteres se ejecutar en la pantalla 1 (SCREEN_01
en el fichero lts.conf).
A parte, si nada mas se especifica en el fichero lts.conf, un script de pantalla ldm se ejecuta en
SCREEN_07. El LTSP Display Manager (ldm) es el manejador de inicio de sesin de LTSP.
19. Si SCREEN_07 se establece a un valor de ldm, o startx, entonces el X Window System ser
iniciado, proporcionndole una interfaz de usuario grfica. Por defecto, el servidor Xorg
autocomprobar la tarjeta, crear un fichero /etc/X11/xorg.conf por defecto en el ram-disk en
el terminal, e iniciar xorg con esa configuracin personalizada.
20. El servidor X iniciar un tunel ssh encriptado hacia el servidor, en el caso de ldm o una
peticin XDMCP al servidor LTSP, en el caso de startx. De cualquier forma, una pantalla de
registro aparecer en el terminal.
21. En este punto, el usuario puede identificarse. Se establecer una sesin con el servidor.
Esto confunde a mucha gente al principio. Estn sentados en frente de un thin client pero
estn ejecutando una sesin en el servidor. Todos los comandos que ejecutan se ejecutarn en
el servidor, pero la salida ser mostrada en el thin client.
El cliente se comunica en el arranque con el servidor. Le solicita los parmetros de red. El
servidor se los proporciona, porque tiene instalado un servidor DHCP. El cliente, tras configurar
la red accede al servidor y baja (mediante TFTP) una imagen del sistema operativo y la carga.
Posteriormente la ejecuta y solicita el login de usuario.
"TFTP son las siglas de Trivial file transfer Protocol (Protocolo de transferencia de archivos
trivial). Es un protocolo de transferencia muy simple semejante a una versin bsica de FTP.
TFTP a menudo se utiliza para transferir pequeos archivos entre ordenadores en una red,
como cuando un terminal X Window o cualquier otro cliente ligero arranca desde un servidor de
red." (Wikipedia)
Instalacin y configuracin
El servidor debe disponer de dos interfaces de red. Una de ellas se conecta a Internet,
y la otra se conecta a una red local donde estarn nicamente los clientes LTSP
Los clientes simplemente deben configurar su arranque mediante red. No requieren ninguna
instalacin adicional
Requerimientos de hardware
Una persona que configura un entorno LTSP de thin clients por primera vez, normalmente
pregunta dos cosas:
Puede ser que el hardware que posee actualmente sea ms que suficiente para terminales.
Una de las grandes ventajas de un servidor LTSP es que puede configurar una red de alta
calidad para ser usada por estudiantes utilizando los ordenadores disponibles. En cuanto a los
servidores, normalmente, es muy fcil convertir cualquier ordenador personal de alto
rendimiento en un servidor de terminales capaz de manejar varios clientes. Presentaremos
varias directrices que deberan ayudar a sacar el
mximo provecho de los recursos.
Servidor
Thin client
Red
Mtodo de arranque
El servidor
Una red LTSP de thin clients es bastante escalable; una mquina moderadamente potente
puede servir a varios clientes, y si necesita aadir mas clientes puede expandir las capacidades
del servidor existente o simplemente aadir ms servidores.
El dimensionado de los servidores en una red LTSP es ms arte que ciencia. Pregunte a
cualquier administrador de LTSP por el tamao del servidor que se necesita, y lo ms probable
es que leconteste "depende". El tamao de servidor necesario depende en gran medida de lo
que planea hacer con la red de thin clients. Los requerimientos del servidor necesarios para
una red en que slo se usa un poco de navegacin en Internet, sin java o flash, ser muy
diferente de una en la que se quiere utilizar grficos, juegos interactivos, flash. Aqu se
encuentran directrices comunes que deberan ajustarse a la mayora de casos normales.
Memoria
Por tanto se estiman unos 4 GB de memoria para el servidor. Asegurarse de que dispone de
suficiente memoria es la cosa ms importante que puede hacer para ayudar a mejorar el
rendimiento del servidor LTSP. Si no dispone de memoria suficiente en el servidor, se
encontrar con que tendr que usar el disco duro como una memoria virtual. Los discos duros
son mucho ms lentos que la memoria, por lo que notar que las cosas funcionan ms
despacio. Si su intencin es hacer uso intensivo de grficos, querr incluso aadir ms , quizs
el doble de la estimacin previa.
Ventajas
Para montar un servidor de terminales tendremos que instalar los siguientes paquetes,
como mnimo:
ltsp-server
Un servidor tftp, como por ejemplo: atftp.
Un servidor dhcp: como dhcp3-server o dnsmasq. En nuestros centros usamos
dhcp3-server-ldap porque usamos ldap como backend para almacenar los
datos.
Si usamos nfs para servir la imagen a nuestros terminales, instalaremos adems:
nfs-kernel-server
Y si nuestros terminales reciben la imagen via nbd, instalaremos el paquete:
nbd-server
Se necesitan algunos paquetes ms, pero como son dependencias, al instalar los
paquetes que hemos dicho, se instalarn todos los dems que son necesarios.
Otro paquete necesario, que hay mencionar, es openssh-server, dado que el trfico
entre el servidor y los clientes viaja encriptado. Pero bueno, es un paquete que se suele
tener instalado.
En cualquier caso, si no queremos instalar uno a uno los paquetes mencionados, siempre
podemos instalar el paquete ltsp-server-standalone y se instalar todo lo necesario para
# exportfs -ra
El siguiente paso, ser crear el S.O. para los clientes. Como mis clientes son de
arquitectura i386, ejecutamos la herramienta ltsp-build-client, que crear el entorno
necesario para los clientes en /opt/ltsp/i386:
# ltsp-build-client --arch i386
Tendremos que tener un buen ancho de banda, porque se bajar en una buena parte de
paquetes para crear el entorno chroot. Si no disponemos de un buen ancho de banda,
siempre podemos utilizar un mirror local.
Si quisiramos actualizar los paquetes del entorno chroot para los clientes, primero
hacemos el chroot:
# chroot /opt/ltsp/i386
# apt-get update
# apt-get upgrade
# umount /proc
# ltsp-update-kernels
Todos nuestros clientes usarn el ltimo kernel la prxima vez que se reinicien.
Por ltimo, si estamos usando nbd, ejecutaremos ltsp-update-image para que se cree
una versin actualizada de la imagen que se servir a los terminales:
# ltsp-update-image --arch i386
La primera vez que montemos el servidor de terminales, ejecutaremos:
# ltsp-update-sshkeys
Si usamos nbd para servir el sistema a los terminales, la desventaja es que es necesario
hacer una imagen comprimida (ltsp-update-image).
La ventaja est en que a mayor nmero de usuarios el sistema no se hace ms lento, si
no que se mantiene igual.
# chroot /opt/ltsp/i386
# apt-get update
E instalamos los paquetes que nos instalan los mdulos squashfs y aufs:
Ojo. En el ejemplo tenemos instalado el kernel 2.6.26-1-686, por lo que instalamos los
paquetes squashfs y aufs para ese mdulo.
Una vez instalados, actualizamos el initrd:
# update-initramfs
# umount /proc
Cuando quiero usar nbd comento la lnea nfs y cuando quiero usar nfs comento la lnea
nbd
Una vez modificados los dos ficheros, como el primero afecta al kernel, ejecutamos un
ltsp-update-kernels:
# ltsp-update-kernels