Ich habe die Schritte zum Ändern der Größe eines EC2-Volumes befolgt
- Die Instanz wurde gestoppt
- Habe einen Schnappschuss des aktuellen Volumes gemacht
- Erstellt ein neues Volume aus dem vorherigen Snapshot mit einer größeren Größe in derselben Region
- Hat das alte Volume von der Instanz entfernt
- Hängte das neue Volume an derselben Instanz an die Instanz an
Das alte Volume war 5 GB und das, das ich erstellt habe, ist 100 GB. Wenn ich jetzt die Instanz neu starte und ausführe, df -h I
sehe ich dies immer noch
Filesystem Size Used Avail Use% Mounted on
/dev/xvde1 4.7G 3.5G 1021M 78% /
tmpfs 296M 0 296M 0% /dev/shm
Das bekomme ich beim Laufen
sudo resize2fs /dev/xvde1
The filesystem is already 1247037 blocks long. Nothing to do!
Wenn ich renne, cat /proc/partitions
sehe ich
202 64 104857600 xvde
202 65 4988151 xvde1
202 66 249007 xvde2
Soweit ich weiß, sollte xvde die gleichen Daten wie xvde1 haben, wenn ich die richtigen Schritte befolgt habe, aber ich weiß nicht, wie ich sie verwenden soll
Wie kann ich das neue Volume oder umount xvde1 verwenden und stattdessen xvde bereitstellen?
Ich kann nicht verstehen, was ich falsch mache
Ich habe es auch versucht sudo ifs_growfs /dev/xvde1
xfs_growfs: /dev/xvde1 is not a mounted XFS filesystem
Übrigens ist dies eine Linux-Box mit Centos 6.2 x86_64
Vielen Dank im Voraus für Ihre Hilfe
quelle
c
undu
tatsächlich in den veralteten Modus wechseln.Es ist nicht mehr erforderlich, die Instanz anzuhalten und das EBS-Volume zu trennen, um die Größe zu ändern!
13-Feb-2017 Amazon kündigte an: " Amazon EBS Update - Neue elastische Volumes verändern alles "
Der Prozess funktioniert auch dann, wenn das zu erweiternde Volume das Root-Volume der laufenden Instanz ist!
Angenommen, wir möchten das Boot-Laufwerk von Ubuntu von 8G auf 16G "on-the-fly" erhöhen.
Schritt 1) Melden Sie sich bei der AWS-Webkonsole an -> EBS -> Klicken Sie mit der rechten Maustaste auf diejenige, deren Größe Sie ändern möchten -> "Volumen ändern" -> Ändern Sie das Feld "Größe" und klicken Sie auf die Schaltfläche [Ändern]
Schritt-2) ssh in die Instanz und ändern Sie die Größe der Partition:
Lassen Sie uns Blockgeräte auflisten, die an unsere Box angeschlossen sind:
Wie Sie sehen können, ist / dev / xvda1 immer noch eine 8-GiB-Partition auf einem 16-GiB-Gerät und es gibt keine anderen Partitionen auf dem Volume. Verwenden wir "growpart", um die Größe der 8G-Partition auf 16G zu ändern:
Lassen Sie uns das Ergebnis überprüfen (Sie können sehen, dass / dev / xvda1 jetzt 16G ist):
Viele SO-Antworten schlagen vor, fdisk mit Partitionen zum Löschen / Neuerstellen zu verwenden. Dies ist ein unangenehmer, riskanter und fehleranfälliger Prozess, insbesondere wenn wir das Startlaufwerk wechseln.
Schritt 3) Ändern Sie die Größe des Dateisystems, um den neuen Partitionsspeicherplatz voll auszunutzen
Wir haben also keine Ausfallzeiten und viel neuen Speicherplatz.
Genießen!
Update: Update: Verwenden Sie sudo xfs_growfs / dev / xvda1 anstelle von resize2fs beim XFS-Dateisystem.
quelle
Präfekt Kommentar von jperelli oben.
Ich stand heute vor dem gleichen Problem. In der AWS-Dokumentation wird Growpart nicht eindeutig erwähnt. Ich habe es auf die harte Tour herausgefunden und tatsächlich funktionierten die beiden Befehle perfekt auf M4.large und M4.xlarge mit Ubuntu
quelle
[Gelöst]
Das musste getan werden
fdisk /dev/xvde
resize2fs /dev/xvde1
df -h
Das ist es
Viel Glück!
quelle
Melden Sie sich bei der AWS-Webkonsole an -> EBS -> Klicken Sie mit der rechten Maustaste auf diejenige, deren Größe Sie ändern möchten -> "Volumen ändern" -> ändern Sie das Feld "Größe" und klicken Sie auf die Schaltfläche [Ändern]
growpart /dev/xvda 1
resize2fs /dev/xvda1
Dies ist eine auf den Punkt gebrachte Version der Antwort von Dmitry Shevkoplyas. In der AWS-Dokumentation wird der
growpart
Befehl nicht angezeigt. Dies funktioniert gut für Ubuntu AMI.quelle
Die beiden oben genannten Befehle haben mir Zeit für AWS Ubuntu Ec2-Instanzen gespart.
quelle
Dies funktioniert für das xfs-Dateisystem. Führen Sie einfach diesen Befehl aus
quelle
Nur für den Fall, dass jemand hier für die GCP Google Cloud-Plattform ist,
versuchen Sie Folgendes:
quelle
Haben Sie eine Partition auf diesem Volume erstellt? Wenn Sie dies getan haben, müssen Sie zuerst die Partition vergrößern.
quelle
Das bootfähige Flag (a) hat in meinem Fall nicht funktioniert (EC2, centos6.5), daher musste ich das Volume aus dem Snapshot neu erstellen. Nachdem ich alle Schritte mit Ausnahme des bootfähigen Flags wiederholt hatte, funktionierte alles einwandfrei, sodass ich danach die Größe von 2FS ändern konnte. Danke dir!
quelle
Danke, @Dimitry, es hat wie ein Zauber mit einer kleinen Änderung funktioniert, die zu meinem Dateisystem passt.
Quelle: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-expand-volume.html#recognize-expanded-volume-linux
Verwenden Sie dann den folgenden Befehl, um den Einhängepunkt des Dateisystems zu ersetzen (XFS-Dateisysteme müssen eingehängt werden, um ihre Größe zu ändern):
Hinweis Wenn ein xfsctl-Fehler auftritt: Speicherfehler kann nicht zugeordnet werden. Möglicherweise müssen Sie den Linux-Kernel auf Ihrer Instanz aktualisieren. Weitere Informationen finden Sie in der Dokumentation Ihres jeweiligen Betriebssystems. Wenn Sie eine erhalten Das Dateisystem ist bereits nnnnnnn Blöcke lang. Nichts zu tun! Fehler, siehe Erweitern einer Linux-Partition.
quelle
Ich habe nicht genug Vertreter, um oben einen Kommentar abzugeben. Beachten Sie jedoch auch in den obigen Kommentaren, dass Sie Ihre Instanz beschädigen können, wenn Sie bei 1 beginnen. Wenn Sie nach dem Start von fdisk auf 'u' klicken, bevor Sie Ihre Partitionen mit 'p' auflisten, erhalten Sie die richtige Startnummer, damit Sie Ihre Volumes nicht beschädigen. Für Centos 6.5 AMI war auch wie oben erwähnt 2048 für mich richtig.
quelle
Für den Fall, dass jemand das Problem hatte, bei dem er auf dieses Problem mit 100% iger Nutzung gestoßen ist, und keinen Platz zum Ausführen des Befehls growpart (da dadurch eine Datei in / tmp erstellt wird).
Hier ist ein Befehl, den ich gefunden habe, der umgeht, auch wenn das EBS-Volume verwendet wird, und auch, wenn Sie keinen Platz mehr auf Ihrem ec2 haben und sich bei 100% befinden
siehe diese Seite hier:
https://www.elastic.co/blog/autoresize-ebs-root-volume-on-aws-amis
quelle
sudo resize2fs /dev/xvda1
Update folgen/etc/fstab
, erst danachdf -h
wird der vergrößerte SpeicherplatzSetzen Sie ein Leerzeichen zwischen Name und Nummer, z.
Beachten Sie, dass zwischen dem Gerätenamen und der Partitionsnummer ein Leerzeichen steht.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recognize-expanded-volume-linux.html
quelle