We have configured MCU 4.2.1 on CentOS Linux release 7.6.1810 (Core)
Server 1: RabbitMq, MongoDB and Cluster-Manager — Private Network
Here we are using default cluster_manager strategies
Server 2: Management API , Management console and Basic APP Configured - Public
RabbitMQ and MongoDB host set to server 1 IP Address
Server 3: Portal and WebRTC Agent Configured - Public
portal.toml and webrtc-agent/agent.toml pubic IP is provided
And RabbitMQ and MongoDB host set to server 1 IP
Server 4: Audio/Video/WebRTC/Conference-Agent Configured- Public
webrtc-agent/agent.toml pubic IP is provided
And RabbitMQ host set to server 1 IP
Now when testing basic app I can see whole load is moving to Server3 WebRTC agent only
My question here is how we distribute load to server 4 WebRTC agent. Tried all cluster strategies but could not work
How can we achieve load balancing here?
When more users are logged in only server 3 WebRTC agent which is last used is getting utilised and CPU is raking to 80%
I want to distribute this load to different WebRTC agents how can we achieve this?
How can we move to another WebRTC agent server when one of the webRTC agent load is high. Since we need to put WebRTC agent in auto scaling mode in AWS when load is high we can spin up another agent automatically so that load is getting distributed
Also /?forward=true is only working, when we try to open publish with mix we are not able to see farend videos in mix stream but able to publish to forward stream users.
I have 2 servers in each audio/video agents installed each with cluster solution and both max load is set to max_load = 0.20 #default: 0.85Now when i am using basic example application only with one single room only 1 server is getting utilised and that too it crossed the max_load. as you told he worker exceeds the max load, then it will not be treated as available worker.
here then load should go to next available worker right? please explain how this will workl
From the above only one worker is getting utilised when we login to single room even it exceeded the max_load.
Cluster Strategy is set as below
As per the configuration when any when 1 worker exceeds the max_load it should automatically switch to another available worker, in this case it is not working as expected.
When new user joins to new room then load is shifted to another worker.
Please let me know how we can achieve this even in single room there are so many users and work_load sis exceeded it should shift to another worker
My question here is how can we handle if there are so many users like 100 and above in a single room then 1 single worker cannot handle that much cpu resources. how we can achieve load balancing with single room with many users
Is it the same with forward room also?
The video node's cpu is mainly used by encoding and decoding. So the increase of users has little affect on audio/video nodes' cpu usage if they only subscribe.
The forward room is different.
We have used MCU 4.3 version.
We are also facing load balancing issue in audio video agents mentioned above. Even if we use multiple audio/video agents after maximum load utilisation, it is not connecting to other agents. Is there any way to point a particular room to a particular A-V agent ? So that if we have two A-V agents, then launching 1st room will always connect to particular A-V agent and 2nd room to another A-V agent.
Please advise whether we have any way to do it.
Any help would be appreciated.