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