Discourse-Docker mit Unicorn-Speicherproblem ausgeführt

Docker mit der neuesten Version discourse-docker ausführen, Speicher: 2 GB, 3 Unicorn-Threads.
Es treten zahlreiche Log-Fehler wie unten auf.

I, [2019-12-17T22:44:47.722151 #19487]  INFO -- : listening on addr=0.0.0.0:3000 fd=13
I, [2019-12-17T22:44:53.036892 #19487]  INFO -- : master process ready
I, [2019-12-17T22:44:55.704154 #19587]  INFO -- : worker=0 ready
I, [2019-12-17T22:44:56.644984 #19594]  INFO -- : worker=1 ready
I, [2019-12-17T22:44:57.595814 #19601]  INFO -- : worker=2 ready
I, [2019-12-18T05:12:51.517167 #19487]  INFO -- : reaped #<Process::Status: pid 19587 exit 0> worker=0
I, [2019-12-18T05:12:52.533342 #19487]  INFO -- : reaped #<Process::Status: pid 19594 exit 0> worker=1
Detected dead worker 19563, restarting...
I, [2019-12-18T05:12:53.551518 #19487]  INFO -- : reaped #<Process::Status: pid 19601 exit 0> worker=2
I, [2019-12-18T05:12:59.062671 #11689]  INFO -- : worker=1 ready
I, [2019-12-18T05:12:59.063307 #11680]  INFO -- : worker=0 ready
I, [2019-12-18T05:12:59.360555 #11706]  INFO -- : worker=2 ready
WARNING: V8 isolate was forked, it can not be disposed and memory will not be reclaimed till the Ruby process exits.
WARNING: V8 isolate was forked, it can not be disposed and memory will not be reclaimed till the Ruby process exits.
WARNING: V8 isolate was forked, it can not be disposed and memory will not be reclaimed till the Ruby process exits.
WARNING: V8 isolate was forked, it can not be disposed and memory will not be reclaimed till the Ruby process exits.
WARNING: V8 isolate was forked, it can not be disposed and memory will not be reclaimed till the Ruby process exits.
WARNING: V8 isolate was forked, it can not be disposed and memory will not be reclaimed till the Ruby process exits.
WARNING: V8 isolate was forked, it can not be disposed and memory will not be reclaimed till the Ruby process exits.
WARNING: V8 isolate was forked, it can not be disposed and memory will not be reclaimed till the Ruby process exits.
D, [2019-12-18T05:13:23.583306 #19487] DEBUG -- : waiting 16.0s after suspend/hibernation
I, [2019-12-18T05:13:44.194692 #19487]  INFO -- : reaped #<Process::Status: pid 11680 exit 0> worker=0
I, [2019-12-18T05:13:44.194960 #19487]  INFO -- : reaped #<Process::Status: pid 11689 exit 0> worker=1
I, [2019-12-18T05:13:44.195054 #19487]  INFO -- : reaped #<Process::Status: pid 11706 exit 0> worker=2
I, [2019-12-18T05:13:44.195120 #19487]  INFO -- : master complete
I, [2019-12-18T05:13:45.760881 #11795]  INFO -- : Refreshing Gem list

Hat jemand das gleiche Problem?

Betreibst du ein inoffizielles Plugin? Oder läuft noch etwas anderes auf dem Server? 2 GB sollten mehr als ausreichend sein…

Vielen Dank für die Antwort. Der Server führt nur Sidekiq und Discourse aus.

Kannst du bitte Folgendes ausführen:

cd /var/discourse
./discourse-doctor

Und uns die URL mitteilen?

@Falco
Vielen Dank, hier sind die Ergebnisse des Diagnoseskripts:

DISCOURSE DOCTOR Fr Dez 20 03:42:31 UTC 2019
OS: Linux int-communityweb-01w.our-internal-domain 3.10.0-1062.7.1.el7.x86_64 #1 SMP Mo Dez 2 17:33:29 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux


YML=web_only.yml
Gefunden: containers/web_only.yml

==================== YML-EINSTELLUNGEN ====================
DISCOURSE_HOSTNAME=int-communityweb-vip.our-internal-domain
SMTP_ADDRESS=our_smtp_server # (erforderlich)
DEVELOPER_EMAILS=REDACTED 
SMTP_PASSWORD=REDACTED  (optional)
SMTP_PORT=25 # (optional)
SMTP_USER_NAME=# (optional)
LETSENCRYPT_ACCOUNT_EMAIL=REDACTED 

==================== DOCKER-INFO ====================
DOCKER VERSION: Docker version 17.05.0-ce, build 89658be

DOCKER-PROZESSE (docker ps -a)

CONTAINER ID        IMAGE                                                                                                             COMMAND             CREATED             STATUS                    PORTS                NAMES
e6c7024d0d4b        artifacts.our-internal-domain:8080/image/community:99-2.0.20191013-2320-tests-passed-b6b05d3b48-2019-12-16_09-28   "/sbin/boot"        43 hours ago        Up 43 hours               0.0.0.0:80->80/tcp   web_only
703de08548b0        artifacts.our-internal-domain:8080/image/community:90-2.0.20190625-0946-tests-passed-ac7d68a-2019-08-30_09-36      "/sbin/boot"        4 weeks ago         Exited (5) 46 hours ago                        web_only_bak


Discourse-Container web_only wird ausgeführt


==================== PLUGINS ====================
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://gitlab.our-internal-domain/community/community-sso-plugin.git
          - git clone https://gitlab.our-internal-domain/community/community-ads-plugin.git
          - git clone  --branch upgarde-newrelic-gem https://gitlab.our-internal-domain/community/community-newrelic-plugin.git

WARNUNG:
Sie scheinen nicht-offizielle Plugins zu verwenden.
Wenn Sie Probleme haben, sollten Sie diese deaktivieren und den Neuaufbau erneut versuchen.

Siehe https://github.com/discourse/discourse/blob/master/lib/plugin/metadata.rb für die offizielle Liste.

========================================
Discourse-Version bei int-communityweb-vip.our-internal-domain: Discourse 2.4.0.beta8 
Discourse-Version bei localhost: Discourse 2.4.0.beta8 


==================== SPEICHERINFORMATION ====================
OS: Linux
RAM (MB): 1882

              total        used        free      shared  buff/cache   available
Mem:           1838        1340          66           7         430         306
Swap:          3071         388        2683

==================== FESTPLATTENPLATZ-PRÜFUNG ====================
---------- OS-Festplattenspeicher ----------
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/vg00-root   19G   15G  3.3G  82% /
/dev/mapper/vg00-root   19G   15G  3.3G  82% /var/lib/docker/overlay
/dev/mapper/vg00-root   19G   15G  3.3G  82% /

---------- Container-Festplattenspeicher ----------


==================== FESTPLATTENINFORMATION ====================

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0005c8ec

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1050623      524288   83  Linux
/dev/sda2         1050624    16777215     7863296   8e  Linux LVM
/dev/sdimage        16777216    41943039    12582912   8e  Linux LVM

Disk /dev/mapper/vg00-root: 19.9 GB, 19851640832 bytes, 38772736 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/vg00-swap: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

==================== ENDE DER FESTPLATTENINFORMATION ====================

==================== MAIL-TEST ====================
Für einen robusten Test, holen Sie sich eine Adresse von http://www.mail-tester.com/
Mail-Test übersprungen.

==================== FERTIG! ====================

  1. Der Kernel ist ziemlich alt. Kannst du etwas Moderneres verwenden?

  2. Die Docker-Version ist ebenfalls veraltet. Kannst du auf eine unterstützte Version aktualisieren?

  3. Du führst einen Web-only-Container aus, der noch weniger Speicher benötigt als ein Standalone-Container. Allerdings nutzt du eine Reihe benutzerdefinierter Plugins, die möglicherweise zu viel Speicher belegen.

  4. Überprüfe die Swapiness deines Betriebssystems – sie könnte zu niedrig eingestellt sein.

  5. Dein Unicorn wurde beendet. Ohne weitere Logs ist es schwer zu sagen, warum. Stellen deine benutzerdefinierten Plugins Inline-Anfragen an externe Systeme? Vielleicht läuft einfach etwas aus?

Es gibt zu viele Variablen, die dies von einer einfachen Installation unterscheiden. Ich würde daher zunächst versuchen, diese zu reduzieren.

@Falco Danke, ich werde dafür mehr Speicher hinzufügen. Hinsichtlich des Upgrades von Kernel und Docker werde ich mit dem SE-Team sprechen, um die Entscheidung zu treffen.
Frohe Weihnachten. :dizzy: