Hi,

I run OpenMeetings M3 on a Ubuntu 18 Server wor two weeks without problems.
Yesterday I did a reboot and openmeetings fails to connect to the media server. 
It seems to be a problem with  resource limits.
I can't remember I changed anything. 
That's in the log of kurento after restart:

2020-04-04T10:39:48,750739 16613 0x00007fea7703e280   error 
KurentoWebSocketTransport WebSocketTransport.cpp:130 WebSocketTransport()  
Error starting listen for websocket transport
on port 8888: Underlying Transport Error

netstat says:
tcp6      13      0 [::]:8888               [::]:*                  LISTEN   

Openmeeting tries to establish a connection wit a new channel, but failed:

34mINFO ESC[0;39m 04-04 10:36:22.014 
ESC[36mo.k.j.c.JsonRpcClientNettyWebSocket:234 [ntLoopGroup-2-1]ESC[0;39m - 
[KurentoClient]  Initiating new Netty channel. Will create new
handler too!
ESC[31mWARN ESC[0;39m 04-04 10:36:46.655 ESC[36mo.a.o.c.r.KurentoHandler:124 
[main]ESC[0;39m - Fail to create Kurento client, will re-try in 10000 ms
ESC[31mWARN ESC[0;39m 04-04 10:36:46.664 
ESC[36mo.k.j.c.JsonRpcClientNettyWebSocket:257 [rbeatExec-e1-t0]ESC[0;39m - 
[KurentoClient]  ERROR connecting WS Netty client, opening
channel
java.lang.InterruptedException: null
        at java.base/java.lang.Object.wait(Native Method)
        at java.base/java.lang.Object.wait(Object.java:328)
        at 
io.netty.util.concurrent.DefaultPromise.await(DefaultPromise.java:221)
        at 
io.netty.channel.DefaultChannelPromise.await(DefaultChannelPromise.java:131)
        at 
io.netty.channel.DefaultChannelPromise.await(DefaultChannelPromise.java:30)
        at io.netty.util.concurrent.DefaultPromise.sync(DefaultPromise.java:328)
        at 
io.netty.channel.DefaultChannelPromise.sync(DefaultChannelPromise.java:119)
        at 
io.netty.channel.DefaultChannelPromise.sync(DefaultChannelPromise.java:30)
        at 
org.kurento.jsonrpc.client.JsonRpcClientNettyWebSocket.connectNativeClient(JsonRpcClientNettyWebSocket.java:254)
        at 
org.kurento.jsonrpc.client.AbstractJsonRpcClientWebSocket.internalConnectIfNecessary(AbstractJsonRpcClientWebSocket.java:711)
        at 
org.kurento.jsonrpc.client.AbstractJsonRpcClientWebSocket.connectIfNecessary(AbstractJsonRpcClientWebSocket.java:847)
        at 
org.kurento.jsonrpc.client.AbstractJsonRpcClientWebSocket.internalSendRequestWebSocket(AbstractJsonRpcClientWebSocket.java:352)
        at 
org.kurento.jsonrpc.client.AbstractJsonRpcClientWebSocket$1.internalSendRequest(AbstractJsonRpcClientWebSocket.java:141)
        at 
org.kurento.jsonrpc.internal.JsonRpcRequestSenderHelper.sendRequest(JsonRpcRequestSenderHelper.java:75)
        at 
org.kurento.jsonrpc.internal.JsonRpcRequestSenderHelper.sendRequest(JsonRpcRequestSenderHelper.java:69)
        at 
org.kurento.jsonrpc.internal.JsonRpcRequestSenderHelper.sendRequest(JsonRpcRequestSenderHelper.java:99)
        at 
org.kurento.jsonrpc.client.JsonRpcClient.sendRequest(JsonRpcClient.java:122)
        at 
org.kurento.jsonrpc.client.JsonRpcClient$1.run(JsonRpcClient.java:262)
        at 
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at 
java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
        at 
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:834)
04-Apr-2020 10:36:46.739 INFORMATION [main] 
com.hazelcast.internal.partition.impl.PartitionStateManager.null 
[85.214.114.57]:5701 [dev] [3.12.2] Initializing cluster partition
table arrangement...
ESC[34mINFO ESC[0;39m 04-04 10:36:46.752 
ESC[36mo.k.j.c.JsonRpcClientNettyWebSocket:234 [ntLoopGroup-2-2]ESC[0;39m - 
[KurentoClient]  Initiating new Netty channel. Will create new
handler too!

Sometimes it says there is an outof memory / resource limitation and it's not 
able to open a new thread.

So I checked:

root@xxxx:/opt/open503/logs# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 1546410
max locked memory       (kbytes, -l) 16384
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 62987
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

Any ideas for further checks  what's wrong?

What kind of limits do you suggest in /etc/security/limits.conf ?

Btw, I used the tomcat3 init script Alvaro used in the tutorial. Just saw the 
tomcat is still running as root, even if it should run as nobody.
Maybe that's a problem also.

Kind regards

Marcus




Reply via email to