como poner a funcionar LTSP

Imagen de albert_arbiol
6 puntos

Hola a tod@s,

llevo algún tiempo dándole al Linux tanto como usuario como administrador, estoy aprendiendo, y me he fijado mucho en este tema: LTSP.

En el tuto que os cuelgo (más abajo), no hay nada nuevo, todo ya está explicado, pero espero que a algunos les sirva, ya que han dado con él.

Soy novato y estoy investigando, agradecería vuestra colaboración como usuarios avanzados, administradores o curiosos, dando vuestra opinión y crítica constructiva. Hay muchas cosas para ampliar, y muchos temas que tratar, este tuto solo es una introducción al mundo de los servidores, redes y Linux.

Os animo a mirároslo, y a probarlo. LTSP es ideal para escuelas, pequeñas empresas, oficinas y/o locutorios.
Me gustaria que vosotr@s añadierais info al tuto, y sobretodo, posibles aplicaciones de este servicio. Yo , de momento, encuentro que es la forma más económica de mantener nuestra red de clientes y servidores, ya que no hace falta renovar los pc's, sino optimizarlos.

Bueno, aquí os dejo mi tuto, sacado de todo lo que he leído en foros de Ubuntu-es, y muchos más que no tengo documentados, todo sacado del St. Google.

Y en especial a la gente de Linkat, distribución de OpenSuse que la Generalitat de Catalunya ha financiado, y donde trabajan miles de informáticos y usuarios para que las escuelas de Cataluña dispongan de este servicio.
Fueron quienes me mostraron este tema.


Curso introducción LTSP (Linux Terminal Server Project)

Voy a introduciros en el mundo de Linux y LTSP de una forma resumida y espero que sencilla.

Podeis buscar mucha más información en la wikipedia y en la red en general, sobre los términos usados. Iré al grano y os explicaré, a mi manera, las 4 cosas básicas que se necesitan.

LTSP

Este sistema te permite configurar un servidor para que de soporte a terminales “tontos”. Me explico:

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 máquinas autónomas.
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 distribución de Linux. Por eso, se puede arrancar un cliente ligero sin que disponga de hdd.
El proceso no lo voy a detallar, en www.ltsp.org teneis toda la info. Pero deciros que básicamente funciona así:

-el servidor LTSP asigna una ip al cliente via DHCP
-realizada la conexión, via TFTP, el servidor envia al cliente la imagen del sistema.
-cuando el cliente ha cargado la imagen, te pide loguearse, y listo.

LINUX

Ya todos, a estas alturas , lo conocemos y hemos trabajado con él.
Solo especificaré que hay dos tipos de distribuciones:

1-Las que trabajan con paquetes debian (.deb) P. ej. Ubuntu
2-Las que trabajan con paquetes RPM (.rpm) P. ej. Red hat

Esto es importante por que cada forma tiene unos comandos específicos.

Al lio, yo os explicaré como hacerlo bajo paquetes debian, en concreto una distribución bajo Ubuntu llamada Pinguy OS, que para mi es la más vistosa.

Configuración del servidor

1ero. Instalación programario:

Paquetes que se necesitan:

ltsp-server-standalone (conjunto de programas para crear el servidor LTSP: dhcp server, tftp server, etc)

NOTA: este paquete es el ideal y está para distribuciones RPM y Debian, aunque hay otras formas y otros paquetes que tambien realizan dicha funcion (P. ej. LTSP utils), lo que necesitamos es que nuestro servidor disponga de servicio DHCP, TFTP, entre otros.

Para instalarlo:

desktop:/$ sudo apt-get install ltsp-server-standalone

Notas: Poniendo esto, si tienes conexión a internet y bien configurado el soucers.list , se te instalará completamente. En caso que no tengas internet, la unica forma es bajarse el paquete con todas sus dependencias e instalarlas.

Una vez instalado nos toca modificar 3 archivos de configuración.

1er archivo: dhcp3-server

Ruta: /etc/default/
Lo editamos: sudo gedit dhcp3-server

Nos mostrará esto:

# Defaults for dhcp initscript

# sourced by /etc/init.d/dhcp

# installed at /etc/default/dhcp3-server by the maintainer scripts

#

# This is a POSIX shell fragment

#

# On what interfaces should the DHCP server (dhcpd) serve DHCP requests?

# Separate multiple interfaces with spaces, e.g. "eth0 eth1".

INTERFACES=""

Debemois rellenar el campo INTERFACES, y poner la interface que usaremos para dar el servicio LTSP. Si será por wlan o eth. P.ej.

INTERFACES="eth0" ------------>En este caso por la ethernnet.

2do archivo: dhcpd.conf

Ruta: /etc/ltsp
Lo editamos: $ sudo gedit dhcpd.conf

