El sistema operativo de Raspberry Pi está instalado en la tarjeta SD o en un disco USB. Debido a los ciclos de escritura limitados de las celdas flash en las tarjetas SD, no se garantiza su confiabilidad. Los discos duros y los SSD obtienen mejores resultados en cuanto a confiabilidad; este último utiliza algoritmos de nivel de desgaste para prolongar la vida útil del dispositivo. Pero aún así, mantener los datos en un solo disco siempre es arriesgado.

La idea de duplicar datos mediante RAID-1

Para evitar la pérdida de datos en caso de falla del disco, Duplicación de datos RAID-1 debe implementarse. El problema es que no es posible configurar RAID durante la fase de instalación del sistema operativo en una Raspberry Pi.

Esta idea se trata de configurar RAID-1 Mirroring en dos SSD USB, luego copiar el directorio de inicio a la partición RAID y configurarlo para usarlo como /home. Dado que los datos del usuario residen en el directorio de inicio, los datos se pueden recuperar por completo y el RAID se puede reconstruir nuevamente en caso de que falle un solo disco.

instagram viewer

El sistema operativo seguirá estando en la tarjeta SD (u otra SSD). Si el disco del sistema operativo falla, los datos importantes aún están disponibles en la matriz RAID-1. Además, el disco del sistema operativo durará más ya que hay menos presión en el disco. Esto se debe a que la mayor parte de la actividad del disco ocurre en el directorio /home (por ejemplo, lecturas/escrituras continuas en "Firefox Profile Files").

Este proceso emplea una interfaz web para simplificar el complejo proceso de configuración de RAID. Configuración que se muestra aquí utiliza Ubuntu MATE 22.04 y el mismo proceso se puede aplicar a cualquier otro Pi OS.

Elija el hardware adecuado teniendo en cuenta la disponibilidad de energía

Se requiere un mínimo de dos discos para RAID-1. Estos discos pueden ser discos duros o SSD. Una vez que se configura RAID-1, los datos se duplican (clonan) en toda la matriz. Significa que los datos se escriben en ambos discos y se leen desde el miembro RAID más rápido.

Los adaptadores USB a SATA se utilizan para conectar SSD al Pi. Un SSD consume alrededor de 5 vatios de energía en su uso máximo. Dado que se necesitan dos de ellos para RAID-1, se debe tener en cuenta la disponibilidad de energía.

2 (SSD) x 5 (vatios) = 10 vatios

Un Pi 4 funcionando a reloj estándar consume alrededor de 6 Watts y un Pi 4 overclockeado a plena carga consume cerca de 8 Watts.

La fuente de alimentación oficial de una Raspberry Pi 4 es de 5,1 V, 3,0 A.

5,1 (voltios) x 3 (amperios) = 15,3 vatios

Resumiendo, el requerimiento de energía es más que la salida máxima del adaptador.

10 vatios + 8 vatios > 15,3 vatios

El Pi también necesitará alimentar su sistema de enfriamiento. Por lo tanto, los SSD deben recibir alimentación externa para tener el margen de maniobra para un funcionamiento estable.

A Base dual USB HDD/SSD se adapta idealmente a este propósito, puede albergar discos de 2,5" y 3,5". Tiene su propio adaptador de corriente y no consume energía de la RasPi.

SD para RAID, elija modelos con TBW no idénticos para que ambos discos tengan puntos de falla en diferentes intervalos. Esto da tiempo suficiente para reconstruir la matriz RAID y mantendrá sus datos perpetuamente intactos. Hay dos puertos USB 3.0 en el Pi 4. Dado que el puerto utiliza solo uno de ellos, todavía hay un puerto de repuesto disponible para conectar otro dispositivo rápido.

Conecte los discos a la base y encienda la RasPi. La configuración de RAID es fácil usando una herramienta llamada "Webmin", se puede acceder a su interfaz a través del navegador. Abra la terminal (acceso directo: Ctrl+Alt+T) y use estos comandos para instalar Webmin:

Edite el archivo source.list:

sudo nano /etc/apt/sources.lista

Agregue esta línea (acceso directo: Ctrl+Mayús+Insertar):

deb http://download.webmin.com/download/repository sarge contribución

Guardar archivo usando Control+O, presiona "Enter" y sal usando Ctrl+X.

Descargar clave para confiar en la fuente:

wget -q -O- http://www.webmin.com/jcameron-key.asc | sudo apt-key agregar

Actualizar nuevos repositorios:

sudo apto actualizar

Instalar Webmin:

sudo apto Instalar en pc webmin -y

Instale la utilidad RAID de software mdadm:

sudo apto Instalar en pc mdadm-y

Instale la herramienta de administración de discos:

sudo apto Instalar en pc gnome-disco-utilidad -y

Establezca una contraseña para el usuario raíz (para administrar Webmin):

sudo su
Contraseña

Actualizar, actualizar y reiniciar:

sudo apt actualizar && Sudo apt actualizar -y && reiniciar sudo

Proceso para construir la matriz RAID-1

Abierto Discos herramienta de Menú > Preferencias. También puedes usar el comando:

gnomos-discos

Mostraría los nuevos discos, formatee ambos.

Abra el navegador web e ingrese esta URL:

https:// host local: 10000

Webmin se ejecuta en localhost en el puerto 10000. Dado que se usa https y el certificado SSL no está instalado, el navegador mostrará una advertencia. Es seguro hacer clic Avanzado y entonces Acepta el riesgo y continúa..

