Amazon EBS- und RAID-Konfiguration - Amazon EBS

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Amazon EBS- und RAID-Konfiguration

Mit Amazon EBS können Sie jede der Standard-RAID-Konfigurationen verwenden, die Sie auch für einen traditionellen blanken Metallserver verwenden können; Voraussetzung ist lediglich, dass die jeweilige RAID-Konfigurationen von dem Betriebssystem Ihrer Instance unterstützt wird. Dies liegt daran, dass RAID immer auf Softwareebene realisiert wird.

Amazon EBS-Volume-Daten werden über mehrere Server in einer Availability Zone repliziert, um den Verlust von Daten durch den Ausfall einer einzigen Komponente zu verhindern. Durch diese Replikation sind Amazon EBS-Volumes zehn mal so zuverlässig wie normale, handelsübliche Laufwerke. Weitere Informationen zu Regionen finden Sie unter Verfügbarkeit und Beständigkeit von Amazon EBS auf den Amazon EBS-Produktdetailseiten.

RAID-Konfigurationsoptionen

Wenn Sie ein RAID 0-Array erstellen, können Sie eine höhere Leistungsstufe für ein Dateisystem erreichen als mit einem einzigen Amazon EBS-Volume. Verwenden Sie RAID 0, wenn die I/O-Leistung von größter Bedeutung ist. Bei RAID 0 wird die I/O auf die Volumes in einem Stripe verteilt. Wenn Sie ein Volume hinzufügen, erhalten Sie einen beträchtlichen Zuwachs an Durchsatz und IOPS. Beachten Sie jedoch, dass die Leistung des Stripe auf das am schlechtesten leistungsfähige Volume im Set beschränkt ist und dass der Verlust eines einzelnen Volumes im Set zu einem vollständigen Datenverlust für das Array führt.

Die sich daraus ergebende Größe für einen RAID 0-Array entspricht der Summe der Größen der darin enthaltenen Volumes, und die Bandbreite ist die Summe der für die einzelnen Volumes jeweils verfügbaren Bandbreiten. Beispielsweise erstellen zwei 500-GiB-io1-Volumes mit jeweils 4 000 bereitgestellten IOPS ein 1 000-GiB-RAID-0-Array mit einer verfügbaren Bandbreite von 8 000 IOPS und 1 000 MiB/s Durchsatz.

Wichtig

RAID 5 und RAID 6 werden für Amazon EBS nicht empfohlen, da die Schreibvorgänge für Paritätsinformationen bei diesen RAID-Modi einen Teil der für Ihre Volumes verfügbaren IOPS verbrauchen. Abhängig von der Konfiguration Ihres RAID-Arrays bieten diese RAID-Modi 20-30 % weniger nutzbare IOPS als eine RAID 0-Konfiguration. Die höheren Kosten spielen bei diesen RAID-Modi auch eine Rolle; bei identischen Größen und Geschwindigkeiten kann ein RAID 0-Array mit 2 Volumes ein RAID 6-Array mit 4 Volumes, das doppelt soviel kostet, an Leistung übertreffen.

RAID 1 wird auch nicht für die Verwendung mit Amazon EBS empfohlen. RAID 1 erfordert mehr Bandbreite von Amazon EC2 zu Amazon EBS als Nicht-RAID-Konfigurationen, da die Daten gleichzeitig auf mehrere Volumes geschrieben werden. Darüber hinaus bietet RAID 1 keine Verbesserung der Schreibleistung.

Erstellen Sie ein RAID 0-Array

Führen Sie die folgenden Schritte durch, um das RAID-0-Array zu erstellen.

Überlegungen
  • Bevor Sie dieses Verfahren durchführen, müssen Sie entscheiden, wie groß Ihr RAID 0-Array sein soll und wie viele IOPS bereitgestellt werden sollen.

  • Erstellen Sie Volumes mit jeweils identischen Werten für die Größe und IOPS-Leistung für Ihr Array. Stellen Sie sicher, dass Sie kein Array erstellen, das die verfügbare Bandbreite Ihrer EC2-Instance überschreitet.

  • Sie sollten es vermeiden, von einem RAID-Volume zu booten. Wenn eines der Geräte ausfällt, können Sie das Betriebssystem möglicherweise nicht starten.

