[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Arranque en RAM a traves de PXE



mariodebian escribió:
El lun, 15-12-2008 a las 09:05 -0300, Federico Alberto Sayd escribió:
Vicente Lopez escribió:
Hola listeros.

Os cuento, quiero poner en funcionamiento un sistema de la siguiente forma:

Tengo un servidor con 12 discos SCSI que quiero que sea el servidor de ficheros, para completar el sistema tengo 5 servidores que no quiero que tengan disco alguno y que arranquen a traves de PXE y que trabajen con
un sistema de ficheros en  RAM.

O sea, arrancaran haciendo las peticiones al servidor que tiene almacenamiento y una vez arrancado NO quiero que tengan ningun vinculo
ni de NFS ni SMB ni de ningun tipo con el servidor que les proporciona
el arranque.


Esto es bastante poco óptimo si cada servidor que arranca por red
necesita muchos servicios, pero no es imposible.


En TCOS (sistema de terminales ligeros) el terminal descarga por red
(TFTP) un archivo squashfs con el directorio /usr donde están las cosas
que necesita para cargar Xorg y otros servicios.

Una vez el terminal ha cargado ya no necesita al servidor para
funcionar, es decir puedes reiniciar el servidor... usando NFS u otros
métodos esto sería un kernel panic en toda regla.

Necesitas hacer un debootstrap (o usar pbuilder) de cada servidor que
quieras generar (si son distintos) comprimirlo con squashfs y hackear
initramfs-tools para que descargue ese squashfs, lo monte como solo
lectura y añada una capa RW mediante unionfs-squashfs/aufs-squashfs

Como servidor si no necesita guardar nada (ni siquiera logs) pueden
funcionar... si el servidor va a ser una web con una base de datos, por
ejemplo, tendrás que vincular tanto la web como la base de datos a otra
máquina o montar (por NFS) los directorios /var/www y /var/lib/mysql (no
estoy seguro de que esto funcione sin más...)

Puedes echar un vistazo al código de TCOS para ver cómo se descarga y se
monta el squashfs:

http://trac.tcosproject.org/browser/trunk/initramfs-tools-tcos/

(directorio scripts)

Saludos


Hasta ahora he probado haciendo un filesystem con debootstrap, con debian-live, pero no he conseguido saber como hacer que cuando terminen
de arrancar funcionen de forma autonoma y sin ninguna dependencia del
servidor principal.

Y esto es precisamente lo que os pregunto, donde puedo encontrar informacion de como preparar primero el filesystem para que lo puedan
descargar los clientes, y tambien de como hacer que una vez arrancados
no tengan el filesystem en un recurso NFS.

Gracias miles...

Vicente



¿Pero de alguna forma una vez arrancados los sistemas van a usar tu sistema de almacenamiento me imagino...? Cómo vas a guardar las configuraciones que se hacen el sistema, en el caso de que tengas que reiniciar?

Levantar un disco RAM para que sea el root de tu instalación no debe ser difícil, de hecho el initrd es un disco ram que se monta como root de la partición antes de que se monte la partición principal raíz. Tienes que mirar en el proceso de booteo.

Saludos


Pero cada vez que tenga que actualizar el sistema, hacer apt-get upgrade, etc, o tocar alguna configuración tendrá que regenerar toda la imagen y subirla al tfpt o lo que sea. Lo veo bastante poco práctico.

Al fin y al cabo el servidor prestará algún servicio que se conectará por red. Si usa un una aplicación web que escribe en una BD, la base tendría que estar afuera y tendría que generar una conexión a un servidor externo. No veo cuál es la diferencia entre tener una base de datos externa y un sistema de archivo por red como NFS o Samba o incluso iSCSI o algo parecido.

Saludos


Reply to: