AWS Tutorial: EBS-Volume an eine EC2-Instanz anhängen, formatieren und dauerhaft mounten
In diesem Tutorial lernst du Schritt für Schritt, wie du ein Amazon Elastic Block Store (EBS) Volume erstellst, an eine laufende Linux-basierte EC2-Instanz anhängst, es mit einem Dateisystem formatierst, einhängst (mountest) und den Mount über Systemneustarts hinweg dauerhaft machst.
Voraussetzungen
- Ein aktives AWS-Konto.
- Eine bereits laufende EC2-Instanz (z. B. Amazon Linux oder Ubuntu).
- SSH-Zugriff auf deine EC2-Instanz.
Schritt 1: EBS-Volume erstellen und an die EC2-Instanz anhängen (AWS Console)
- Öffne die AWS Management Console und navigiere zu EC2.
- Klicke im linken Menü unter Elastic Block Store auf Volumes.
- Klicke auf Create Volume.
- Volume Type: Wähle z. B.
General Purpose SSD (gp3). - Size: Gib die gewünschte Größe an (z. B. 10 GiB).
- Availability Zone: Wichtig: Wähle exakt dieselbe Availability Zone (z. B.
eu-central-1a), in der sich deine EC2-Instanz befindet!
- Volume Type: Wähle z. B.
- Klicke auf Create volume.
- Wähle das neu erstellte Volume aus, klicke oben rechts auf Actions > Attach volume.
- Wähle deine EC2-Instanz aus.
- Der Gerätename wird automatisch vorgeschlagen (z. B.
/dev/sdf). Klicke auf Attach volume.
Schritt 2: Mit der EC2-Instanz verbinden
Verbinde dich über dein Terminal per SSH mit der Instanz:
ssh -i /pfad/zu/deinem-key.pem ec2-user@<Öffentliche-IP-deiner-Instanz>
(Hinweis: Bei Ubuntu lautet der Standard-Benutzer ubuntu, bei Amazon Linux ec2-user)
Schritt 3: Neues Volume im System identifizieren
Überprüfe, welche Speichergeräte dem Linux-System bekannt sind:
lsblk
Ausgabebeispiel:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
xvda 202:0 0 8G 0 disk
└─xvda1 202:1 0 8G 0 disk /
xvdf 202:80 0 10G 0 disk
Wichtiger Hinweis zu NVMe: Auf neueren, Nitro-basierten EC2-Instanzen (z. B.
t3,c5,m5) werden die Volumes als NVMe-Geräte erkannt. Dein Gerät heißt dann eventuell nicht/dev/xvdf, sondern/dev/nvme1n1. Passe die folgenden Befehle an deinen tatsächlichen Gerätenamen an!
Schritt 4: Dateisystem erstellen (Formatieren)
Bevor du das Volume nutzen kannst, muss es formatiert werden.
-
Prüfen, ob bereits Daten/Dateisysteme vorhanden sind:
sudo file -s /dev/xvdfWenn die Ausgabe
/dev/xvdf: datalautet, ist die Festplatte leer und kann formatiert werden. -
Dateisystem erstellen (z. B.
ext4):sudo mkfs -t ext4 /dev/xvdf(Alternativ kannst du auch
xfsnutzen:sudo mkfs -t xfs /dev/xvdf)
Schritt 5: Volume manuell mounten (Einhängen)
-
Erstelle ein Verzeichnis (Mount-Point), an dem das Volume eingehängt werden soll:
sudo mkdir /data -
Hänge das Volume in dieses Verzeichnis ein:
sudo mount /dev/xvdf /data -
Prüfe, ob der Mount erfolgreich war:
df -hDu solltest nun
/datamit der entsprechenden Größe in der Liste sehen.
Schritt 6: Dauerhaftes Mounten einrichten (Automatischer Mount beim Neustart)
Wird die EC2-Instanz neu gestartet, geht ein manueller Mount verloren. Um das Volume dauerhaft zu mounten, muss es in der Datei /etc/fstab eingetragen werden.
Best Practice: Verwende dafür immer die UUID (Universally Unique Identifier) anstelle des Gerätenamens, da sich Gerätenamen nach Neustarts ändern können.
-
Ermittle die UUID des neuen Volumes:
sudo blkidSuche nach
/dev/xvdfund kopiere die UUID (ohne Anführungszeichen).
Beispiel:UUID="4a72d3e1-22e3-4c90-9519-abc123def456" -
Erstelle ein Backup der aktuellen
fstab-Datei:sudo cp /etc/fstab /etc/fstab.bak -
Öffne
/etc/fstabmit einem Texteditor (z. B. nano):sudo nano /etc/fstab -
Füge am Ende der Datei eine neue Zeile nach folgendem Muster ein:
UUID=DEINE-KOPIERTE-UUID /data ext4 defaults,nofail 0 2(Ersetze
DEINE-KOPIERTE-UUIDmit deiner echten UUID und ggf.ext4durchxfs, falls du dieses gewählt hast).Warum
nofailwichtig ist: Der Parameternofailsorgt dafür, dass die EC2-Instanz auch dann ordnungsgemäß startet, wenn das EBS-Volume einmal getrennt wird oder fehlerhaft ist. -
Speichern und Schließen:
- In nano: Drücke
STRG + O, dannEnter(Speichern) und danachSTRG + X(Beenden).
- In nano: Drücke
-
Konfiguration testen (sehr wichtig!): Um sicherzustellen, dass keine Syntaxfehler in der
/etc/fstabvorhanden sind, hänge das Volume probehalber aus und mounte alles neu:sudo umount /data sudo mount -aWenn der Befehl
sudo mount -akeine Fehlermeldung ausgibt, war die Konfiguration erfolgreich. -
Letzte Kontrolle:
df -hDas Volume
/dataist nun wieder eingehängt und bleibt auch nach jedem Neustart der Instanz dauerhaft verfügbar.