So erstellen Sie ein RAID-0-Array unter Linux
  1. Erstellen Sie die Amazon EBS-Volumes für Ihr Array. Weitere Informationen finden Sie unter Erstellen Sie ein Amazon EBS-Volume.

  2. Weisen Sie die Amazon EBS-Volumes der Instance zu, in der das Array gehostet werden soll. Weitere Informationen finden Sie unter Zuordnen eines Amazon EBS-Volumes zu einer Instance.

  3. Verwenden Sie den Befehl mdadm, um ein logisches RAID-Gerät aus den gerade zugewiesenen Amazon EBS-Volumes zu erstellen. Ersetzen Sie number_of_volumes durch die Anzahl der Volumes in Ihrem Array und device_name durch den Gerätenamen für jedes Volume im Array (z. B. /dev/xvdf). Sie können MY_RAID auch durch einen eigenen Namen für das Array ersetzen.

    Anmerkung

    Sie können die Geräte in Ihrer Instance mit dem Befehl lsblk auflisten, um die Gerätenamen anzuzeigen.

    Sie erstellen ein RAID 0-Array, indem Sie den folgenden Befehl ausführen (achten Sie auf die Option --level=0 für das Striping des Arrays):

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

    Wenn Sie den Fehler mdadm: command not found erhalten, verwenden Sie den folgenden Befehl, um mdadm zu installieren: sudo yum install mdadm.

  4. Warten Sie, bis das RAID-Array initialisiert und synchronisiert wird. Sie können den Fortschritt dieser Vorgänge mit dem folgenden Befehl verfolgen:

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

    Ausgabebeispiel:

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

    Allgemein können Sie detaillierte Informationen zu Ihrem RAID-Array mit dem folgenden Befehl anzeigen:

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

    Ausgabebeispiel:

    /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. Erstellen Sie ein Dateisystem in Ihrem RAID-Array und geben Sie diesem Dateisystem eine Bezeichnung; Sie verwenden diese Bezeichnung, wenn Sie es später mounten. Sie erstellen z. B. ein ext4-Dateisystem mit der Bezeichnung MY_RAID, indem Sie den folgenden Befehl ausführen.

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

    Abhängig von den Anforderungen an Ihre Anwendung oder den Einschränkungen für Ihr Betriebssystem können Sie einen anderes Dateisystem wie Ext3 oder XFS verwenden (weitere Informationen finden Sie in der Dokumentation zum entsprechenden Befehl für die Erstellung des Dateisystems).

  6. Um sicherzustellen, dass das RAID-Array beim Booten automatisch wieder zusammengesetzt wird, erstellen Sie eine Konfigurationsdatei, die die RAID-Informationen enthält:

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

    Wenn Sie eine andere Linux-Distribution als Amazon Linux verwenden, müssen Sie diesen Befehl möglicherweise ändern. Sie könnten beispielsweise die Datei an einem anderen Ort ablegen oder Sie müssen möglicherweise die --examine-Parameter hinzufügen. Um weitere Informationen zu erhalten, führen Sie man mdadm.conf auf Ihrer Linux-Instance aus.

  7. Erstellen Sie ein neues Ramdisk-Image, um die Blockgerät-Module für Ihre neue RAID-Konfiguration korrekt vorzuladen:

    [ec2-user ~]$ sudo dracut -H -f /boot/initramfs-$(uname -r).img $(uname -r)
  8. Erstellen Sie einen Einhängepunkt für Ihr RAID-Array.

    [ec2-user ~]$ sudo mkdir -p /mnt/raid
  9. Als letzten Schritt mounten Sie das RAID-Gerät an dem Einhängepunkt, den Sie erstellt haben:

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

    Das RAID-Gerät ist nun einsatzbereit.

  10. (Optional) Sie mounten dieses Amazon EBS-Volume bei jedem Neustart des Systems, indem Sie in der Datei /etc/fstab einen Eintrag für das Gerät hinzufügen.

    1. Erstellen Sie eine Backup-Kopie der Datei /etc/fstab für den Fall, dass Sie diese Datei beim Bearbeiten versehentlich beschädigen oder löschen.

      [ec2-user ~]$ sudo cp /etc/fstab /etc/fstab.orig
    2. Öffnen Sie die Datei /etc/fstab mit einem Texteditor Ihrer Wahl (z. B. nano oder vim).

    3. Kommentieren Sie alle Zeilen aus, die mit "UUID=" beginnen, und fügen Sie am Ende der Datei eine neue Zeile für Ihr RAID-Volume hinzu; verwenden Sie dabei das folgende Format:

      device_label mount_point file_system_type fs_mntops fs_freq fs_passno

      Die letzten drei Felder in dieser Zeile sind die Mounting-Optionen, die Sicherungshäufigkeit und die Reihenfolge der Überprüfungen beim Starten des Dateisystems. Wenn Sie nicht wissen, welche Werte Sie hier angeben sollten, dann verwenden Sie die Werte im Beispiel unten (defaults,nofail 0 2). Weitere Informationen zu /etc/fstab-Einträgen finden Sie in der fstab-Handbuchseite (durch Eingabe von man fstab in der Befehlszeile). Sie mounten z. B. das Ext4-Dateisystem auf dem Gerät mit der Bezeichnung MY_RAID an dem Einhängepunkt /mnt/raid, indem Sie den folgenden Eintrag in /etc/fstab hinzufügen.

      Anmerkung

      Wenn Sie jemals vorhaben, Ihre Instance zu booten, ohne dass dieses Volume angefügt ist (z. B. wenn dieses Volume zwischen verschiedenen Instances hin und her bewegt wird), sollten Sie die Mount-Option nofail hinzufügen; auf diese Weise ist ein Booten der Instance möglich, auch wenn beim Mounten des Volumes Probleme auftreten. Unter Debian-Derivaten wie Ubuntu muss außerdem die Mount-Option nobootwait hinzugefügt werden.

      LABEL=MY_RAID /mnt/raid ext4 defaults,nofail 0 2
    4. Wenn Sie den neuen Eintrag in /etc/fstab hinzugefügt haben, müssen Sie prüfen, ob Ihr Eintrag funktioniert. Führen Sie den Befehl sudo mount -a zum Mounten aller Dateisysteme in /etc/fstab aus.

      [ec2-user ~]$ sudo mount -a

      Wenn der letzte Befehl keinen Fehler produziert, dann ist die /etc/fstab-Datei in Ordnung und das Dateisystem wird beim nächste Bootvorgang automatisch gemountet. Wenn der Befehl Fehler zurückgibt, prüfen Sie diese und versuchen Sie, den Eintrag in entsprechend zu korrigiere /etc/fstab.

      Warnung

      Fehler in der Datei /etc/fstab können dazu führen, dass ein System nicht mehr gestartet werden kann. Fahren Sie das System nicht herunter, wenn Fehler in der Datei /etc/fstab auftreten.

    5. (Optional) Wenn Sie nicht sicher sind, wie Sie die Fehler in /etc/fstab korrigieren können, können Sie immer noch Ihre Backup-Kopie der Datei /etc/fstab wiederherstellen, indem Sie den folgenden Befehl ausführen.

      [ec2-user ~]$ sudo mv /etc/fstab.orig /etc/fstab
