OVH Community, your new community space.

Crear Software RAID 1 ( Espejo ) Linux con segundo disco añadido en servidor


oceano
11/03/2014, 11:46
Ejemplo basado en RAID Soft 2x 2 TB SATA3 6 Gbps + 2x 240 GB SSD Intel S3500 SATA3 6 Gbps (+25.00€/mes)

añadiendo código ( )

[ C O D E ] todo junto

código aquí

[ /C O D E ]

1.- Antes de nada, particionamos y damos formato al primer dísco en modo Raid1 por defecto desde el panel de control, dónde se instalará el sistema operativo.( 2x 240 GB SSD Intel S3500 SATA3 6 Gbps ) A gusto del consumidor.

Código:
From ControlPanel
2.- Posteriormente hacemos un (abajo) dónde observamos que tenemos otros 2 discos más, en nuestro caso (2x 2 TB SATA3 6 Gbps )
Código:
#  fdisk -l
En total tenemos ( /dev/sda, /dev/sdb ,/dev/sdc , /dev/sdd )

3.- Particionamos, en mi caso 1 único espacio sería suficiente
Código:
#  fdisk /dev/sdc
Command (m for help): n (nueva partición)
Command action
e extended
p primary partition (1-4)
p (de tipo primario)
Partition number (1-4): 1 ( enter – inicio ) ( enter – fin )

Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list codes): fd
Changed system type of partition 1 to fd (Linux raid autodetect)
4.- Refrescamos
Código:
#  Partprobe
5.- Guardamos
Código:
# Command (m for help): w
The partition table has been altered!
6.- ( igual para el siguiente disco hermano )
Código:
#  fdisk /dev/sdd 
Command (m for help): n (nueva partición)
Command action
e extended
p primary partition (1-4)
p (de tipo primario)
Partition number (1-4): 1 ( enter – inicio ) ( enter – fin )

Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list codes): fd
Changed system type of partition 1 to fd (Linux raid autodetect)
7.- Comprobamos que contiene validos superbloques.
Código:
# mdadm --zero-superblock /dev/sdc /dev/sdd
mdadm: Unrecognised md component device - /dev/sdc ( vamos por buen camino )
mdadm: Unrecognised md component device - /dev/sdd  ( vamos por buen camino )
( If there are no remains from previous RAID installations, each of the above commands will throw an error like this one (which is nothing to worry about):
server1:~# mdadm --zero-superblock /dev/sdb1
mdadm: Unrecognised md component device - /dev/sdb1
Otherwise the commands will not display anything at all.
Fuente: http://www.howtoforge.com/software-r...ot-debian-etch ( Final )

8.- Creamos el Raid1
Código:
mdadm --create --verbose --level=1 --metadata=1.2 --raid-devices=2 /dev/md0 /dev/sdc1 /dev/sdd1
ó
#  mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdc1 /dev/sdd1
mdadm: Note: this array has metadata at the start and
may not be suitable as a boot device. If you plan to
store '/boot' on this device please ensure that
your boot-loader understands md/v1.x metadata, or use
--metadata=0.90
Continue creating array? Y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

9.- Formateamos
Código:
# mkfs.ext3 /dev/md0
*********** EMPIEZA AQUI - SI HEMOS REINSTALADO EL SERVIDOR **************

10.- Montamos /dev/md0
Código:
# mkdir /raid1
# mount /dev/md0 /raid1 ( por ejemplo aquí )
# df -h
************************
Atención

Después del primer reinicio, el sistema automáticamente ha cambiado el segundo disco a modo ( lectura ) sacándolo del raid1. Poniendo el segundo disco directamente de este modo ( en mi caso ) /dev/md127.

Con un simple fdisk -l mostrará la nueva estructura.

Para volver a solucionar este contratiempo basta con añadir una línea a /etc/fstab con la nueva dirección y a /etc/mdadm.conf, quedando tal que así, pero cambiado como he comentado antes la dirección que nos dé fdisk -l , después del primer reinicio del sistema.

En mi caso dentro de /etc/fstab
Código:
/dev/md0 /raid1 ext3 noatime,rw 0 0
/dev/md127 /raid1 ext3 noatime,rw 0 0
En mi caso dentro de /etc/mdadm.conf
Código:
ARRAY /dev/md0 devices=/dev/sdc1,/dev/sdd1 level=1 num-devices=2 auto=yes
ARRAY /dev/md127 devices=/dev/sdc1,/dev/sdd1 level=1 num-devices=2 auto=yes

NO REPETIR CON LO DE ABAJO !!!
************************

11.- Editamos /etc/fstab para que lo reconozca en el siguiente reinicio
Código:
/dev/md0 /raid1 ext3 noatime,rw 0 0 ( se puede moficiar a gustos )
12.- Actualizamos /etc/mdadm.conf añadiendo, en mi caso.
Código:
ARRAY /dev/md0 devices=/dev/sdc1,/dev/sdd1 level=1 num-devices=2 auto=yes
13.- Comprobamos el proceso de ensamblado cómo está realizándolo
Código:
# watch -n 2 cat /proc/mdstat
14.- Comprobamos el funcionamiento es correcto
Código:
#mdadm --detail /dev/md0

Opcional.


- Scan partitions superblock to find existing raid device.
Código:
# mdadm --examine --brief --scan --config=partitions
Fuente 1.- (Señor Power) http://foros.ovh.es/showthread.php?9...-desde-las-VMs
Fuente 2.- http://www.cyberciti.biz/faq/linux-c...id-one-arrays/
Fuente 3.- http://www.howtoforge.com/software-r...ot-debian-etch

Ya tenemos 2TB listos para almacén en el mismo servidor sin tener que contratar otro...

En mi caso
Código:
# df -h /raid1

Filesystem      Size  Used Avail Use% Mounted on
/dev/md0        1.8T  196M  1.7T   1% /raid1.7T   1% /raid1 :rolleyes:


Un saludo !

P.D. Pruebas Smartctl (+ y sigue)


15. - Smartctl

Código:
/etc/init.d/smartd status
/etc/init.d/smartd start

chmod 755 /usr/sbin/smartctl

smartctl -V

cat /proc/mdstat

smartctl -a -d ata /dev/sda > sda.log ( leemos ssd.log )
smartctl -a -d ata /dev/sdb > sdb.log ( leemos ssd.log )
smartctl -a -d ata /dev/sdc > sdc.log ( leemos ssd.log )
smartctl -a -d ata /dev/sdd > sdd.log ( leemos ssd.log )