Configuration d'Amazon EBS et du RAID - Amazon EBS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configuration d'Amazon EBS et du RAID

Avec Amazon EBS, vous pouvez utiliser toute configuration RAID standard que vous pourriez utiliser avec un serveur bare metal traditionnel, dans la mesure où cette configuration RAID est prise en charge par le système d’exploitation de votre instance. Cela est dû au fait que l’ensemble de la configuration RAID est mise en œuvre au niveau logiciel.

Les données de volume Amazon EBS sont répliquées sur plusieurs serveurs dans une zone de disponibilité pour éviter la perte de données résultant de la défaillance d’un seul composant. Cette réplication rend les volumes Amazon EBS dix fois plus fiables que les disques durs classiques. Pour plus d’informations, consultez la section relative à la disponibilité et la durabilité d’Amazon EBS dans les pages de description détaillée du produit Amazon EBS.

Options de configuration RAID

La création d’une grappe RAID 0 vous permet d’obtenir un niveau de performance plus élevé pour un système de fichiers que vous pouvez mettre en service sur un volume Amazon EBS unique. Utilisez RAID 0 quand les performances d’I/O sont de la plus haute importance. Avec un RAID 0, les I/O sont réparties entre les volumes dans un agrégat par bandes. Si vous ajoutez un volume, du débit et des IOPS sont ajoutés directement. Cependant, gardez à l’esprit que les performances de l’agrégat par bandes sont limitées à celles du volume le moins performant, et que la perte d’un seul volume entraîne la perte complète des données pour la grappe.

La taille résultante d’une grappe RAID 0 est la somme des tailles des volumes contenues par celle-ci, et la bande passante correspond au total de bande passante disponible des volumes de la grappe. Par exemple, deux volumes io1 de 500 Gio avec 4 000 IOPS approvisionnés pour chacun créent une grappe RAID 0 de 1 000 Gio avec une bande passante disponible de 8 000 IOPS et 1 000 Mo/s de débit.

Important

RAID 5 et RAID 6 ne sont pas recommandés pour Amazon EBS, car les opérations d’écritures de parité de ces modes RAID consomment certaines des IOPS (IOPS) disponibles pour vos volumes. En fonction de la configuration de votre grappe RAID, ces modes RAID fournissent de 20 à 30 % d’IOPS utilisables en moins qu’une configuration RAID 0. Le coût accru est également un facteur à prendre en compte avec ces modes RAID ; avec l’utilisation de tailles et de vitesses de volume identiques, une grappe RAID 0 à 2 volumes peut offrir de meilleures performances qu’une grappe RAID 6 à 4 volumes dont le coût est deux fois plus élevé.

L’utilisation d’un RAID 1 n’est pas non plus recommandée avec Amazon EBS. Un RAID 1 nécessite une plus grande bande passante entre Amazon EC2 et Amazon EBS que les configurations non-RAID, car les données sont écrites simultanément sur plusieurs volumes. En outre, un RAID 1 ne fournit aucune amélioration des performances d’écriture.

Création d'une matrice RAID 0

Pour créer la grappe RAID 0, suivez la procédure suivante.

Considérations
  • Avant d'exécuter cette procédure, vous devez déterminer la taille de votre matrice RAID 0 et le nombre d'IOPS à allouer.

  • Créez des volumes avec des tailles et des valeurs de performances d’IOPS (IOPS) identiques pour votre grappe. Veillez à ne pas créer une grappe qui dépasse la bande passante disponible de votre instance EC2.

  • Vous devez éviter de démarrer à partir d’un volume RAID. Si l'un des appareils tombe en panne, il se peut que vous ne puissiez pas démarrer le système d'exploitation.