So erstellen Sie ein RAID-0-Array unter Windows
  1. Erstellen Sie die Amazon EBS-Volumes für Ihr Array. Weitere Informationen finden Sie unter Erstellen Sie ein Amazon EBS-Volume.

  2. Weisen Sie die Amazon EBS-Volumes der Instance zu, in der das Array gehostet werden soll. Weitere Informationen finden Sie unter Zuordnen eines Amazon EBS-Volumes zu einer Instance.

  3. Herstellen einer Verbindung mit Ihrer Windows-Instance. Weitere Informationen finden Sie unter Verbinden mit Ihrer Windows-Instance.

  4. Öffnen Sie eine Eingabeaufforderung und geben Sie den Befehl diskpart ein.

    diskpart Microsoft DiskPart version 6.1.7601 Copyright (C) 1999-2008 Microsoft Corporation. On computer: WIN-BM6QPPL51CO
  5. Listen Sie an der DISKPART-Eingabeaufforderung mit dem folgenden Befehl die verfügbaren Datenträger auf.

    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

    Bestimmen Sie die Datenträger, die Sie in Ihrem Array verwenden möchten, und notieren Sie sich die entsprechenden Nummern.

  6. Jeder Datenträger, den Sie in Ihrem Array verwenden möchten, muss ein dynamischer Online-Datenträger sein, auf dem keine Volumes vorhanden sind. Führen Sie die folgenden Schritte aus, um Basis-Datenträger in dynamische Datenträger zu konvertieren und alle vorhandenen Volumes zu löschen.

    1. Wählen Sie mit dem folgenden Befehl einen Datenträger aus, den Sie verwenden möchten und ersetzen Sie n durch die entsprechende Nummer.

      DISKPART> select disk n Disk n is now the selected disk.
    2. Wenn der ausgewählte Datenträger als Offline angezeigt wird, schalten Sie ihn online, indem Sie den Befehl online disk ausführen.

    3. Wenn für den ausgewählten Datenträger in der Spalte Dyn in der letzten list disk-Befehlsausgabe kein Sternchen angezeigt wird, müssen Sie ihn in einen dynamische Datenträger konvertieren.

      DISKPART> convert dynamic
      Anmerkung

      Wenn eine Fehlermeldung ausgegeben wird, dass der Datenträger schreibgeschützt ist, können Sie das Schreibgeschützt-Flag mit dem Befehl ATTRIBUTE DISK CLEAR READONLY löschen und anschließend erneut versuchen, die Konvertierung in einen dynamische Datenträger durchzuführen.

    4. Mit dem Befehl detail disk können Sie prüfen, ob auf dem ausgewählten Datenträger Volumes vorhanden sind.

      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

      Notieren Sie sich die Nummern für alle Volumes auf dem Datenträger. In diesem Beispiel lautet die Nummer für das Volume 2. Wenn keine Volumes vorhanden sind, können Sie den nächsten Schritt überspringen.

    5. (Nur wenn im letzten Schritt Volumes ermittelt wurden) Wählen Sie alle im letzten Schritt ermittelten Volumes auf dem Datenträger aus und löschen Sie sie.

      Warnung

      Dadurch werden alle vorhandenen Daten auf dem Volume gelöscht.

      1. Wählen sie das Volume aus und ersetzen Sie n durch die Nummer für das Volume.

        DISKPART> select volume n Volume n is the selected volume.
      2. Löschen Sie das Volume.

        DISKPART> delete volume DiskPart successfully deleted the volume.
      3. Wiederholen Sie diese Teilschritte für jedes Volume, das Sie auf dem ausgewählten Datenträger löschen müssen.

    6. Wiederholen Sie Schritt 6 für jeden Datenträger, den Sie in Ihrem Array verwenden möchten.

  7. Stellen Sie sicher, dass alle Datenträger, die Sie verwenden möchten, dynamische Datenträger sind. In diesem Fall verwenden wir die Festplatten 1 und 2 für das RAID-Volume.

    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. Erstellen Sie Ihr RAID-Array. Unter Windows wird ein RAID 0-Volume als Stripe-Volume bezeichnet.

    Um ein Stripe-Volume-Array auf den Datenträgern 1 und 2 zu erstellen, verwenden Sie den folgenden Befehl (beachten Sie die stripe-Option zum Stripe des Arrays):

    DISKPART> create volume stripe disk=1,2 DiskPart successfully created the volume.
  9. Überprüfen Sie das neue 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

    Beachten Sie, dass die Spalte Type jetzt anzeigt, dass Volume 1 ein stripe-Volume ist.

  10. Wählen Sie Ihr Volume aus und formatieren Sie es; anschließend können Sie es verwenden.

    1. Wählen sie das Volume aus, das Sie formatieren möchten, und ersetzen Sie n durch die Nummer für das Volume.

      DISKPART> select volume n Volume n is the selected volume.
    2. Formatieren Sie das Volume.

      Anmerkung

      Sie führen eine vollständige Formatierung durch, indem Sie die Option quick auslassen.

      DISKPART> format quick recommended label="My new volume" 100 percent completed DiskPart successfully formatted the volume.
    3. Weisen Sie Ihrem Volume einen verfügbaren Laufwerkbuchstaben zu.

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

    Ihr neues Volume ist jetzt einsatzbereit.

Erstellen von Snapshots von Volumes in einem RAID-Array

Wenn Sie die Daten auf den EBS-Volumes in einem RAID-Array mit Snapshots sichern wollen, müssen Sie sicherstellen, dass die Snapshots konsistent sind. Dies liegt daran, dass die Snapshots dieser Volumes unabhängig voneinander erstellt werden. Die Wiederherstellung von EBS-Volumes in einem RAID-Array aus nicht synchronisierten Snapshots würde die Integrität des Arrays beeinträchtigen.

Um einen konsistenten Satz von Snapshots für Ihr RAID-Array zu erstellen, verwenden Sie EBS Multi-Volume Snapshots. Snapshots mit mehreren Volumes ermöglichen es Ihnen point-in-time, datenkoordinierte und absturzsichere Snapshots auf mehreren EBS-Volumes zu erstellen, die an eine EC2-Instance angeschlossen sind. Sie müssen Ihre Instance nicht stoppen, um die Koordination zwischen den Volumes zu gewährleisten und so die Konsistenz zu gewährleisten. Snapshots werden automatisch über mehrere EBS-Volumes verteilt. Weitere Informationen finden Sie in den Schritten zum Erstellen von Multi-Volume-Snapshots unter Erstellen von Amazon EBS-Snapshots.