Inicie sesión con el usuario como "root" y la contraseña que configuró para root anteriormente. Por primera vez, Actualizar módulos. Una vez hecho esto, expanda Hardware y seleccione RAID de Linux. En el menú desplegable, seleccione RAID1 (Duplicado) y haga clic en el botón Crear dispositivo RAID de nivel.

Seleccione los dos discos manteniendo presionada la tecla Control llave. Palanca Omitir inicialización de dispositivos. Esto porque la inicialización toma mucho tiempo, más de una hora por cada 100GB, y no es necesario replicar discos en blanco.

Hacer clic Crear. Webmin debería responder en tres minutos con la matriz recién creada. A continuación, puede comprobar más detalles a través de /dev/md0. Los dos discos se muestran como Particiones en RAID y el Estado del sistema de archivos es Activo pero no montado.

La nueva matriz RAID debe formatearse antes de montarla. Esto se puede hacer usando Discos a la izquierda. Selecciona el Matriz RAID-1 y Formatear partición.

Dar un nombre, por ejemplo Datos. Seleccione el botón de opción Disco interno para usar solo con sistemas Linux (Ext4) y progreso para formatearlo.

Esta matriz debe montarse automáticamente en cada arranque. Seleccione Editar opciones de montaje.

Palanca Valores predeterminados de sesión de usuario y haga clic OK. Después de la autenticación, este proceso modifica el archivo “/etc/fstab”.

Reinicie, la matriz RAID-1 montada aparece como la carpeta "Datos" en el explorador de archivos.

Mover el directorio de inicio a la matriz RAID-1

Para duplicar datos importantes, el directorio de inicio debe estar en una matriz RAID-1. Se recomienda hacer una copia en lugar de moverla, ya que ayudará a la "Reconstrucción de RAID" en el futuro.

En la terminal:

dir /mnt

Copie el nombre del montaje RAID, parece "6256d81c-c23c-42c4-aea3-d194466c6c33" y es diferente para usted. Reemplace el nombre del directorio y use este comando para clonar el directorio de inicio:

sudo rsync -av /home/* /mnt/6256d81c-c23c-42c4-aea3-d194466c6c33/

Haga que este nuevo directorio se monte como /home en lugar del anterior:

sudo nano /etc/fstab

Encuentra la línea /dev/disk... (generalmente la última línea ya que la acaba de montar) y cambie el punto de montaje a "/ home" como se muestra en la captura de pantalla a continuación.

Reinicie, el directorio de inicio de Pi ahora está en RAID-1 y los datos se reflejan.

Opciones de recuperación de fallas RAID de Raspberry Pi

En el caso de una falla de RAID, hay dos opciones disponibles para la recuperación y deben configurarse ahora.

1) Monte la matriz degradada y reconstruya

Crear un nuevo archivo:

sudo nano /etc/initramfs-tools/conf.d/mdadm

Incluye este contenido:

ARRANQUE_DEGRADADO=verdadero

Esto montará la matriz RAID incluso si falla un disco. Se utilizará el directorio de inicio en la matriz degradada.

2) No monte la matriz degradada, pero reconstruya

No haga nada, la matriz degradada no se montará en el arranque. En su lugar, se utilizará el antiguo directorio de inicio; anteriormente copió el directorio de inicio en lugar de moverlo por este motivo. Ahora, ayudará a reconstruir la matriz RAID. No se asuste después de observar datos faltantes en este modo, recuerde que este no es su directorio de inicio real. Sus datos están seguros en otro disco y están esperando a ser recuperados.

En caso de que Webmin muestre un mensaje de error "mdadm: no se puede obtener información de la matriz para /dev/md0".

Use este comando para iniciar la matriz:

sudo mdadm --ejecutar /dev/md0

Reconstrucción de la matriz en caso de falla

Si bien no es necesario que replique este paso, es bueno saber que los datos se pueden recuperar en caso de falla del disco.

Proceso de simulación

El Pi se apaga y se extrae un disco. Luego se enciende el Pi y se accede a Webmin. En RAID de Linux, la Estado ahora se muestra como Inactivo. Tras una inspección más detallada, comprobando /dev/md0 muestra una matriz degradada con un solo disco en RAID.

Los datos están intactos, pero ahora solo están en un disco. La matriz RAID debe reconstruirse para conservar los datos.

La Pi se apaga, se inserta un nuevo disco HDD/SSD en blanco en el lugar del anterior y la Pi se enciende. Se accede a Webmin, comprobando /dev/md0 muestra opciones para agregar un nuevo disco a la matriz RAID. Seleccione el nuevo disco del menú desplegable y haga clic en Añadir partición.

La reconstrucción comenzaría inmediatamente, la duración depende del tamaño de los discos. Por lo general, toma una hora por cada 100 GB (para SSD).

Proteger los datos de su Pi es esencial

Con esta implementación, los datos están más seguros y la Pi se puede usar como un controlador diario. Últimamente, las Raspberry Pi se utilizan ampliamente en aplicaciones industriales y se puede minimizar el tiempo de inactividad.

Puede hacer una elección inteligente con la selección de SSD. Los fabricantes tienen SSD de capacidad similar a diferentes precios, siendo la diferencia TBW (Total de bytes escritos); el mejor modelo suele tener un 50 % más de TBW. Cuando use SSD para RAID, elija modelos con TBW no idénticos para que ambos discos tengan puntos de falla en diferentes intervalos. Esto da tiempo suficiente para reconstruir la matriz RAID y mantendrá sus datos perpetuamente intactos.