next up previous contents
Next: 3.2.4 Servidor NFS Up: 3.2 Software Previous: 3.2.2.4 Creación del kernel   Índice General

3.2.3 Organización de sistemas de archivos para NFS

Cada nodo requiere un sistema de archivos raíz que utilizará para el arranque. Estos directorios se exportarán a través de NFS y deben contener los archivos necesarios para el arranque del sistema.

La mayoría de las distribuciones de Linux, incluido Red Hat Linux, se adhieren a un estándar conocido como FHS (Filesystem Hierarchy Standard, estándar de jerarquía del sistema de archivos) [6]. El objetivo de contar con este estándar es el homologar la organización de los sistemas de archivos entre las distribuciones de Linux, para mejorar la interoperabilidad entre las aplicaciones, herramientas de administración de sistemas, herramientas de desarrollo y scripts, así como contar con una mayor uniformidad de uso y documentación para los sistemas que se adhieren el estándar.

Como se verá, la organización propuesta por el FHS se realizó teniendo en mente la posibilidad de sistemas diskless (como el caso de los nodos que se emplearán en el cluster), de modo que es conveniente revisar las premisas del FHS a fin de determinar cómo se pueden organizar nuestros sistemas de archivos raíz para los nodos, así como las áreas compartidas.

La especificación FHS indica que el contenido del directorio raíz debe ser adecuado para iniciar, restaurar, recuperar y/o reparar el sistema. En particular nos interesa la sección referente al arranque, que especifica que el contenido del sistema de archivos raíz debe incluir lo necesario para montar otros sistemas de archivos. Esto incluye utilerías, archivos de configuración, mecanismos de arranque, y otra información esencial para el inicio. Los directorios /usr, /opt y /var están organizados de modo que pueden estar ubicados en otras particiones o sistemas de archivos.

FHS intenta mantener la cantidad de archivos en el directorio raíz al mínimo (salvo para los directorios /usr, /opt y /var y /home) obedeciendo a algunos criterios básicos. Uno de ellos es particularmente importante para estaciones diskless: el sistema de archivos raíz contiene muchos archivos de configuración específicos a cada sistema, como puede ser configuración de red o nombre del host. Esto implica que el sistema de archivos raíz no siempre se puede compartir entre sistemas en red. El mantener el sistema de archivos raíz lo más compacto posible minimiza el espacio desperdiciado por archivos no compartibles. También permite minimizar el tamaño del sistema de archivos inicial, sea local o remoto.

Los directorios de nivel superior, como lo especifica FHS, son los siguientes:

Para los sistemas de archivos de los nodos, se omitirán los directorios /usr y /home, ya que estos serán compartidos entre todos los nodos y el servidor central.

A fin de generar el sistema de archivos para cada nodo, bajo el directorio /tftpboot se crean directorios con el hostname correspondiente a cada nodo, por ejemplo: /tftpboot/tornado68. Bajo cada uno de estos se debe crear la jerarquía raíz para cada nodo. Para esto simplemente se copian los subdirectorios necesarios del servidor. Los directorios a copiar son:

Inicialmente se realiza únicamente una copia del directorio. Posteriormente la configuración por nodo se realiza en esta copia, y finalmente se crean tantas copias del primer directorio como nodos se tengan.

No se requiere copiar el directorio /boot, que contiene las imágenes ejecutables del kernel para el server, puesto que los nodos ya han cargado su kernel a través de TFTP. Se omite el directorio /opt pues este no existe inicialmente en Red Hat Linux y no se requerirá para este proyecto. Tampoco se requiere el directorio /mnt pues no se espera que los nodos vayan a montar sistemas de archivos no especificados. El directorio /proc contiene información de tiempo de ejecución del sistema y en Linux es requerido para el correcto funcionamiento; sin embargo es únicamente un directorio sin contenido pues su contenido se crea dinámicamente. /usr y /home también se omiten pues se montarán posteriormente como directorios compartidos.

El total del contenido de estos directorios abarca aproximadamente 15 MB de espacio. Cada nodo nuevo debe contar, en su propio subdirectorio, con una copia de todos estos archivos y directorios.

Para el directorio /usr, se compartirá directamente el directorio /usr del servidor. Según la especificación FHS, el directorio /usr debe contener únicamente información compartible y de sólo lectura. Esto nos garantiza que al compartirlo entre todos los nodos, no se tendrán problemas de inconsistencia o sincronización.

El directorio /home se comparte bajo el mismo mecanismo. De esta manera todas las entradas y administración de usuarios se realizan en el servidor central, los cambios y archivos de los usuarios se comparten entre todos los nodos.


next up previous contents
Next: 3.2.4 Servidor NFS Up: 3.2 Software Previous: 3.2.2.4 Creación del kernel   Índice General
2002-05-15