¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Linux
  3. Gestión de dispositivos de almacenamiento
Extrait - Linux Administración del sistema y explotación de los servicios de red (5ª edición)
Extractos del libro
Linux Administración del sistema y explotación de los servicios de red (5ª edición) Volver a la página de compra del libro

Gestión de dispositivos de almacenamiento

Gestión de los dispositivos de almacenamiento

Este capítulo trata de la gestión de los discos RAID, de la configuración de bajo nivel de los discos, de los discos de red de tipo iSCSI, así como del el gestor de volúmenes lógicos LVM.

1. Configuración de discos RAID

El objetivo de esta sección es de enseñarle a:

  • configurar e implementar software RAID. Esto incluye los niveles de RAID 0, 1 y 5.

a. Competencias principales

  • Archivos de configuración y herramientas de gestión del software RAID.

b. Elementos empleados

  • mdadm.conf

  • mdadm

  • /proc/mdstat

  • Partición de tipo 0xFD

2. Optimizar el acceso a los dispositivos de almacenamiento

El objetivo de esta sección es de enseñarle a:

  • configurar el núcleo para administrar diferentes tipos de discos;

  • conocer las herramientas de software para listar y modificar la configuración de los dispositivos iSCSI.

a. Competencias principales

  • Herramientas y comandos para configurar el DMA para los dispositivos IDE, incluyendo ATAPI y SATA. 

  • Herramientas y comandos para configurar discos SSD (Solid State Drive), incluyendo AHCI y NVMe.

  • Herramientas y comandos para configurar o analizar los recursos del sistema (por ejemplo, las interrupciones). 

  • Conocimientos básicos del comando sdparm y su uso.

  • Herramientas y comandos de gestión de dispositivos iSCSI.

  • Conocimientos básicos de SAN, incluyendo los protocolos...

Configuración de los discos RAID

La tecnología RAID (Redundant Array of Independent Disks) permite combinar diferentes dispositivos para que sean vistos como un solo espacio de almacenamiento para las aplicaciones. De esta manera se puede mejorar el tiempo de acceso y/o la fiabilidad de los dispositivos de almacenamiento. Las diferentes técnicas empleadas se definen con respecto al nivel de RAID usado. Los niveles más corrientes son RAID 0, 1 y 5; los que se estudiarán en el marco de la certificación.

Se puede administrar el RAID en modo hardware, con los controladores de discos especializados o en modo software, desde el sistema operativo.

Linux implementa un piloto de gestión de software del RAID, el piloto md (Multiple Device piloto), que gestiona los niveles más corrientes de RAID, 0, 1 y 5. 

Otras soluciones pueden implementarse para gestionar el software RAID en Linux: RAID LVM o RAID directamente soportado por el gestor de sistema de archivos ZFS o Btrfs.

1. Los principales niveles de RAID

a. RAID 0

RAID 0 (agregación de bandas, striping) combina distintos discos en un solo conjunto. Los bloques de datos se reparten en bandas de tamaño idéntico que están repartidas uniformemente en los diferentes discos. Las operaciones de entrada/salida pueden ser, por lo tanto, muy rápidas, ya que los controladores de los discos las pueden efectuar de manera simultánea.

Sin embargo, la fiabilidad del conjunto es bastante baja ya que al perder un disco perderá el conjunto de los datos. No hay redundancia en los datos almacenados y la coherencia de los volúmenes lógicos se destruye en el caso de fallo en un disco.

El espacio de almacenamiento útil de un conjunto RAID 0 es igual a la capacidad útil del más pequeño de los discos multiplicado por el número de discos que lo componen, ya que no hay redundancia de datos y que las bandas de datos están repartidas de manera uniforme en los discos (cada disco tiene que tener el mismo número de bandas).

Ventajas:

  • Rapidez de lectura y escritura del conjunto de los bloques.

  • Uso óptimo del espacio de los discos, siempre y cuando los discos sean del mismo tamaño.

Inconvenientes:

  • No hay redundancia de datos, por lo tanto, no hay tolerancia frente a fallos.

  • La pérdida de un disco compromete el conjunto de los datos almacenados...

Optimizar el acceso a los dispositivos de almacenamiento

