Instalación y configuración de Raid 5 mediante software (Ampliación, añadido internet a Ubuntu Server) Prac.5


Buenas,

Hoy vamos a aprender a crear un sistema "Raid" mediante software, lo haremos en "VirtualBox".

Para ello vamos a utilizar el comando "mdamd"

Lo primero sería usar una máquina con "Ubuntu" ya instalada previamente, donde añadiremos "4 discos", con esos "4 discos" montaremos un "Raid 5".


Listo esto iniciamos la máquina, en mi caso "Ubuntu 11.04".
En el caso de que se use "Ubuntu Server" y no se disponga de internet pasamos a añadirlo.

Dentro del terminal (Ctrl+Alt+T), agregamos las siguientes secuencias:
  • $ sudo su
  • # lshw -c network | more
Con esto veremos nuestra interfaz de red.
  • *-network
  • description: Ethernet interface
  • product: VT6102 [Rhine-II]
  • vendor: VIA Technologies, Inc.
  • physical id: 12
  • bus info: pci@0000:00:12.0
  • logical name: eth0

Buscamos el apartado "logical name", ethx ("x" igual a número, no tiene porque ser igual en todas las interfaz), memorizamos ese número y escribimos:
  •  # dhclient eth0
Con esto ya tendremos internet disponible.

Pasamos a instalar el comando "mdadm", ponemos:
  • $ sudo apt-get install "mdamd"

Nos aparecerá una ventana de configuración, le damos a "Sin configuración".


Listo todo esto pasamos a configurar el sistema "Raid 5".
Lo primero sería identificar nuestros discos, para ello ponemos:
  • $ sudo fdisk -l | more

Hecho esto observamos los discos y vamos fijándonos en las líneas.
  • Disco /dev/sdx ("x" igual a letra), importante apuntar los "4 discos" que posteriormente usaremos para montar el "Raid 5".


Pasamos a crear la tabla de particiones de los "4 discos", este paso habrá que repetirlo con los "4 discos", en mi caso sería: /dev/sdb  /dev/sdc  /dev/sdd  /dev/sde.
Comenzamos por el primero:
  • $ sudo fdisk /dev/sdb

Seguido nos pedirá una serie de parámetros a elegir, los clasificare por puntos para facilitar un poco el entendimiento.
  •  Nos dirá que no contiene una tabla de particiones, nos pedirá una orden, ponemos "n" para crear la tabla de particiones.
  • Luego nos preguntará si queremos crear una partición extendida o una partición primaria, ponemos una "p" para crear una partición primaria.
  • Nos preguntará el número de particiones a crear, ponemos "1".
  • En "Primer cilindro" ponemos "1" que es el valor predeterminado.
  • En "Último cilindro" ponemos nuestro valor predeterminado, en mi caso el "1044" (No tiene porque ser el mismo número).
  • Por último nos pedirá otra orden, esta vez pondremos "w" para terminar.


Una vez acabado con los "4 discos" comprobamos que efectivamente están listos los discos.
Ponemos:
  • $ sudo fdisk -l | more

Como veremos ahora si nos aparecerá una nueva línea (Dispositivo Inicio), donde nos aparecerá la partición creada.


Pasamos a crear el "Raid 5" (Importante recordad que discos queremos incluir en el Raid y no confundirse).
Ponemos la siguiente secuencia ("v" no es necesario, pero nosotros lo añadiremos para un mejor orden de los pasos):
  •  $ sudo mdadm -Cv /dev/md0 -l5 -n4 /dev/sd{b,c,d,e}1


 Si todo ha salido correctamente debería aparecer algo así.


Ahora vamos a pasar a ver el estado del disco (Recordad que ya los "4 discos" pasan a ser "1")
Ponemos:
  • $  sudo mdadm -D /dev/md0

Nos aparecerá una serie de parámetros y los discos que lo componen, como vemos esta listo para ser formateado.


Pasamos a formatear el disco, le daremos el formato "ext3".
  • $ sudo mke2fs -t ext3 /dev/md0

Cuando termine el proceso quedará algo así:


Hecho todo esto, solo nos queda montar la unidad, para ello primero crearemos el directorio donde posteriormente montaremos nuestra unidad, en mi caso lo montaré en "media" y se llamará "Datos", para ello ponemos:
  • $ sudo mkdir /media/Datos
 
Ahora si montamos la unidad, escribimos:
  • $ sudo mount /dev/md0 /media/Datos

Listo, ya tenemos nuestra unidad montada y lista para ser usada.

 
 
¿Cómo controlar los errores?

Podemos comprobar el estado con el siguiente comando:
  • cat /proc/mdstat

