Ich frage mich, ob der Upgrade-Prozess zusätzlich zu den Problemen mit dem Festplattenspeicher auch den verfügbaren Arbeitsspeicher (1 GB) überschritten hat, der dem Droplet zugewiesen ist? In meinem Screenshot der Konsole oben ist ‘Out of memory’ als erster Eintrag nach einem ./launcher rebuild app zu sehen.
Was ich nicht erwähnt habe, ist, dass die Konsole nach diesem Versuch nicht mehr reagierte (obwohl ich zu diesem Zeitpunkt die webbasierte Konsole im DigitalOcean-Steuerungsbereich verwendete, die immer etwas instabil ist), und ich das Droplet daraufhin neu gestartet habe. (Danach habe ich PuTTY verwendet.)
Wie auch immer, es ist nicht gut, dass das Update über die Discourse-Upgrade-Seite als erfolgreich gemeldet wurde, obwohl vermutlich auf das gleiche Speicher- und/oder Festplattenproblem gestoßen wurde.
Ah, der OOM-Killer hat zugeschlagen. Das ist sicher nicht gut. Normalerweise würde ich empfehlen, den Swap-Speicher zu erhöhen. Den aktuellen Verbrauch können Sie mit swapon einsehen, in meinem Fall:
# swapon
NAME TYPE SIZE USED PRIO
/swapfile file 2G 3M -2
Auch free:
# free
total used free shared buff/cache available
Mem: 1992060 792904 80148 34696 1119008 1004956
Swap: 2097148 3084 2094064
Es wäre schlecht, wenn Ihre 2G-Swap-Datei nicht aktiv wäre. Es ist schlecht, dass Sie keinen Swap hinzufügen können, ohne Festplattenspeicher zu verwenden!
Eine Möglichkeit, um Festplattenspeicher für ein Upgrade zu gewinnen, besteht darin, alle Sicherungsdateien an einen externen Standort zu kopieren, ihre Integrität zu prüfen und sie dann von Ihrem Server zu löschen. Sie benötigen unbedingt eine gute, aktuelle Sicherung an einem sicheren Ort außerhalb des Servers, falls etwas schiefgeht, aber diese muss nicht auf dem Server selbst liegen. Ich würde mich wohl fühlen, alle außer der neuesten zu löschen, würde aber auf jeden Fall eine Offline-Kopie anlegen.
Es wäre gut, die Ergebnisse von du erneut zu sehen, nachdem Sie alle Bereinigungen durchgeführt haben.
Ich frage mich: Ist das 1 GB deine RAM-Zuweisung und das 25 GB deine Festplattenzuweisung? Zwei völlig unterschiedliche Dinge.
Edit: Die unterstützte Standard-Aussage ist meiner Meinung nach, dass man eher mehr als 1 GB RAM haben sollte.
Edit: Nein, anscheinend sind 1 GB immer noch das empfohlene absolute Minimum.
Ich habe mich gerade wieder verbunden, und die beim Start des Konsolenfensters angezeigten Systeminformationen lauten:
Systemlast: 0,01 Prozesse: 136
Auslastung von /: 59,4 % von 24,06 GB Eingeloggte Benutzer: 0
Speicherauslastung: 73 % IP-Adresse für eth0: 159.65.140.176
Swap-Auslastung: 17 % IP-Adresse für docker0: 172.17.0.1
Bedeutet also eine Swap-Auslastung von 17 % = 4 GB?
Da niemand im Forum eingeloggt ist und nur die aktuelle PuTTY-Verbindung zum Droplet aktiv ist, ist der RAM zu 73 % belegt. Es sieht also nicht so aus, als würde schon wenig Aktivität ausreichen, um das Forum in den Swap-Bereich zu drängen. Und wenn dies aus den 24 GB stammt, könnte dies während eines Updates, bei dem die Festplattennutzung bereits hoch ist, die perfekte Sturmsituation schaffen?
Ich denke, du kannst das mit journalctl verbessern, vielleicht mit
# journalctl --vacuum-size=50M
(was du vielleicht unmittelbar vor einem Upgrade ausführen könntest)
Interessant ist, dass die PostgreSQL-Auslastung nicht zurückgegangen ist.
free zeigt dir die Swap-Auslastung an: Sie liegt bei 17 % eines bestimmten Betrags, wahrscheinlich 2 GB.
Es ist klar, dass deine Maschine etwas zu klein ist: Du benötigst mehr RAM oder mehr Swap, und ohne mehr Festplattenspeicher kannst du praktisch nicht viel mehr Swap einrichten.
Ich denke, das gehört eher in die Kategorie der Zukunftsvorhersage! Die Prüfung auf 5 GB freien Festplattenspeicher ist zwar eindeutig hilfreich, aber nicht wasserdicht. Freier Arbeitsspeicher ist schwieriger zu bestimmen, da es recht schwer abzuschätzen ist, wie viel davon benötigt wird. Ich würde denken, dass dies eine Funktion davon ist, wie groß das Forum geworden ist, und vielleicht auch davon, was bei jedem Upgrade angepasst werden muss.
Ich achte darauf, die Kosten zu minimieren, und werde daher Zeit damit verbringen, zu versuchen, auf einem günstigen Server Platz zu finden. Aber schließlich, wenn ein Forum wächst, wird es sich surely lohnen, auf die nächste Stufe zu wechseln. Das wird zwar Geld kosten, aber Zeit und Aufwand sparen.
Ich befinde mich leider eher am Ende der Skala, wo es darum geht, Kosten zu minimieren – das Forum ist eine rein ehrenamtliche Initiative, die keine Einnahmen generiert, und mit der von den Nutzern geforderten E-Mail-basierten Veröffentlichung (über MailGun) kostet es mich bereits jeden Monat einiges, um es am Laufen zu halten.
Im Vergleich zu anderen Hobbys ist es sicher günstiger als das Trinken in Nachtclubs!