Linux puede gestionar una gran variedad de dispositivos de almacenamiento, de tipo local o remoto. Según el tipo de dispositivo y su uso, puede ser necesario modificar la configuración de acceso al dispositivo para optimizar su rendimiento. Existen muchas herramientas y comandos que pueden ayudar al administrador a configurar y monitorear los recursos del almacenamiento de los sistemas.

1. Gestión de los discos duros locales

El administrador debe poder determinar los periféricos locales de almacenamiento reconocidos por el sistema, listar sus características y, eventualmente, modificar su configuración para mejorar el rendimiento de las entradas/salidas o corregir conflictos. Debe poder, también, determinar cuáles son los tipos de periféricos de almacenamiento adaptados al sistema, en función de los pilotos instalados y, si fuera necesario, saber instalar nuevos pilotos.

a. Determinación de los archivos especiales

En Linux, cada periférico de almacenamiento está gestionado por un archivo especial en modo de bloque, asociado al piloto cargado para ese tipo de periférico. La detección de los periféricos de almacenamiento y la creación de los archivos especiales correspondientes se hace, generalmente, de manera automática y durante el arranque del sistema (excepto para los dispositivos extraíbles, detectados automáticamente durante la actividad del sistema).

Esos archivos especiales se encuentran en el directorio /dev. Su nombre está determinado por el núcleo, según algunas convenciones de nombres, en función del tipo de dispositivo y del orden de detección del dispositivo con respecto a su tipo.

Un archivo especial Linux no es un archivo de disco, no contiene ningún dato almacenado. En realidad se trata de un punto de comunicación con el piloto del dispositivo, gestionado por el núcleo. Cuando una aplicación «escribe» en el archivo especial, el núcleo transmite los bytes emitidos por la aplicación al piloto del dispositivo en cuestión. A la inversa, cuando una aplicación «lee» el archivo especial, el núcleo le transmite los bytes emitidos por el piloto de dispositivo en cuestión.

Cada archivo especial Linux posee...

Logical Volume Manager

La gestión tradicional de los discos que consiste en una o distintas particiones por disco, pudiendo contener cada una un sistema de archivos o un espacio de swap, impone límites en términos de flexibilidad de uso y de evolución, en particular:

  • Un sistema de archivos no puede ocupar distintos discos (exceptuando las técnicas de RAID).

  • El tamaño máximo de un sistema de archivos depende del tamaño de la partición que lo contiene y es delicado aumentar el tamaño de una partición y, por lo tanto, de su sistema de archivos.

Estas distintas limitaciones y restricciones han llevado a proponer una nueva herramienta de gestión del espacio de almacenamiento, el Gestor de volúmenes lógicos (LVM, Logical Volume Manager).

El principio es de implementar una capa lógica intermediaria entre los gestores de sistemas de archivos y el material de almacenamiento. El gestor de sistemas de archivos ve los volúmenes lógicos en lugar de las particiones o discos. Estos volúmenes lógicos son administrados por el gestor LVM, que hace de enlace entre los dispositivos usados. De esta manera, podemos dejar atrás la mayoría de las limitaciones evocadas anteriormente:

  • Un sistema de archivos puede extenderse entre distintos discos físicos.

  • Se puede, mucho más fácilmente, aumentar el tamaño máximo de un sistema de archivos.

  • Se pueden combinar controladores de discos de tecnologías diferentes, o discos locales y remotos dentro de un sistema de archivos.

  • Se puede añadir un disco físico en caliente y utilizarlo para agrandar un sistema de archivos existente.

Se puede combinar perfectamente el RAID de hardware o software con LVM, permitiendo el beneficio de la tolerancia de fallos y la flexibilidad de los volúmenes lógicos.

La tecnología LVM, originaria de Linux, se implementó en el núcleo Linux en los años 2000 y se utiliza a gran escala en entornos de producción desde hace años. La versión actual se llama LVM2.

El Gestor de volúmenes lógicos Linux LVM puede gestionar por sí mismo diferentes niveles de RAID de software o apoyarse en el módulo de gestión del RAID visto anteriormente, md..

1. Arquitectura de los volúmenes lógicos

Ejemplo de arquitectura...