Ich verwende derzeit eine ec2-Mikroinstanz und habe festgestellt, dass der Instanz gelegentlich der Speicherplatz ausgeht.
Was kann außer der Verwendung einer größeren Instanz noch getan werden?
amazon-web-services
amazon-ec2
out-of-memory
Ajtrichards
quelle
quelle
if
bedeutet "Eingabedatei",of
bedeutet "Ausgabedatei",bs
bedeutet "Blockgröße" undcount
ist die Anzahl der Blöcke, die Sie zuweisen möchten.man
Weitere Informationen finden Sie auf der Seite des Befehls: linux.die.net/man/1/ dd$> free -m
Der Austausch sollte auf der Instance Storage-Festplatte (kurzlebig) und nicht auf einem EBS-Gerät erfolgen. Das Austauschen verursacht viel IO und erhöht die Kosten für EBS. EBS ist auch langsamer als der Instance Store und der Instance Store ist mit bestimmten Arten von EC2-Instanzen kostenlos .
Es wird normalerweise auf / mnt gemountet, aber wenn nicht ausgeführt
Um dann eine Auslagerungsdatei auf diesem Gerät zu erstellen, gehen Sie für eine 4-GB-Auslagerungsdatei wie folgt vor
Stellen Sie sicher, dass kein anderer Benutzer die Auslagerungsdatei anzeigen kann
Make and Flag als Tausch
Hinzufügen / Stellen Sie sicher, dass sich Folgendes in Ihrer / etc / fstab befindet
Zuletzt Swap aktivieren
quelle
Nachdem Sie die von ajtrichards genannten Schritte ausgeführt haben, können Sie mit diesem Befehl überprüfen, ob Ihre Amazon Free Tier-Instanz Swap verwendet
Ergebnis:
SwapTotal: 1048572 kB
SwapFree: 1048572 kB
quelle
Mit den folgenden Befehlen können Sie Ihrer Instanz einen 1-GB-Swap hinzufügen:
Fügen Sie diese Zeile hinzu, um sie nach dem Neustart standardmäßig zu aktivieren
/etc/fstab
:quelle
/swapfile
. Sie können aber auch ein anderes Dateisystem mounten und dort die Auslagerungsdatei erstellen, z/mnt/blah/swapfile
.Wenn Sie sind
t2
Instanzen (t2.micro
,t2.medium
,t2.small
), gibt es keinen kurzlebigen oder Instance - Speicher zur Verfügung. Sie müssen also nur Ihren Swap-In erstellenEBS
dem je nach Anwendungsfall eine gute Idee sein kann oder nicht. Folgen Sie andernfalls der Antwort von @David und erstellen Sie Ihren Swap im kurzlebigen Speicher, um die Zahlung von EBS-Kosten zu vermeiden.Weitere Informationen: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html In einer Tabelle wird angezeigt, wie viel kurzlebigen Speicher Sie für jeden Instanztyp erhalten.
quelle
For example, if you provision a volume with 1000 IOPS, and keep this volume for 15 days in a 30 day month, then in a Region that charges $0.10 per provisioned IOPS-month, you would be charged $50 for the IOPS that you provision ($0.10 per provisioned IOPS-month * 1000 IOPS provisioned * 15 days/30). You will be charged for the IOPS provisioned on a volume even when the volume is detached from an instance.
. AWS berechnet anscheinend Gebühren für Lese- und Schreibvorgänge.Sie können Swap Space mit den folgenden Schritten erstellen. Hier erstellen wir Swap Space unter
/home/
dd if=/dev/zero of=/home/swapfile1 bs=1024 count=8388608
Hier ist count die Kilobyte-Anzahl des Swap-Space
mkswap /home/swapfile1
vi /etc/fstab
Eintrag machen:
/home/swapfile1 swap swap defaults 0 0
Lauf:
swapon -a
quelle
Wir können Swap Space auf jedem Server hinzufügen
Erstellen Sie eine Datei mit dem Befehl dd
bs ist die Blockgröße und count bezieht sich auf die Größe in MB oder GB
wir können umgekehrt verwenden
Ändern Sie nach der Erstellung die Berechtigung der Datei:
Dann tauscht die Datei aus:
Aktivieren Sie dann die Auslagerungsdatei mit dem Befehl swapon:
Überprüfen Sie mit dem Befehl free, ob der Swap aktiviert ist oder nicht:
quelle
Die Verwendung von Davids Instance Storage-Antwort funktionierte anfangs für mich (auf einem m5d.2xlarge). Nachdem ich die EC2-Instanz gestoppt und wieder eingeschaltet hatte, konnte ich mich nicht erneut in die Instanz einschalten.
In den Instanzprotokollen wurde Folgendes gemeldet: "Sie befinden sich im Notfallmodus. Geben Sie nach dem Anmelden" journalctl -xb "ein, um Systemprotokolle anzuzeigen," systemctl reboot "zum Neustart," systemctl default "oder" exit ", um in den Standardmodus zu starten. Drücken Sie die Eingabetaste für die Wartung"
Ich habe stattdessen die AWS-Anweisungen in diesem Link befolgt und alles hat perfekt funktioniert, auch nach dem Aus- und Wiedereinschalten der Instanz.
https://aws.amazon.com/premiumsupport/knowledge-center/ec2-memory-swap-file/
sudo dd if=/dev/zero of=/swapfile bs=1G count=4
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon -s
quelle
Versuchen Sie es mit swapspace http://pqxx.org/development/swapspace/
Die meisten Distributionen haben es verpackt.
Auf EC2 möchten Sie möglicherweise "swappath" in / mnt oder High-Iops-Festplatte ändern.
quelle
Mit dem folgenden Skript können Sie Swap unter Amazon Linux hinzufügen.
https://github.com/chetankapoor/swap
Laden Sie das Skript mit wget herunter:
Führen Sie dann das Skript im folgenden Format aus:
Ein vollständiges Tutorial finden Sie unter:
https://installvirtual.com/shell-script-to-create-swap/
quelle