Pour créer une grappe RAID 0 sous Linux
  1. Créez les volumes Amazon EBS pour votre grappe. Pour de plus amples informations, veuillez consulter Créez un volume Amazon EBS..

  2. Attachez les volumes Amazon EBS à l’instance devant héberger la grappe. Pour plus d’informations, consultez Attacher un volume Amazon EBS à une instance.

  3. Utilisez la commande mdadm pour créer une unité RAID logique à partir des volumes Amazon EBS nouvellement attachés. Remplacez le nombre de volumes de votre grappe par number_of_volumes et les noms de périphérique de chaque volume de la grappe (tels que /dev/xvdf) par device_name. Vous pouvez également remplacer MY_RAID par votre propre nom unique pour la grappe.

    Note

    Vous pouvez afficher la liste des unités de votre instance avec la commande lsblk pour trouver les noms d’unité.

    Pour créer une grappe RAID 0, exécutez la commande suivante (notez l’option --level=0 pour agréger la grappe) :

    [ec2-user ~]$ sudo mdadm --create --verbose /dev/md0 --level=0 --name=MY_RAID --raid-devices=number_of_volumes device_name1 device_name2
    Astuce

    Si l’erreur mdadm: command not found s’affiche, utilisez la commande suivante pour installer mdadm : sudo yum install mdadm.

  4. Laissez à la grappe RAID le temps de s’initialiser et se synchroniser. Vous pouvez suivre la progression de ces opérations avec la commande suivante :

    [ec2-user ~]$ sudo cat /proc/mdstat

    Voici un exemple de sortie :

    Personalities : [raid0] md0 : active raid0 xvdc[1] xvdb[0] 41910272 blocks super 1.2 512k chunks unused devices: <none>

    En général, vous pouvez afficher des informations détaillées sur votre grappe RAID avec la commande suivante :

    [ec2-user ~]$ sudo mdadm --detail /dev/md0

    Voici un exemple de sortie :

    /dev/md0: Version : 1.2 Creation Time : Wed May 19 11:12:56 2021 Raid Level : raid0 Array Size : 41910272 (39.97 GiB 42.92 GB) Raid Devices : 2 Total Devices : 2 Persistence : Superblock is persistent Update Time : Wed May 19 11:12:56 2021 State : clean Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 Chunk Size : 512K Consistency Policy : none Name : MY_RAID UUID : 646aa723:db31bbc7:13c43daf:d5c51e0c Events : 0 Number Major Minor RaidDevice State 0 202 16 0 active sync /dev/sdb 1 202 32 1 active sync /dev/sdc
  5. Créez un système de fichiers sur votre grappe RAID et attribuez-lui une étiquette à utiliser quand vous le monterez ultérieurement. Par exemple, pour créer un système de fichiers ext4 avec l’étiquette MY_RAID, exécutez la commande suivante :

    [ec2-user ~]$ sudo mkfs.ext4 -L MY_RAID /dev/md0

    Selon les exigences de votre application ou les restrictions de votre système d’exploitation, vous pouvez utiliser un autre système de fichiers, comme ext3 ou XFS (consultez la documentation relative à votre système de fichiers pour trouver la commande de création de système de fichiers correspondante).

  6. Pour vous assurer que la grappe RAID est réassemblée automatiquement au démarrage, créez un fichier de configuration qui contient les informations RAID :

    [ec2-user ~]$ sudo mdadm --detail --scan | sudo tee -a /etc/mdadm.conf
    Note

    Si vous utilisez une distribution Linux autre qu’Amazon Linux, il se peut que vous deviez modifier cette commande. Par exemple, il se peut que vous deviez placer le fichier dans un autre emplacement, ou ajouter le Paramètre --examine. Pour plus d’informations, exécutez man mdadm.conf sur votre instance Linux.

  7. Créez une nouvelle une image ramdisk pour précharger correctement les modules de périphérique de stockage en mode bloc pour votre nouvelle configuration RAID :

    [ec2-user ~]$ sudo dracut -H -f /boot/initramfs-$(uname -r).img $(uname -r)
  8. Créez un point de montage (mount) pour votre grappe RAID.

    [ec2-user ~]$ sudo mkdir -p /mnt/raid
  9. Enfin, montez l’unité RAID sur le point de montage que vous avez créé :

    [ec2-user ~]$ sudo mount LABEL=MY_RAID /mnt/raid

    Votre unité RAID est maintenant prête à être utilisée.

  10. (Facultatif) Pour monter ce volume Amazon EBS à chaque redémarrage du système, ajoutez une entrée pour l’appareil dans le fichier /etc/fstab.

    1. Créez une sauvegarde de votre fichier /etc/fstab que vous pouvez utiliser si vous détruisez ou supprimez accidentellement ce fichier en l’éditant.

      [ec2-user ~]$ sudo cp /etc/fstab /etc/fstab.orig
    2. Ouvrez le fichier /etc/fstab avec votre éditeur de texte préféré (comme nano ou vim).

    3. Placez en commentaires les lignes commençant par « UUID= » et, à la fin du fichier, ajoutez une nouvelle ligne pour votre volume RAID à l’aide du format suivant :

      device_label mount_point file_system_type fs_mntops fs_freq fs_passno

      Les trois derniers champs de cette ligne correspondent aux options de montage du système de fichiers, à la fréquence de vidage du système de fichiers et à l’ordre des contrôles de système de fichiers au démarrage. Si vous ne savez pas quelles valeurs utiliser, utilisez les valeurs de l’exemple ci-dessous (defaults,nofail 0 2). Pour plus d’informations sur les entrées /etc/fstab, consultez la page du manuel fstab (en entrant man fstab sur la ligne de commande). Par exemple, pour monter le système de fichiers ext4 sur l’unité avec l’étiquette MY_RAID au point de montage /mnt/raid, ajoutez l’entrée suivante à /etc/fstab.

      Note

      Si jamais vous prévoyez de démarrer votre instance sans ce volume attaché (par exemple, pour que ce volume puisse basculer entre différentes instances), vous devez ajouter l’option de montage nofail qui permet à l’instance de démarrer même si des erreurs se produisent lors du montage du volume. Les dérivés Debian, comme Ubuntu, doivent également ajouter l’option de montage nobootwait.

      LABEL=MY_RAID /mnt/raid ext4 defaults,nofail 0 2
    4. Après avoir ajouté la nouvelle entrée à /etc/fstab, vous devez vérifier que celle-ci fonctionne. Exécutez la commande sudo mount -a pour monter tous les systèmes de fichiers dans /etc/fstab.

      [ec2-user ~]$ sudo mount -a

      Si la commande précédente ne génère pas d’erreur, votre fichier /etc/fstab est correct et votre système de fichiers sera monté automatiquement au prochain démarrage. Si la commande génère des erreurs, examinez celles-ci et essayez de corriger votre fichier /etc/fstab.

      Avertissement

      Des erreurs dans le fichier /etc/fstab peuvent rendre un système impossible à démarrer. N’arrêtez pas un système dont le fichier /etc/fstab contient des erreurs.

    5. (Facultatif) Si vous n’êtes pas sûr de savoir comment corriger des erreurs dans /etc/fstab, vous avez toujours la possibilité de restaurer votre fichier /etc/fstab de sauvegarde avec la commande suivante.

      [ec2-user ~]$ sudo mv /etc/fstab.orig /etc/fstab
