10 - Etherboot

[editar]
Tutorial creado por Emilio José Plaza Nieto. Extraido de: http://es.tldp.org/Manuales-LuCAS/doc-cluster-computadoras/doc-cluster-computadoras-html/node1.html
23 de Febrero de 2006
Etherboot es un paquete software, cuya función es la creación de imagenes ROM que puede ser descargables a través de una red Ethernet para ser ejecutadas en computadores x86. Algunos adaptadores de red tienen un enchufe donde puede ser instalado o conectado un chip ROM. Etherboot es código que puede ser grabado en una ROM. Etherboot es usado normalmente para realizar arranque sin disco o diskeless. Esto es beneficioso en varias situaciones, por ejemplo:
  • Un X-Terminal.
  • Cluster de computadoras.
  • Routers.
  • Varias clases de servidores remotos, por ejemplo, un servidor de cinta que solo puede ser accedido a través del protocolo RMT.
  • Maquinas trabajando en entornos desfavorables para los discos duros.
  • Plataformas de usuario donde las particiones remotas son montadas a través de la red y se obtiene bajas velocidades en comparación con los discos.
  • Mantenimiento software para cluster de igual configuración a la estación de trabajo central.

Etherboot inicia computadores mas rápidamente que un disquete ya que no hay retardos en los giros del disco, etc. Realizando un pequeño calculo se observará que con una Ethernet de 10Mbit/s se enviará un kenel de 500kB en un par de segundos. Con una Ethernet de 100Mbit se obtendrá mejores resultados aún.

En comparación con el arranque desde dispositivos como puede ser un disco Flash, Etherboot posee la ventaja de la administración del software centralizado.

Etherboot trabaja con discos RAM, sistemas de ficheros NFS, o discos locales. Es un componente tecnologico que puede ser combinado con otras tecnologías para actuar como deseamos.

Etherboot se utiliza generalmente para cargar Linux, FreeBSD o el DOS. No obstante los formatos del fichero del protocolo y del cargador del programa inicial son generales.

Etherboot es Open Source bajo la GNU GPL2 (General Public Licence Version 2).

Los componentes necesitados por Etherboot son:

  • Un cargador de carga inicial, usualmente una EEPROM de una tarjeta de red o instalado en la flash BIOS.
  • Un servidor DHCP o BOOTP, que asigne una dirección IP cuando reciba una dirección MAC.
  • Un servidor TFTP, encargado de transmitir la imagen del kernel y otros ficheros requeridos durante el proceso de arranque.

Funcionamiento

A continuación se describirá el funcionamiento del software Etherboot.

  • Busca un servidor DHCP que en función de su dirección MAC le asignará una dirección IP.
  • Una vez asignada la dirección IP, solicitará la transmisión del archivo con la imagen del núcleo. Esta transmisión la realizará el TFTP.
  • Recibido el archivo con la imagen del núcleo, será el núcleo el encargado de seguir con el proceso de arranque, es decir, solicitará una IP a través de DHCP y un servidor se le asignará en función de su dirección MAC y solicitará la transmisión del sistema archivos vía NFS.

Instalación

Los fuentes del paquete Etherboot esta disponible en la web http://etherboot.sourceforge.net/distribution.html.

Una vez descargados dichos fuentes deberá ser compilados, a continuación se muestran los pasos a seguir para la instalación de Etherboot:

  1. Descargar de la web los paquetes etherboot-5.0.2.tar.gz y mknbi-1.2.tar.gz.
  2. Descomprimir los paquetes utilizando tar xvfz nombre_paquete.
  3. Recompilar el núcleo con las opciones seguidas en el punto, con los siguientes comandos:
    $$>$make dep;make clean;make bzImage
  4. Copiar la imagen del núcleo generada al directorio donde se haya descomprimido el paquete mknbi-1.2.tar.gz. La imagen del núcleo se encuentra en el directorio /usr/src/linux/arch
    /i386/boot
  5. En el arranque no se puede usar el fichero bzImage, generada en la compilación del núcleo. Esta imagen debe ser convertida en una tagged image (imagen etiquetada). Esta es una imagen normal con una cabecera especial que le dice al cargador de arranque en red dónde han de almacenarse los bytes en memoria y en qué dirección empieza el programa. Para crear esta imagen se usa el programa llamado mknbi-linux, que nos proveé el paquete mknbi-1.2.tar.gz.

    Posicionarse en el directorio donde se hay descomprimido el paquete mknbi-1.2.tar.gz (por ejemplo /home/usuario/mknbi-1.2), transformar la imagen del núcleo, es decir, hacer una tagged imagen con el siguiente comando:

    ./mknbi -format=elf -target=linux bzImage -output=vmlinuz.nodos
  6. Copiar el archivo generado vmlinuz.nodos al directorio /tftpboot
  7. Posicionarse sobre el directorio src dentro del directorio en el cual se haya descomprimido el paquete etherboot-5.0.2.tar.gz, como por ejemplo /home/usuario/etherboot-5.0.2/src
  8. Introducción de un disquete en la unidad de disco y escribir los siguiente comandos:
    $$>$make
    $$>$make bin/boot1a.bin $\Rightarrow$ se genera la imagen de los drivers de la tarjeta de red
    $$>$make bin32/3c90x.rom $\Rightarrow$ esta línea variará en función de la tarjeta de red, en este caso concreto una 3COM 3c905
    $$>$cat bin/boot1a.bin bin32/3c90x.rom $>$ /dev/fd0

Una vez finalizados los pasos anteriores ya estaría preparado el disquete de arranque, solamente quedaría irse a un cliente y comprobar que el proceso de arranque vía nfs funciona correctamente.

Los servicios mínimos que deben estar corriendo en el cliente una vez que ha arrancado correctamente son: identd, inet,netfs, network, portmap. Si eliminamos algunos de estos servicios el cliente no funcionará correctamente.

[editar]

7 opiniones

15 contenido

JUNINHO
nbnm

bnmbm
El link sobre el proyecto de grado.

Disculpas omiti el link. Www.technetworld.info. van a ver en los links los capitulos.
Aporte sobre clusters de alto desempeño.

Creo que a la gente interesada puede aportarle el proyecto de grado que realize sobre clusters, donde entre varias cosas evaluo la mejor arquitectura con relacion costo performance(entre power, itanium 2, opteron, ultrasparc) entre muchas cosas mas. Saludos.
Cluster heterogeneo de pcs.

Esta muy bueno solo que no puedo bajar las figuras desde ningun link y resultaria muy interesante tenerlas junto al documento. Si alguien las ha podido bajar, por fa, diganme como??.
1 2 | siguiente >

Tutoriales relacionados con 'Cluster Heterogéneo De Computadoras'

Autor y licencia de 'Cluster Heterogéneo De Computadoras'

Licencia GNU Free Documentation License: http://www.es.gnu.org/licencias/fdles.html
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.