Un comando muy interesante a tener en cuenta es el comando "manage" el cual nos brinda la posibilidad de añadir un disco duro a la "espera" (spare), el cual se activará en el caso de que otro falle. Estos procesos se harían en caliente por lo que todo seguiría funcionando con normalidad.
Vamos a apagar la máquina, agregarle un nuevo disco del mismo tamaño de los demás, arrancamos nuevamente la máquina y pasamos a crearle la tabla de particiones como ya hemos visto. Hecho todo esto pasamos a añadir el disco, ponemos:
  •  $ sudo mdadm --manage /dev/md127 --add /dev/(y el disco nuevo a agregar)

Hecho esto ya tenemos un disco en "spare" vamos a comprobar que efectivamente esta ahí.
  • sudo mdamd -D /dev/md127

Si un disco falla lo podemos marcar como "fail".
Ponemos:
  • $ sudo mdadm --manage /dev/md127 --fail /dev/(y el disco que a fallado)
Cuando tenemos un disco en "spare" (espera), de manera automática el sistema lo añade al arreglo y reconstruye el "Raid", marcando el dañado como "faulty spare".
Para eliminarlo ponemos:
  • $ sudo mdadm --manage /dev/md127 --remove /dev/(y el disco que queremos eliminar)



Configurar el fichero "mdadm.conf"

Un paso importante es configurar el fichero "mdadm.conf", en este caso vamos a intentar simplificarlo de la forma más simple,

  • 1 - Agregamos la configuración.
    • $ sudo mdadm -Dsv >> /etc/mdadm/mdadm.conf
  • 2 - Comprobamos la configuración.
    • $ sudo cat /etc/mdadm/mdadm.conf


Comprobación marcando un disco como "fail"

Pasamos a comprobar que todo funciona correctamente, para ello vamos a añadir algún dato, cosa que luego provocaremos un error en un disco del sistema, comprobaremos si los datos siguen dentro.
Creamos un archivo con el texto que queramos:
  • $ cat > /media/Datos/Fichero_de_prueba_raid.txt (Dentro introducimos algún texto y pulsamos "Ctrol+d" para terminar)

Ahora pasamos a marcar un disco como "fail" (Visto anteriormente).
  • $ sudo mdadm --manage /dev/md0 --fail /dev/sde1 (Podemos marcar cualquier otro disco)


Pasamos a comprobar la sincronización de los disco, como podemos ver se ha añadido el disco en "Spare" y se están sincronizando correctamente.
  • $ sudo cat /proc/mdstart

Una vez acabado pasamos a ver el estado de nuestros discos. Veremos como pasa el disco marcado como "fail" a "spare", y el disco que antes estaba en "spare" pasa a "active sync".


Por último comprobamos que el fichero "Fichero_de_prueba_raid.txt" no está dañado.
  • $ cat /media/Datos/Fichero_de_prueba_raid.txt



Comprobación desconectando un "Disco"

Vamos a pasar a ver que ocurriría si desconectamos un disco y como podemos solucionarlo.
Apagamos la máquina, desconectamos un disco al azar.


Pasamos a arrancar la máquina y comprobamos el estado del "raid". Como veréis aparece "Inactive"
  • $ cat /proc/mdstart

Para volver a activar el raid lo primero que tenemos que hacer es pararlo.
  • $ sudo mdadm --stop /dev/md0

Hecho esto pasamos a reactivar el raid. (Al reactivarlo se sincronizaran los discos disponibles, en nuestro caso solo nos quedarían "3", suficiente para que un "raid 5" funcione correctamente)
  • $ sudo mdadm --assamble --scan

Comprobamos el estado de nuestro discos una vez reactivado el raid.
  • $ sudo mdadm -D /dev/md0

Por último comprobamos que el fichero "Fichero_de_prueba_raid.txt" no está dañado.
  • $ cat /media/Datos/Fichero_de_prueba_raid.txt


Espero que os sea de utilidad, comenten cualquier duda y opinión.

Saludos.

Autor: Unknown

El árticulo Instalación y configuración de Raid 5 mediante software (Ampliación, añadido internet a Ubuntu Server) Prac.5 es publicado por Unknown el sábado, 4 de mayo de 2013. Esperemos que este artículo sea de su interés, Gracias por su visita, por favor deje un comentario. Hay 4 Comentarios: en el post Instalación y configuración de Raid 5 mediante software (Ampliación, añadido internet a Ubuntu Server) Prac.5
 

4 comentarios:

  1. Perfecto como siempre, y el primero como es habitual.

    ResponderEliminar
  2. Muchas gracias Jose, me alegro que te guste.

    Un saludo

    ResponderEliminar
  3. Perfecto, una pregunta, como podrías mandar las alertas de fallo de raid por correo? ( a una cuenta de correo :S), te dejo mi correos por si tienes la solución, gracias de antemano. (ruben.camarero.92@gmail.com)

    ResponderEliminar
  4. Exelente, de los pocas isntalaciones de raid5 paso a paso, muy buen trabajo

    ResponderEliminar