Pour créer une grappe RAID 0 sous Windows
  1. Créez les volumes Amazon EBS pour votre grappe. Pour de plus amples informations, veuillez consulter Créez un volume Amazon EBS..

  2. Attachez les volumes Amazon EBS à l’instance devant héberger la grappe. Pour plus d’informations, consultez Attacher un volume Amazon EBS à une instance.

  3. Connectez-vous à votre instance Windows. Pour plus d’informations, consultez Connexion à votre instance Windows.

  4. Ouvrez une invite de commande et tapez la commande diskpart.

    diskpart Microsoft DiskPart version 6.1.7601 Copyright (C) 1999-2008 Microsoft Corporation. On computer: WIN-BM6QPPL51CO
  5. A l’invite DISKPART, affichez la liste des disques disponibles avec la commande suivante.

    DISKPART> list disk Disk ### Status Size Free Dyn Gpt -------- ------------- ------- ------- --- --- Disk 0 Online 30 GB 0 B Disk 1 Online 8 GB 0 B Disk 2 Online 8 GB 0 B

    Identifiez les disques que vous souhaitez utiliser dans votre grappe et notez leurs numéros.

  6. Chaque disque à utiliser dans votre grappe doit être un disque dynamique en ligne ne contenant pas de volumes existants. Utilisez les étapes suivantes pour convertir des disques de base en disques dynamiques et supprimer les volumes existants.

    1. Sélectionnez un disque à utiliser dans votre grappe avec la commande suivante, en remplaçant n par le numéro de votre disque.

      DISKPART> select disk n Disk n is now the selected disk.
    2. Si le disque sélectionné est affiché comme étant Offline, mettez-le en ligne en exécutant la commande online disk.

    3. Si le disque sélectionné ne comporte pas d’astérisque dans la colonne Dyn dans la sortie de la commande list disk précédente, vous devez le convertir en disque dynamique.

      DISKPART> convert dynamic
      Note

      Si une erreur indique que le disque est protégé en écriture, vous pouvez effacer l’indicateur de lecture seule avec la commande ATTRIBUTE DISK CLEAR READONLY, puis retenter la conversion en disque dynamique.

    4. Utilisez la commande detail disk pour vérifier s’il existe des volumes sur le disque sélectionné.

      DISKPART> detail disk XENSRC PVDISK SCSI Disk Device Disk ID: 2D8BF659 Type : SCSI Status : Online Path : 0 Target : 1 LUN ID : 0 Location Path : PCIROOT(0)#PCI(0300)#SCSI(P00T01L00) Current Read-only State : No Read-only : No Boot Disk : No Pagefile Disk : No Hibernation File Disk : No Crashdump Disk : No Clustered Disk : No Volume ### Ltr Label Fs Type Size Status Info ---------- --- ----------- ----- ---------- ------- --------- -------- Volume 2 D NEW VOLUME FAT32 Simple 8189 MB Healthy

      Notez les numéros des volumes figurant sur le disque. Dans cet exemple, le numéro de volume est 2. Si le disque ne contient pas de volume, vous pouvez ignorer l’étape suivante.

    5. (Obligatoire uniquement si des volumes ont été identifiés à l’étape précédente) Sélectionnez et supprimez les volumes existants sur le disque que vous avez identifiés à l’étape précédente.

      Avertissement

      Cette opération détruit les données existant sur le volume.

      1. Sélectionnez le volume en remplaçant n par le numéro de votre volume.

        DISKPART> select volume n Volume n is the selected volume.
      2. Supprimez le volume.

        DISKPART> delete volume DiskPart successfully deleted the volume.
      3. Répétez ces sous-étapes pour chaque volume à supprimer sur le disque sélectionné.

    6. Répétez l’opération Étape 6 pour chaque disque à utiliser dans votre grappe.

  7. Vérifiez que les disques que vous voulez utiliser sont maintenant dynamiques. Dans ce cas, nous utilisons les disques 1 et 2 pour le volume RAID.

    DISKPART> list disk Disk ### Status Size Free Dyn Gpt -------- ------------- ------- ------- --- --- Disk 0 Online 30 GB 0 B Disk 1 Online 8 GB 0 B * Disk 2 Online 8 GB 0 B *
  8. Créez votre grappe RAID. Sous Windows, un volume RAID 0 est appelé volume agrégé par bandes.

    Pour créer une grappe de volumes agrégés par bandes sur les disques 1 et 2, utilisez la commande suivante (notez l’option stripe pour agréger la grappe) :

    DISKPART> create volume stripe disk=1,2 DiskPart successfully created the volume.
  9. Vérifiez votre nouveau volume.

    DISKPART> list volume DISKPART> list volume Volume ### Ltr Label Fs Type Size Status Info ---------- --- ----------- ----- ---------- ------- --------- -------- Volume 0 C NTFS Partition 29 GB Healthy System Volume 1 RAW Stripe 15 GB Healthy

    Remarquez que la colonne Type indique maintenant que le volume 1 est un volume stripe.

  10. Sélectionnez et formatez votre volume pour pouvoir commencer à l’utiliser.

    1. Sélectionnez le volume à formater en remplaçant n par le numéro de votre volume.

      DISKPART> select volume n Volume n is the selected volume.
    2. Formatez le volume.

      Note

      Pour effectuer un formatage complet, omettez l’option quick.

      DISKPART> format quick recommended label="My new volume" 100 percent completed DiskPart successfully formatted the volume.
    3. Affectez une lettre de lecteur disponible à votre volume.

      DISKPART> assign letter f DiskPart successfully assigned the drive letter or mount point.

    Votre nouveau volume est maintenant prêt à être utilisé.

Créer des instantanés de volumes dans une grappe RAID

Si vous voulez sauvegarder les données sur les volumes EBS d’une grappe RAID à l’aide d’instantanés, vous devez vous assurer que les instantanés sont cohérents. La raison en est que les instantanés de ces volumes sont créés indépendamment. La restauration de volumes EBS d’une grappe RAID à partir d’instantanés non synchronisés peut dégrader l’intégrité de la grappe.

Pour créer un ensemble cohérent d’instantanés pour votre grappe RAID, utilisez les instantanés multi-volume EBS. Les instantanés multivolumes vous permettent de prendre point-in-time des instantanés coordonnés avec les données et cohérents en cas de crash sur plusieurs volumes EBS attachés à une instance EC2. Vous n’avez pas à arrêter votre instance pour la coordonner entre les volumes et assurer la régularité, car les instantanés sont automatiquement pris sur plusieurs volumes EBS. Pour en savoir plus, consultez les étapes de la création d’instantanés multi-volume dans la section Création d’instantanés Amazon EBS.