Le système d'exploitation de Raspberry Pi est installé sur la carte SD ou sur un disque USB. En raison des cycles d'écriture limités des cellules flash sur les cartes SD, leur fiabilité n'est pas garantie. Les disques durs et les SSD s'en sortent mieux en termes de fiabilité; ce dernier utilise des algorithmes de niveau d'usure pour prolonger la durée de vie de l'appareil. Néanmoins, conserver les données sur un seul disque est toujours risqué.
L'idée de mettre en miroir des données à l'aide de RAID-1
Pour éviter la perte de données en cas de panne de disque, Mise en miroir des données RAID-1 devrait être mis en œuvre. Le problème est que la mise en place du RAID n'est pas possible lors de la phase d'installation du système d'exploitation sur un Raspberry Pi.
Cette idée consiste à configurer la mise en miroir RAID-1 sur deux SSD USB, puis à copier le répertoire personnel sur la partition RAID et à le configurer pour l'utiliser comme /home. Étant donné que les données utilisateur résident dans le répertoire d'accueil, les données peuvent être entièrement récupérées et le RAID peut être reconstruit en cas de panne d'un seul disque.
Le système d'exploitation restera toujours sur la carte SD (ou un autre SSD). Si le disque du système d'exploitation tombe en panne, les données importantes sont toujours disponibles sur la matrice RAID-1. De plus, le disque du système d'exploitation durera plus longtemps car il y a moins de pression sur le disque. En effet, la majorité de l'activité du disque se produit dans le répertoire /home (par exemple, lecture/écriture continue dans "Firefox Profile Files").
Ce processus utilise une interface Web pour simplifier le processus autrement complexe de configuration du RAID. Configuration illustrée ici utilise Ubuntu MATE 22.04 et le même processus peut être appliqué à tout autre système d'exploitation Pi.
Choisissez le bon matériel en tenant compte de la disponibilité de l'alimentation
Un minimum de deux disques est requis pour RAID-1. Ces disques peuvent être des disques durs ou des SSD. Une fois RAID-1 configuré, les données sont mises en miroir (clonées) sur l'ensemble de la baie. Cela signifie que les données sont écrites sur les deux disques et lues à partir du membre RAID le plus rapide.
Les adaptateurs USB vers SATA sont utilisés pour connecter des SSD au Pi. Un SSD consomme environ 5 watts d'énergie lors d'une utilisation maximale. Étant donné que deux d'entre eux sont nécessaires pour RAID-1, la disponibilité de l'alimentation doit être prise en compte.
2 (SSD) x 5 (Watts) = 10 Watts
Un Pi 4 fonctionnant à l'horloge standard consomme environ 6 Watts et un Pi 4 overclocké à pleine charge consomme près de 8 Watts.
L'alimentation officielle d'un Raspberry Pi 4 est de 5,1 V, 3,0 A.
5,1 (volts) x 3 (ampères) = 15,3 watts
En résumé, la puissance requise est supérieure à la sortie maximale de l'adaptateur.
10 Watts + 8 Watts > 15,3 Watts
Le Pi devra également alimenter son système de refroidissement. Ainsi, les SSD doivent être alimentés en externe pour avoir la marge de manœuvre pour un fonctionnement stable.
UN Double station d'accueil USB HDD/SSD convient idéalement à cet usage, il peut accueillir à la fois des disques 2,5" et 3,5". Il a son propre adaptateur secteur et ne tirera pas d'alimentation du Pi.
SD pour RAID, choisissez des modèles avec des TBW non identiques afin que les deux disques aient des points de défaillance à des intervalles différents. Cela donne suffisamment de temps pour reconstruire la matrice RAID et gardera vos données perpétuellement intactes. Il y a deux ports USB 3.0 sur le Pi 4. Comme la station d'accueil n'en utilise qu'un seul, un port libre est toujours disponible pour connecter un autre appareil rapide.
Branchez les disques dans la station d'accueil et allumez le Pi. La configuration du RAID est facile à l'aide d'un outil appelé "Webmin", son interface est accessible via le navigateur. Ouvrez le terminal (raccourci: Ctrl+Alt+T) et utilisez ces commandes pour installer Webmin :
Modifiez le fichier sources.list :
sudo nano /etc/apt/sources.liste
Ajoutez cette ligne (raccourci: Ctrl+Maj+Inser):
deb http ://download.webmin.com/download/repository sarge contrib
Enregistrer le fichier en utilisant Ctrl+O, appuyez sur "Entrée" et quittez en utilisant Ctrl+X.
Téléchargez la clé pour faire confiance à la source :
wget -q -O- http ://www.webmin.com/jcameron-key.asc | sudo apt-clé ajouter
Mettez à jour les nouveaux dépôts :
sudo apt mettre à jour
Installez Webmin :
sudo apt installer webmin-y
Installez l'utilitaire RAID logiciel mdadm :
sudo apt installer mdadm -y
Installez l'outil de gestion de disque :
sudo apt installer gnome-disk-utility -y
Définissez un mot de passe pour l'utilisateur root (pour gérer Webmin) :
sudo su
mot de passe
Mettre à jour, mettre à niveau et redémarrer :
mise à jour sudo apt && sudo apt upgrade -y && redémarrage sudo
Processus de création de la matrice RAID-1
Ouvert Disques outil de Menu > Préférences. Vous pouvez également utiliser la commande :
disques-gnome
Il montrerait les nouveaux disques, formater les deux.
Ouvrez le navigateur Web et entrez cette URL :
https://hôte local: 10000
Webmin s'exécute sur localhost au port 10000. Étant donné que https est utilisé et que le certificat SSL n'est pas installé, le navigateur affichera un avertissement. Il est sûr de cliquer Avancé et alors Acceptez le risque et continuez.
Connectez-vous avec l'utilisateur en tant que "root" et le mot de passe que vous avez défini précédemment pour root. Le premier debout, Actualiser les modules. Une fois terminé, développez Matériel et sélectionnez RAID Linux. Dans le menu déroulant, sélectionnez RAID1 (en miroir) et cliquez sur le bouton Créer un périphérique RAID de niveau.
Sélectionnez les deux disques en maintenant la touche Ctrl clé. Basculer Ignorer l'initialisation des appareils. En effet, l'initialisation prend beaucoup de temps, plus d'une heure pour 100 Go, et il n'est pas nécessaire de répliquer des disques vierges.
Cliquez sur Créer. Webmin devrait répondre en trois minutes avec le tableau nouvellement créé. Vous pouvez ensuite vérifier plus de détails via /dev/md0. Les deux disques sont représentés par Partitions en RAID et le État du système de fichiers est Actif mais pas monté.
La nouvelle matrice RAID doit être formatée avant de la monter. Cela peut être fait en utilisant les disques sur la gauche. Sélectionnez le Baie RAID-1 et Formater la partition.
Donnez un nom, par exemple Données. Sélectionnez le bouton radio Disque interne à utiliser uniquement avec les systèmes Linux (Ext4) et progressez pour le formater.
Cette baie doit être montée automatiquement à chaque démarrage. Sélectionner Modifier les options de montage.
Basculer Valeurs par défaut de la session utilisateur et cliquez D'ACCORD. Après authentification, ce processus modifie le fichier « /etc/fstab ».
Redémarrez, la matrice RAID-1 montée apparaît comme le dossier "Data" dans l'explorateur de fichiers.
Déplacer le répertoire personnel vers la matrice RAID-1
Pour mettre en miroir des données importantes, le répertoire de base doit se trouver sur une matrice RAID-1. Il est recommandé d'en faire une copie au lieu de la déplacer, la raison étant que cela aidera "RAID Rebuild" à l'avenir.
Dans l'aérogare :
rép /mnt
Copiez le nom du montage RAID, il ressemble à "6256d81c-c23c-42c4-aea3-d194466c6c33" et c'est différent pour vous. Remplacez le nom du répertoire et utilisez cette commande pour cloner le répertoire personnel :
sudo rsync -av /home/* /mnt/6256d81c-c23c-42c4-aea3-d194466c6c33/
Faites en sorte que ce nouveau répertoire soit monté en tant que /home au lieu de l'ancien :
sudo nano /etc/fstab
Trouvez la ligne /dev/disk... (généralement la dernière ligne depuis que vous venez de le monter) et changez le point de montage en "/ home" comme indiqué dans la capture d'écran ci-dessous.
Redémarrez, le répertoire personnel du Pi est maintenant sur RAID-1 et les données sont mises en miroir.
Options de récupération de panne RAID Raspberry Pi
En cas de panne RAID, deux options de récupération sont disponibles et doivent être définies maintenant.
1) Monter la matrice dégradée et reconstruire
Créez un nouveau fichier :
sudo nano /etc/initramfs-tools/conf.d/mdadm
Inclure ce contenu :
BOOT_DEGRADED=vrai
Cela montera la matrice RAID même si un disque tombe en panne. Le répertoire personnel de la baie dégradée sera utilisé.
2) Ne montez pas la matrice dégradée, mais reconstruisez
Ne rien faire, la baie dégradée ne se montera pas au démarrage. L'ancien répertoire personnel sera utilisé à la place; plus tôt, vous avez copié le répertoire personnel au lieu de le déplacer pour cette raison. Maintenant, cela aidera à reconstruire la matrice RAID. Ne paniquez pas après avoir observé des données manquantes dans ce mode, rappelez-vous qu'il ne s'agit pas de votre répertoire personnel réel. Vos données sont en sécurité sur un autre disque et attendent d'être récupérées.
Si Webmin affiche un message d'erreur "mdadm: impossible d'obtenir les informations sur le tableau pour /dev/md0".
Utilisez cette commande pour démarrer le tableau :
sudo mdadm --run /dev/md0
Reconstruction de la baie en cas de panne
Bien qu'il ne soit pas nécessaire de répliquer cette étape, il est bon de savoir que les données peuvent être récupérées en cas de panne de disque.
Processus de simulation
Le Pi est arrêté et un disque est retiré. Le Pi est alors mis sous tension et Webmin est accessible. Dans RAID Linux, la Statut est maintenant affiché comme Inactif. Après une inspection plus approfondie, vérifier /dev/md0 montre une matrice dégradée avec un seul disque en RAID.
Les données sont intactes, mais elles ne se trouvent que sur un seul disque maintenant. La matrice RAID doit être reconstruite pour préserver les données.
Le Pi est éteint, un nouveau disque HDD/SSD vierge est inséré à la place de l'ancien et le Pi est mis sous tension. Webmin est accessible, en vérifiant /dev/md0 affiche les options pour ajouter un nouveau disque à la matrice RAID. Sélectionnez le nouveau disque dans la liste déroulante et cliquez sur Ajouter une partition.
La reconstruction commencerait immédiatement, la durée dépend de la taille des disques. Cela prend généralement une heure pour chaque 100 Go (pour les SSD).
La protection des données de votre Pi est essentielle
Avec cette implémentation, les données sont plus sûres et le Pi peut être utilisé comme pilote quotidien. Dernièrement, les Raspberry Pi sont largement utilisés dans les applications industrielles et les temps d'arrêt peuvent être minimisés.
Vous pouvez faire un choix intelligent avec la sélection de SSD. Les fabricants ont des SSD de capacité similaire à différents prix, la différence étant TBW (Total Bytes Written); le meilleur modèle a généralement 50% de TBW en plus. Lorsque vous utilisez des SSD pour RAID, choisissez des modèles avec des TBW non identiques afin que les deux disques aient des points de défaillance à des intervalles différents. Cela donne suffisamment de temps pour reconstruire la matrice RAID et gardera vos données perpétuellement intactes.