Bonjour à tous,
Il paraît que le RAID hard est has-been maintenant, donc je me suis dit que j'allais m'en passer pour mes prochains serveurs.
J'ai donc lancé une install de Debian Buster et ai entrepris de créer un RAID soft avec mdadm. Le serveur est en mode UEFI donc je crée une partition EFI au début du disque, sur le RAID. Tout se passe bien jusqu'à ce que grub-efi passe par là. Il n'aime pas que la partition EFI soit sur un RAID apparement. J'ai retourné l'Internet dans tous les sens sans trouver de solution autre que ne pas mettre la partition EFI sur le RAID. Ce qui veut dire devoir gérer manuellement la synchro de ces deux partitions, ce qui ne m'enthousiasme guère...
Vous gérez ça comment, vous ? Je précise que j'installe en preseed donc j'ai la possibilité d'utiliser des commandes custom pour le partitionnement.
Merci,
On Thu, 17 Oct 2019 22:08:38 +0200 Jonathan Leroy - Inikup via FRsAG frsag@frsag.org wrote:
Bonjour à tous,
Il paraît que le RAID hard est has-been maintenant, donc je me suis dit que j'allais m'en passer pour mes prochains serveurs.
J'ai donc lancé une install de Debian Buster et ai entrepris de créer un RAID soft avec mdadm. Le serveur est en mode UEFI donc je crée une partition EFI au début du disque, sur le RAID. Tout se passe bien jusqu'à ce que grub-efi passe par là. Il n'aime pas que la partition EFI soit sur un RAID apparemment.
Bonjour,
et que dit Grub exactement ? Comment se comporte-t-il, en pratique ?
Vous gérez ça comment, vous ?
Quelles sont les marques et types de matériel du serveur ? Carte mère, processeur et UEFI ?
(Je n'ai pas la réponse toute prête mais je crois que ça peut compter dans le problème, exemple cet article: https://www.intel.fr/content/www/fr/fr/support/articles/000007883/server-pro... )
Cordialement, Joyce MARKOLL
Le jeu. 17 oct. 2019 à 22:49, contact@orditux.org a écrit :
et que dit Grub exactement ? Comment se comporte-t-il, en pratique ?
J'ai une erreur lors du grub-install. Je n'ai pas conservé les logs mais de mémoire il n'y avait pas plus de détails. J'ai l'impression qu'il cherche à écrire sur une partition boot legacy (ce qui n'est normalement pas nécessaire en mode UEFI).
Quelles sont les marques et types de matériel du serveur ? Carte mère, processeur et UEFI ?
Alors il est tout à fait possible que la CM ne supporte pas le boot depuis un RAID soft, c'est justement ce que je voulais vérifier. Mais ça ne devrait pas empêcher l'installation de Grub.
Vous gérez ça comment, vous ?
Jamais mis (ni même tenté) une partoche de boot en raid depuis toujours... J'installe grub (pour un RAID1) sur les deux partoches qui sont bootables toutes les deux. (pour un RAID5, ça serait toutes les trois, etc...)
De telle sorte qu'on pourra redémarrer de l'une ou de l'autre et synchroniser le disque défaillant qui aura été remplacé.
Alors oui, si tu touches la config grub... y'a pas de synchro, il faut retoucher l'autre config...
C'est normal... au boot... le raid ne peut pas être encore en place, linux n'est pas encore aux commandes :)
De mémoire, ça doit donner ça : bios > mbr > partoche boot > initramfs avec mdadm monté en ram > linux chargé du disque avec mdadm > systemd > tout le reste...
Salut,
Hypothèses: Raid 1, GPT et boot normal possible
En gros, tu fais partition bios boot (!= /boot) et EFI sur les _2_ disques et tu configures grub pour prendre en compte les 2:
- Bios Boot : sgdisk -a1 -n1:24K:+1000K -t1:EF02 /dev/disk/by-id/... - EFI : sgdisk -n2:1M:+512M -t2:EF00 /dev/disk/by-id/...
Après, faut suivre les points suivants de cette doc : (qui fait du raid miroir aussi mais par ZFS): https://github.com/zfsonlinux/zfs/wiki/Debian-Buster-Root-on-ZFS
4.8 Install GRUB 5.6 Install the boot loader 6.8 Mirror GRUB
Grub sera configuré pour se mettre à jour sur tes 2 disques et ta partition /boot est dans le raid qui est lu depuis grub2 (oui il peut le faire, module mdraid09 ou mdraid1x) et inspiré de cette config : https://unix.stackexchange.com/questions/196212/required-grub-modules-for-bo... J'ai quand même un initramfs (c'est chiffré sauf boot évidemment) Bien que grub2 puisse le faire désormais pour du LUKS : GRUB_ENABLE_CRYPTODISK=y cf. https://wiki.archlinux.org/index.php/GRUB#RAID Dans la config de grub, il y a plusieurs fois des « --hint-bios » et « --hint-efi » qui permettent de chercher dans le premier disque et s'il est mort dans le deuxième.
Bon courage, c'est plus long et chiant à mettre en place mais c'est super après, tu as rien n'a faire de spécial. (grub se mettra à jour sur les 2 disques dans la partition EFI, BIOS Boot et /boot/grub/*)
On Fri, Oct 18, 2019 at 10:45:18AM +0200, Stéphane Rivière wrote:
Vous gérez ça comment, vous ?
Jamais mis (ni même tenté) une partoche de boot en raid depuis toujours... J'installe grub (pour un RAID1) sur les deux partoches qui sont bootables toutes les deux. (pour un RAID5, ça serait toutes les trois, etc...)
De telle sorte qu'on pourra redémarrer de l'une ou de l'autre et synchroniser le disque défaillant qui aura été remplacé.
Alors oui, si tu touches la config grub... y'a pas de synchro, il faut retoucher l'autre config...
C'est normal... au boot... le raid ne peut pas être encore en place, linux n'est pas encore aux commandes :)
De mémoire, ça doit donner ça : bios > mbr > partoche boot > initramfs avec mdadm monté en ram > linux chargé du disque avec mdadm > systemd > tout le reste...
-- Be Seeing You Number Six
Liste de diffusion du FRsAG http://www.frsag.org/
Bonjour,
On Fri, Oct 18, 2019 at 11:44:56AM +0200, GROS Jerome wrote:
Salut,
Hypothèses: Raid 1, GPT et boot normal possible
En gros, tu fais partition bios boot (!= /boot) et EFI sur les _2_ disques et tu configures grub pour prendre en compte les 2:
- Bios Boot : sgdisk -a1 -n1:24K:+1000K -t1:EF02 /dev/disk/by-id/...
- EFI : sgdisk -n2:1M:+512M -t2:EF00 /dev/disk/by-id/...
Après, faut suivre les points suivants de cette doc : (qui fait du raid miroir aussi mais par ZFS): https://github.com/zfsonlinux/zfs/wiki/Debian-Buster-Root-on-ZFS
4.8 Install GRUB 5.6 Install the boot loader 6.8 Mirror GRUB
Grub sera configuré pour se mettre à jour sur tes 2 disques et ta partition /boot est dans le raid qui est lu depuis grub2 (oui il peut le faire, module mdraid09 ou mdraid1x) et inspiré de cette config : https://unix.stackexchange.com/questions/196212/required-grub-modules-for-bo... J'ai quand même un initramfs (c'est chiffré sauf boot évidemment) Bien que grub2 puisse le faire désormais pour du LUKS : GRUB_ENABLE_CRYPTODISK=y cf. https://wiki.archlinux.org/index.php/GRUB#RAID Dans la config de grub, il y a plusieurs fois des « --hint-bios » et « --hint-efi » qui permettent de chercher dans le premier disque et s'il est mort dans le deuxième.
Bon courage, c'est plus long et chiant à mettre en place mais c'est super après, tu as rien n'a faire de spécial. (grub se mettra à jour sur les 2 disques dans la partition EFI, BIOS Boot et /boot/grub/*)
Le seul souci que je vois c'est quand on intervient ensuite, et manuellement au niveau du "bios/efi" en changeant une option ou un ordre de boot, cette information ne sera écrite que sur une des 2 partitions. Je ne crois pas que le bios/uefi sache gérer le raid soft qui sera alors désynchronisé. Et je ne vois pas comment il faut faire pour savoir laquelle des 2 partitions il faut croire. (pour l'étape 6.8b)
Cordialement
Tru
Le ven. 18 oct. 2019 à 11:46, GROS Jerome jerome.gros@isty.uvsq.fr a écrit :
Après, faut suivre les points suivants de cette doc : (qui fait du raid miroir aussi mais par ZFS): https://github.com/zfsonlinux/zfs/wiki/Debian-Buster-Root-on-ZFS
4.8 Install GRUB 5.6 Install the boot loader 6.8 Mirror GRUB
La procédure que tu mentionnes clone la partition EFI sur les différents disques mais ne gère pas les mises à jour suivantes, non ?
Le ven. 18 oct. 2019 à 10:46, Stéphane Rivière stef@genesix.org a écrit :
C'est normal... au boot... le raid ne peut pas être encore en place, linux n'est pas encore aux commandes :)
Oui mais ce n'est pas grave. Grub a juste besoin de lire la partition mais n'écrit pas (AFAIK). Et quand bien même une fois Linux lancé le RAID devrait se resync.
Le 17/10/2019 à 22:08, Jonathan Leroy - Inikup via FRsAG a écrit :
Bonjour à tous,
Il paraît que le RAID hard est has-been maintenant, donc je me suis dit que j'allais m'en passer pour mes prochains serveurs.
J'ai donc lancé une install de Debian Buster et ai entrepris de créer un RAID soft avec mdadm. Le serveur est en mode UEFI donc je crée une partition EFI au début du disque, sur le RAID. Tout se passe bien jusqu'à ce que grub-efi passe par là. Il n'aime pas que la partition EFI soit sur un RAID apparement.
Si tu es en UEFI, tu dois utiliser des partirions GPT ?
Dans ce cas, tu dois avoir sur chaque disque deux ou trois partitions :
1 - Taille 1 Mo - Type EF02 BIOS boot partition 2 - Taille 200 Mo (environ) - Type EF00 EFI System 3 - Le reste du disque - Type FD00 Linux RAID
La partition BIOS boot partition n'est pas obligatoire, c'est plus une protection.
Tu montes le RAID soft avec les partitions numéro 3 des disques.
Tu installes Grub sur chaque disque : grub-install /dev/sda grub-install /dev/sdb grub-install /dev/sdc ...
Le jeudi 17 octobre 2019 à 22:08 +0200, Jonathan Leroy - Inikup via FRsAG a écrit :
Bonjour à tous,
Il paraît que le RAID hard est has-been maintenant, donc je me suis dit que j'allais m'en passer pour mes prochains serveurs.
J'ai donc lancé une install de Debian Buster et ai entrepris de créer un RAID soft avec mdadm. Le serveur est en mode UEFI donc je crée une partition EFI au début du disque, sur le RAID. Tout se passe bien jusqu'à ce que grub-efi passe par là. Il n'aime pas que la partition EFI soit sur un RAID apparement. J'ai retourné l'Internet dans tous les sens sans trouver de solution autre que ne pas mettre la partition EFI sur le RAID. Ce qui veut dire devoir gérer manuellement la synchro de ces deux partitions, ce qui ne m'enthousiasme guère...
Vous gérez ça comment, vous ? Je précise que j'installe en preseed donc j'ai la possibilité d'utiliser des commandes custom pour le partitionnement.
Si tu es sur de l'uefi, c'est normal. Le fonctionnement n'est pas du tout le même qu'avec bios + mbr. Ton uefi dispose d'une table de correspondance nom => programme efi à charger. Quand tu installes grub-efi, il ne va pas placer un chargeur sur le disque. Il va juste ajouter une entrée dans cette table, en disant "je suis tel os, grub pour efi se trouve là". Et ce programme se trouve sur la partition efi, en vfat. Sous linux tu peux lister et modifier tout ça avec efibootmgr.
Quand le PC boote, l'uefi se charge, monte la partition efi … et donc doit connaitre le système de fichiers. Si tu la formates dans un FS non reconnu par l'uefi, il ne peut pas accéder au programme de boot (que ce soit grub, shim, ou celui de windows). Donc si tu mets cette partition sur du raid software, à moins que ton uefi sache le lire (probabilité forte qu'il ne lise que le vfat), ça ne fonctionnera pas.
Pas de solution qui me vient là, malheureusement. À moins de repasser en mode legacy, avec grub en mode mbr et pas efi.
Le ven. 18 oct. 2019 à 11:59, Anthony Bourguignon contact+ml.frsag@toniob.net a écrit :
Si tu es sur de l'uefi, c'est normal. Le fonctionnement n'est pas du tout le même qu'avec bios + mbr. Ton uefi dispose d'une table de correspondance nom => programme efi à charger. Quand tu installes grub-efi, il ne va pas placer un chargeur sur le disque. Il va juste ajouter une entrée dans cette table, en disant "je suis tel os, grub pour efi se trouve là". Et ce programme se trouve sur la partition efi, en vfat. Sous linux tu peux lister et modifier tout ça avec efibootmgr.
Quand le PC boote, l'uefi se charge, monte la partition efi … et donc doit connaitre le système de fichiers. Si tu la formates dans un FS non reconnu par l'uefi, il ne peut pas accéder au programme de boot (que ce soit grub, shim, ou celui de windows). Donc si tu mets cette partition sur du raid software, à moins que ton uefi sache le lire (probabilité forte qu'il ne lise que le vfat), ça ne fonctionnera pas.
Pas de solution qui me vient là, malheureusement. À moins de repasser en mode legacy, avec grub en mode mbr et pas efi.
Alors je crois avoir le fin mot de l'histoire. J'ai viré ma config preseed et lancé une install à la main en mode debug. Arrivé à l'étape de l'installation du Grub, j'ai cette erreur dans les logs :
Oct 19 10:11:49 grub-installer: info: Running chroot /target grub-install --force "dummy" Oct 19 10:11:49 grub-installer: Installing for x86_64-efi platform. Oct 19 10:11:49 grub-installer: grub-install: warning: vars_get_variable: open(/sys/firmware/efi/vars/blk0-47c7b225-c42a-11d2-8e57-00a0c969723b/raw_var, O_RDONLY) failed: No such file or directory. Oct 19 10:11:49 grub-installer: grub-install: warning: efi_get_variable: ops->get_variable failed: No such file or directory. Oct 19 10:11:49 grub-installer: grub-install: warning: efi_va_generate_file_device_path_from_esp: could not open device for ESP: Bad address. Oct 19 10:11:49 grub-installer: grub-install: warning: efi_generate_file_device_path_from_esp: could not generate File DP from ESP: Bad address. Oct 19 10:11:49 grub-installer: grub-install: error: failed to register the EFI boot entry: Bad address. Oct 19 10:11:49 grub-installer: error: Running 'grub-install --force "dummy"' failed.
Ça crorrespond à ce bug chez Debian : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=925591
TL;DR : Il est bien possible de monter la partition EFI en RAID, il suffit de spécifier le paramètre "--metadata=0.90" lors du "mdadm --create" pour que les métadonnées du RAID soient placées à la fin de la partition. Du coup pour l'UEFI, la partition est vue comme une partition FAT (il ne voit pas le RAID). Le souci est que ce n'est pas facilement faisable en preseed et encore moins en installation manuelle, à moins de se farcir la création du RAID à la main.
Donc je crois que je vais abandonner cette idée et exclure la partition EFI du RAID, et mettre en place un rsync.
Merci à tous pour votre aide. :)
Pourquoi le raid hard c'est has been ? :-O
Le 17/10/2019 à 22:08, Jonathan Leroy - Inikup via FRsAG a écrit :
Bonjour à tous,
Il paraît que le RAID hard est has-been maintenant, donc je me suis dit que j'allais m'en passer pour mes prochains serveurs.
J'ai donc lancé une install de Debian Buster et ai entrepris de créer un RAID soft avec mdadm. Le serveur est en mode UEFI donc je crée une partition EFI au début du disque, sur le RAID. Tout se passe bien jusqu'à ce que grub-efi passe par là. Il n'aime pas que la partition EFI soit sur un RAID apparement. J'ai retourné l'Internet dans tous les sens sans trouver de solution autre que ne pas mettre la partition EFI sur le RAID. Ce qui veut dire devoir gérer manuellement la synchro de ces deux partitions, ce qui ne m'enthousiasme guère...
Vous gérez ça comment, vous ? Je précise que j'installe en preseed donc j'ai la possibilité d'utiliser des commandes custom pour le partitionnement.
Merci,
Le ven. 18 oct. 2019 à 17:23, ML lists@websiteburo.com a écrit :
Pourquoi le raid hard c'est has been ? :-O
C'était une petite blagounette. :) J'ai toujours été de la team RAID hard, mais tout le monde semble l'abandonner au profit du RAID soft qui n'a quasiment pas d'impact sur les perfs et évite les problèmes de gestion du spare.
Le 19 oct. 2019 à 12:23, Jonathan Leroy - Inikup via FRsAG frsag@frsag.org a écrit :
Le ven. 18 oct. 2019 à 17:23, ML lists@websiteburo.com a écrit :
Pourquoi le raid hard c'est has been ? :-O
C'était une petite blagounette. :) J'ai toujours été de la team RAID hard, mais tout le monde semble l'abandonner au profit du RAID soft qui n'a quasiment pas d'impact sur les perfs et évite les problèmes de gestion du spare.
Mais ajoute la complexité qui fait l’objet de ce thread. Perso, j’aime bien aussi le Raid HW pour cette simplicité.
Et au fait, en raid Soft mdadm, y a moyen de faire du hotplug ?
Le sam. 19 oct. 2019 à 12:28, David Ponzone david.ponzone@gmail.com a écrit :
Mais ajoute la complexité qui fait l’objet de ce thread. Perso, j’aime bien aussi le Raid HW pour cette simplicité.
Disons que les heures que j'ai passé sur ce souci m'ont coûtés bien plus cher qu'une carte RAID. :) D'un autre côté j'ai lu pas mal de "horror stories" de RAID complétement pétés après que la carte RAID morte ait pourtant été remplacée par une carte strictement identique. Donc à choisir...
Et au fait, en raid Soft mdadm, y a moyen de faire du hotplug ?
Oué : https://raid.wiki.kernel.org/index.php/Hotplug
Et au fait, en raid Soft mdadm, y a moyen de faire du hotplug ?
ça dépends de si ton contrôleur le supporte ou pas (le hot plug). si oui, alors ton kernel doit détecter le disque (comme une clé usb) et de l'ajouter dans /dev
Liste de diffusion du FRsAG http://www.frsag.org/