GitHub Runner benötigt das Doppelte des physischen RAM – was ist die Lösung?

GitHub Runner benötigt das Doppelte des physischen RAM – was ist die Lösung?

Bei mir sind AWS ERP-Server jetzt viermal abgestürzt, weil der Arbeitsspeicher anscheinend voll war und das System im Wesentlichen bei 100 % CPU-Auslastung und keinem [wenig] verfügbaren RAM den Geist aufgegeben hat.

Ubuntu 18.04.5 LTS (GNU/Linux 5.4.0-1060-aws x86_64) (AWS AMI)

Dreimal geschah dies mitten in einer GitHub-Aktion. Die Aktion führte einen Datenbankimport durch und dann eine Slack-Benachrichtigung. Man könnte also meinen, dass einer dieser Schritte das Problem verursacht hat, aber seltsamerweise wurden alle Schritte normal abgeschlossen. Die Datenbank war in Ordnung und die Slack-Benachrichtigung wurde gesendet.

GitHub selbst verlor die Verbindung zum Runner und der virtuelle Speicher explodierte, selbst nachdem die Aktion abgeschlossen war.

Ein viertes Mal geschah dies, während NICHTS lief. Der Server war tatsächlich im Leerlauf, ohne dass etwas passierte. Ich habe allerdings keine Protokolle oder Screenshots davon, aber einmal habe ich es auf frischer Tat ertappt:

Bild des TOP-Displays

Das System ist also eine AWS-VM mit 4 GB RAM. Beachten Sie, dass der SI, der dieses System eingerichtet hat, meines Wissens nach keinen Swap-Speicher konfiguriert hat. Dies ist für einen Server wohl richtig [sehr wohl], in dem Sinne, dass Sie bei einem Speicherleck möchten, dass das System einen Speichermangel meldet und Korrekturmaßnahmen ergreift, da Sie bei einem Speicherleck sowieso irgendwann abstürzen werden.

Kurzfristig wurde ich gebeten, den RAM einfach zu verdoppeln. Das ist etwas unnötig, da es sich um ein sehr schwach ausgelastetes System handelt (normalerweise läuft es bei einem umfangreichen Batch-Job mit nur etwa 2 GB RAM), und ehrlich gesagt, wenn der GitHub Runner.Worker auf einem 4-GB-System bei 7 GB RAM sein Maximum erreicht, warum sollte er dann auf einer 8-GB-VM nicht bei 16 GB RAM sein Maximum erreichen, aber wir werden sehen, ob es wieder abstürzt. Ich bin nicht abgeneigt, die Swap-Konfiguration von TFG zu ändern, aber ich bin mir nicht sicher, ob das eine Lösung ist

Ich habe dies an GitHub gemeldet, aber nach über drei Wochen Untätigkeit dachte ich, ich schaue hier mal nach, ob jemand Ideen oder Lösungen hat.

Danke schön,

== Johannes ==

verwandte Informationen