Warum Swap-Speicher wichtig ist
Wenn du ein DigitalOcean Droplet mit wenig RAM betreibst (z.B. 1GB oder weniger), wirst du schnell feststellen, dass der Arbeitsspeicher knapp werden kann. Besonders bei kleineren Droplets ist es essentiell, Swap-Speicher einzurichten, um Abstürze durch Speichermangel zu vermeiden.
In diesem Artikel zeige ich dir, wie du Swap-Speicher auf deinem DigitalOcean Droplet einrichten kannst, um die Stabilität und Leistung deines Servers zu verbessern.
Was ist Swap-Speicher?
Swap-Speicher (oder einfach «Swap») ist ein Bereich auf der Festplatte, den dein Betriebssystem nutzen kann, wenn der physische RAM-Speicher voll ist. Es funktioniert wie eine Erweiterung des Arbeitsspeichers – allerdings deutlich langsamer, da Festplattenzugriffe viel mehr Zeit benötigen als RAM-Zugriffe.
Dennoch ist Swap besser als kein Speicher, und kann dein System vor Abstürzen bewahren, wenn der RAM knapp wird.
Schritt 1: Prüfe den aktuellen Swap-Speicher
Bevor wir beginnen, sollten wir überprüfen, ob bereits Swap-Speicher konfiguriert ist. Öffne eine SSH-Verbindung zu deinem Droplet und führe folgenden Befehl aus:
free -h
Die Ausgabe sieht etwa so aus:
total used free shared buff/cache available
Mem: 960Mi 911Mi 49Mi 88Mi 121Mi 49Mi
Swap: 0B 0B 0B
Wie du sehen kannst, zeigt die «Swap»-Zeile bei unserem Beispiel-Droplet «0B» an – das bedeutet, wir haben keinen Swap-Speicher konfiguriert.
Schritt 2: Erstelle eine Swap-Datei
Für ein System mit 1GB RAM empfehle ich, mindestens 2GB Swap einzurichten. Führe dazu folgende Befehle aus:
sudo fallocate -l 2G /swapfile
Dieser Befehl erstellt eine 2GB große Datei namens «swapfile» im Wurzelverzeichnis.
Schritt 3: Setze die richtigen Berechtigungen
Aus Sicherheitsgründen sollte die Swap-Datei nur vom Root-Benutzer gelesen und geschrieben werden können:
sudo chmod 600 /swapfile
Schritt 4: Formatiere die Datei als Swap
Jetzt müssen wir die erstellte Datei als Swap-Speicher formatieren:
sudo mkswap /swapfile
Schritt 5: Aktiviere den Swap-Speicher
Um den Swap-Speicher sofort zu aktivieren:
sudo swapon /swapfile
Schritt 6: Richte den Swap dauerhaft ein
Damit der Swap-Speicher auch nach einem Neustart verfügbar ist, müssen wir einen Eintrag in der Datei /etc/fstab
hinzufügen:
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Schritt 7: Überprüfe den Swap-Speicher
Um zu überprüfen, ob der Swap-Speicher jetzt aktiv ist:
free -h
Jetzt sollte die Ausgabe etwa so aussehen:
total used free shared buff/cache available
Mem: 960Mi 911Mi 49Mi 88Mi 121Mi 49Mi
Swap: 2Gi 0B 2Gi
Schritt 8: Optimiere die Swap-Nutzung (optional)
Für Systeme mit wenig RAM ist es sinnvoll, die «Swappiness» anzupassen – das ist ein Wert, der bestimmt, wie aggressiv das System den Swap-Speicher nutzt.
Der Standardwert ist 60, was bedeutet, dass das System schon früh anfängt zu swappen. Für Server ist ein niedrigerer Wert oft besser:
sudo sysctl vm.swappiness=10
Um diese Einstellung dauerhaft zu machen:
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
Ein Wert von 10 bedeutet, dass das System erst dann intensiv swappen wird, wenn nur noch etwa 10% freier RAM verfügbar ist.
Fazit
Mit diesen einfachen Schritten hast du erfolgreich Swap-Speicher auf deinem DigitalOcean Droplet eingerichtet. Das gibt deinem System mehr Flexibilität bei der Speicherverwaltung und kann besonders bei kleinen Droplets mit wenig RAM die Stabilität deutlich verbessern.
Obwohl Swap-Speicher langsamer als physischer RAM ist, kann er dein System vor Abstürzen bewahren, wenn der Arbeitsspeicher knapp wird. Für optimale Leistung solltest du jedoch langfristig überlegen, auf ein Droplet mit mehr RAM upzugraden, wenn deine Anwendungen regelmäßig an die RAM-Grenzen stoßen.
Dieser Artikel basiert auf Ubuntu 22.04 LTS. Die Anleitung funktioniert auch für andere Linux-Distributionen, aber einige Befehle könnten variieren.