Tolerancia a Fallas Discos RAID Francisco Gaivis Rodolfo Martínez Sinivaldo Navarro Juan P. Osío Universidad Simón Bolívar Sistemas de Operación II Prof. Yudith Cardinale
Introducción Sistemas Tolerantes a Fallas La tolerancia a fallas es la propiedad que permite a los sistemas continuar operando luego de que ocurra una falla en alguno de sus componentes. No es una propiedad que se aplica sólo a máquinas individuales, sino que se aplica tambien a sistemas complejos con múltiples máquinas que se comunican entre sí. - Roll-Back - Roll-Forward Técnicas de Duplicación -Replicación -Redundancia Francisco Gaivis Rodolfo Martínez Sinivaldo Navarro Juan P. Osío
Historia Norman Ken Ouchi (1978) "Sistema para recuperar datos almacenados en una unidad de memoria averiada". Full Striping Mirroring RAID1 Protección con cálculo de paridad dedicado RAID4 Universidad de California, Berkeley (1987) Definen por primera vez la tecnología RAID, al estudiar la posibilidad de usar dos o más discos que aparecieran como un único dispositivo para el sistema. Francisco Gaivis Rodolfo Martínez Sinivaldo Navarro Juan P. Osío
RAID (Redundant Array of Independent / Inexpensive Disks) "Sistema de almacenamiento informático que usa múltiples discos duros entre los que distribuye o replica los datos". "Un sistema RAID emplea conceptos básicos de combinar espacio físico en disco para los fines de mejorar la fiabilidad, capacidad o rendimiento". Ofrece: - Integridad: Datos Correctos y Completos - Tolerancia a Fallas - Throughput (Rendimiento) - Capacidad RAID se organiza en niveles, cada uno con una configuración distinta, y dependendo del nivel se ofrecen todas o sólo algunas de las características mencionadas. Francisco Gaivis Rodolfo Martínez Sinivaldo Navarro Juan P. Osío
Implementaciones RAID por Hardware Una implementación de RAID basada en hardware requiere al menos una controladora RAID específica, ya sea como una tarjeta de expansión independiente o integrada en la placa base, que gestione la administración de los discos. Tarjeta Controladora RAID BUS-Based Controlador RAID Externo Inteligente
RAID por Software Con la implementación por software, el sistema operativo gestiona los discos del conjunto a través de una controladora de disco normal (IDE/ATA, Serial ATA, SCSI o Fibre Channel). Considerada tradicionalmente una solución más lenta, con el rendimiento de las CPUs modernas puede llegar a ser más rápida que algunas implementaciones hardware, a expensas de dejar menos tiempo de proceso al resto de tareas del sistema. Francisco Gaivis Rodolfo Martínez Sinivaldo Navarro Juan P. Osío
RAID por Software VS. RAID por Hardware Por Software Ventajas Flexibilidad Bajo Costo Desventajas Capacidad limitada Consumo de CPU Por Hardware Ventajas Hot swapping Capacidad virtualmente Ilimitada Cache de escritura no volátil Desventajas Alto costo Poca flexibilidad Añaden un punto de fallo al sistema (la controladora RAID) Francisco Gaivis Rodolfo Martínez Sinivaldo Navarro Juan P. Osío
Niveles RAID RAID 0 RAID 1 RAID 2 RAID 3 RAID 4 RAID 5 RAID 6 RAID 5E y 6E Niveles mas usados: RAID 0 RAID 1 RAID 5
RAID 0 (conjunto dividido o volumen dividido) Distribuye los datos equitativamente entre dos o más discos. No proporciona redundancia. Se usa normalmente para incrementar el rendimiento. Puede utilizarse como forma de crear un pequeño número de grandes discos virtuales a partir de un gran número de pequeños discos físicos La fiabilidad total es inversamente proporcional al número de discos del conjunto
JBOD (Just a Bunch Of Drives) Combina múltiples discos duros físicos en un solo disco virtual. JBOD es usado a veces para combinar varias unidades pequeñas (obsoletas) en una unidad mayor con un tamaño útil Una ventaja de JBOD sobre RAID 0 es que, en caso de fallo de un disco, en RAID 0 suele producirse la pérdida de todos los datos del conjunto, mientras en JBOD sólo se pierden los datos del disco afectado, conservándose los de los restantes discos
Copia exacta en dos o más discos RAID 1 Sólo puede ser tan grande como el más pequeño de sus discos La probabilidad de fallo del conjunto es igual al producto de las probabilidades de fallo de cada uno de los discos El rendimiento de lectura se incrementa aproximadamente como múltiplo linear del número del copias el tiempo medio de lectura se reduce, ya que los sectores a buscar pueden dividirse entre los discos Al escribir, el conjunto se comporta como un único disco, dado que los datos deben ser escritos en todos los discos del RAID 1. Por tanto, el rendimiento no mejora. Mínimo de discos: 2 Fortalezas: Alto rendimiento; Alta redundancia; Poca penalidad en escrituras Debilidades: Alto costo en redundancia; Se requiere por lo menos el doble de la capacidad necesaria de los datos
RAID Bloques de Paridad La redundancia se provee por medio de Bloques de Paridad. Cuando ocurre alguna falla, usando los bloques restantes y un bloque de paridad se pueden reconstruir el dato perdido. Ejemplo: A1 = 00000111 A2 = 00000101 A3 = 00000000. Ap = A1 XOR A2 XOR A3 = 00000010 Si se pierde A2, puede ser reconstruido A2 = A1 XOR A3 XOR Ap = 00000101
RAID 3 y RAID 4 Usa división por bytes y usa un disco de paridad Se usa rara vez en la práctica No puede atender varias peticiones simultáneas, debido a que cualquier simple bloque de datos se dividirá por todos los miembros del conjunto Usa división por bloques con un disco de paridad dedicado. Puede servir varias peticiones de lectura simultáneamente.
RAID 5 Usa división de datos a nivel de bloques distribuyendo la información de paridad entre todos los discos miembros del conjunto. Cada vez que un bloque de datos se escribe, se genera un bloque de paridad dentro de la misma división (stripe) El disco utilizado por el bloque de paridad está escalonado de una división a la siguiente. El fallo de un segundo disco provoca la pérdida completa de los datos. Mínimo de discos: 3 Fortalezas: Muy alto desempeño; Alta protección de datos; Soporta escritura y lectura concurrente. Debilidades : Escritura mas lenta que RAID 0 o RAID 1.
RAID 6 RAID 6 extiende RAID 5 mediante la agregación de un segundo bloque de paridad RAID 5E y RAID 6E Se llaman RAID 5E y RAID 6E a las variantes de RAID 5 y RAID 6 que incluyen discos de reserva. Estos discos pueden estar conectados y preparados (hot spare) o en espera (standby spare). No suponen mejora alguna del rendimiento
Niveles Anidados RAID RAID 0+1 RAID 1+0 RAID 3+0 RAID 10+0
RAID 0 + 1 ( Espejo de divisiones )
RAID 10 ( División de espejos )
RAID 30 ( División de niveles RAID con paridad dedicada )
Cómo hacerlo? HARDWARE Instalar físicamente los componentes Habilitar en el BIOS la controladora RAID RAID setup
Crete array Seleccionar el tipo Seleccionar las unidades Establecer el tamaño de bloque
Software En Windows XP
RAID Software en LINUX
$> mdadm --create /dev/md0 --auto=yes --level=1 --raid-devices=2 /dev/sdb1 /dev/sdb2
# mdadm assemble /dev/md0 /dev/sdb1 /dev/sdc1 # mdadm --scan /dev/md0 # mdadm /dev/md0 --add /dev/sdc1 # mdadm /dev/md0 --fail /dev/sdc1 --remove /dev/sdc1 # mdadm --monitor --mail=sysadmin --delay=300 /dev/md0
PREGUNTAS
GRACIAS