Nos mostrará esto :

#
# Default LTSP dhcpd.conf config file.
#

authoritative;

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.20 192.168.1.50;
option domain-name "modsplay";
option domain-name-servers 192.168.1.1;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
next-server 192.168.1.11;
# 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";
}
}

Este es un ejemplo, concretamente el que tengo configurado en mi servidor LTSP.
Lo que hay que modificar:

subnet (poner el rango de subnet que utilizamos)
range (poner el rango que de ip's que asignará el dhcp)
option domain-name (nuestro dominio)
option domain-name-servers (la ip del servidor DNS, puede ser el mismo router)
option routers (la ip del router de nuestra red)

Todo lo demás viene configurado ya por defecto:

option root-path "/opt/ltsp/i386"; (es la ruta donde se instalarán los archivos que cargarán los clientes, via tftp)
filename "/ltsp/i386/pxelinux.0"; (ruta del archivo pxelinux.0)
filename "/ltsp/i386/nbi.img"; (ruta donde se encuentra la imagen de nuestro linux para el cliente)

NOTA: Realmente la ruta viene indicada por el archivo tftpd-hpa.conf, para el pxelinux y el nbi.img. Veámoslo...

3er archivo: tftpd-hpa.conf

Ruta: /etc/default
Lo editamos: sudo gedit tftpd-hpa
Nos mostrará:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/var/lib/tftpboot"

TFTP_ADDRESS="0.0.0.0:69"

TFTP_OPTIONS="—secure"

Fijaros en TFTP_DIRECTORY (nos muestra la ruta donde nuestro servidor creará la imagen nbi y creará todos los archivos necesarios, para que los clientes carguen el sistema. Dentro de tftpboot, encontraremos una carpeta ltsp que contendrá otra carpeta i386, con todos los archivos. Fijaros que en el dhcpd.conf, no pone la ruta completa, que el tftpd-hpa ya le indica donde está la carpeta tftpboot.)

TFTP_ADDRESS="0.0.0.0:69"
(aquí ponemos la ip de nuestro servidor LTSP)

Lo demás por defecto.

Ya tenemos el servidor configurado, pero aún nos quedan unos pocos pasos, seguimos...

Siguiente paso: Crear imagen para los clientes:

Ejecutamos: sudo ltsp-build-client

Este comando nos creará los archivos necesarios para que los clientes puedan arrancar el sistema.
Tarda algún tiempo, según procesador, tener paciencia.

Por ultimo, ultimos updates...

Lo único que nos queda es actualizar 3 archivos, los cuales se tiene que actualizar cada vez que hacemos cambios de administración en el servidor (como crear/eliminar usuarios, etc)

ltsp-update-kernels
ltsp-update-sshkeys
ltsp-update-image

Bueno, hasta aqui la configuración del servidor LTSP.

Nota: Una vez todo configurado hay que reiniciar el servicio DHCP

comando: sudo /etc/init.d/dhcp3-server restart

Y si todo esta ok, nos dará resultado de OK.

Configuración de los clientes:

El cliente puede ser cualquier tipo de ordenador, ya os digo que lo que necesita es: placa base con procesador, ram, gráfica, ethernet y/o sónido. Podrás arrancar ordenadores aunque no dispongan de hdd.

Para acrrancar el cliente , este tiene que tener modo de arranque por ethernet PXE. Si algún cliente no lo dispone, podeis crear una imagen PXE en disquete, cd o en el menú de inicio del pc (hdd).

En esta web podeis crearos la imagen: http://rom-o-matic.net/

Hasta aqui lo senzillo, ahora viene cuando hay que aprender más sobre este tema y sobretodo, hacer pruebas a ver que errores y problemas nos da y como los solucionamos.

Seguimos con posibles problemas y sus soluciones.

En este caso os explicaré la forma de usar LTSP via wifi.

Problema: Cliente ligero demasiado lejos del router o switch y pasas de tirar cable.
Solución: Añadir punto de acceso (AP) al cliente.

Ventajas: no necesitas tirar cable y es muy facil de configurar, siempre y cuando tu router principal admita la conexión de puntos de acceso.
Desventaja: La conexión wifi siempre es más lenta que la ethernet, y esto nos puede generar problemas de tiempos de carga e incluso, si tu AP no es muy bueno, no se consiga la conexión.

Un AP te permite aprovechar una conexión wifi y "pasarla" a ethernet, me explico. Un AP tiene, por lo general, un puerto ethernet y una antena wifi, como PXE es arranque via ethernet, con un dispositivo wifi no conseguiriamos nunca arrancar un cliente ligero.

Configuración del AP:

Entramos via web o telnet a nuestro AP y le asignamos una ip dentro del rango de nuestra red, para que pueda conectarse al router (p.ej. 192.168.1.254)
Según las características de nuestro AP, lo podemos configurar de varios modos (modo cliente, modo wireless bridge, etc). Por defecto viene como AP cliente y ese ya nos vale, pero podeis probar los diferentes modos , según el router que tengais, para ver con cual conecta.

Una vez conectados router con AP, solo tenemos que colocarlo en nuestro cliente y conectar con cable ethernet (tanto da si es cruzado o no).

Escenarios posibles:

1-Servidor con dispositivo wifi conectado al router
2-Servidor conectado al router via ethernet.

NOTAS:

Tener en cuenta que si teneis servidor y clientes conectados al mismo router (sin pasar por switc), el router tiene que tener el servicio DHCP deshabilitado, ya que asignaria ip él, en vez del servidor LTSP.

Buneo, seguro que me dejo más cosas y según cada caso, los problemas serán distintos, así que los iremos tratando a manera que vayan apareciendo.

Esta es la forma más sencilla de crear la red, sin tener que tirar cable por toda la casa, oficina, o lugar donde se instale la red, pero eso si, los tiempos serán malos y puede crear problemas de carga de algún cliente ligero.

Espero que os sirva.

Saludos.

Instalación de PXE en el gestor de arranque GRUB

Si tu placa base es tan antigua que no dispone de arranque PXE, puedes crearte un disquete, cd o incluso, instalarte PXE en el hdd del cliente.

Explicaré el último caso.

En esta web http://rom-o-matic.net/ dispones del generador de images gPXE para cd, disquete o hdd.

1er paso es generar la imagen (selecciona OUTPUT FORMAT la opción que te permite generar la imagen para LILO/GRUB/SYSLINUX)

2do. Te generará una imagen del estilo gpxe-0.9.6-gpxe.lkrn, fijate en la extensión .lkm.

3er paso es crear un enlace simbólico en el directorio /boot.

ln -s gpxe-0.9.6-gpxe.lkrn gpxe.lkrn

4to y último es editar el archivo menu.lst y añadimos estas líneas:

title gPXE
root (hd0,3)
kernel /boot/gpxe.lkrn
boot

De esta forma, cuando el cliente se inicie nos aparecerá un menú, donde podremos seleccionar el arranque gPXE o arrancar el SO instalado en el hdd, si lo tenemos.

Recuerda que un thin client , no tiene por que tener hdd, pero en casos tambien disponen de hdd, como no.

Esto es todo. Reinicia sistema.

Fuente: http://linkat.xtec.cat/portal_linkat/wikilinkat/index.php/Arrencada_PXE_...

Imagen de Kz_Kz
+1
+1
-1

Muy interesante el tutorial de LTSP.

No había escuchado mucho sobre ello (por no decir que ni siquiera sabía lo que era :P ) pero con lo que has dejado escrito, me he enterado perfectamente y creo que es muy útil!

Gracias por el aporte!

+1
+1
-1

Vive rápido y muere joven

Imagen de cgaburron
+1
+1
-1

Esta tan bien explicado que sin tener ni pajotera idea lo entiendes perfectamente. Va durecto al tema y es perfecto para novatos en el tema como yo. Señor Alberto es usted el messi de linux hace que lo dificil parezca facil. Un gran saludo.

+1
+1
-1
Imagen de albert_arbiol
+1
0
-1

Gracias men!! Pero el merito es de los que me lo enseñaron a mi, y leyendo manuales...hice el mio propio, que aun tiene cosas que no se explican muy bien..pero, de verdad. MIL GRACIAS!!

El messi de Linux dice...jajajajajajajaj!!! No tengo ni el LPIC1.... ha sido muy divertido leerlo, un abrazo chico!!

Ahora estoy probando el ubuntu touch en mobiles y tablets...ya colguare cosillas a ver...

Un saludo.

+1
0
-1
Imagen de Alejandro.Mayo
+1
0
-1

Yo ya pude implementar un LTSP con ubuntu 12.04, y estoy probando usar un thin client y levanta satisfactoriamente. El incoveniente es como mejoro la navegación del usuario, ya que en el thin clint no se ve una comunicación fluida, a que se podra deber esto??

+1
0
-1

Alejandro Mayo

Imagen de albert_arbiol
+1
0
-1

Mira que tengas buen ancho de banda... verifica el switch, router, cableado...etc..
Tendrias que darme más detalles!!! ;)
Piensa que el TC navega a traves del server...creo...eso debería verificarlo, perdón.
Un saludo.

+1
0
-1
Imagen de albert_arbiol
+1
0
-1

Ostia...gracias por los cumplidos...hasta hoy no lo habia leído...UN SALUDO!!!

+1
0
-1