How to configure IaaS Jitsi to achieve 1000+ users in one conference room

Hi everyone,

I’m would like to know how can I achieve 1000+ jitsi users in one conference room.
As of this reference

Currently, I’ve installed the Instants on AWS

  • 1 Jitsi Meet Server (c5n.2xlarge, Ubuntu 22.04, JVB disabled, OCTO enabled, IntraRegionBridgeSelectionStrategy)
  • 2 Jitsi VideoBridge Servers (c5n.2xlarge, Ubuntu 22.04)

The installation for all of those are following to this instruction

I have tested the conference using Jitsi Meet Torture spawn in the GCP.
The problem we found recently was the meeting will start kicking the user once the number of participants reached around 35x (351-359) ppl and the load was not transferred to the second VBD.
After that, if we are trying to reconnect the test users, the server will keep kicking them from the beginning.

Therefore, I would like to ask for suggestions in order to reconfigure my system to achieve the goal.

Thank you so much in advance.

Welcome to the forum.

I don’t believe that blog says “1000+ users in one conference room”, it says “On a plain Xeon server (like this one) that you can rent for about a hundred dollars, for about 20% CPU you will be able to run 1000+ video streams using an average of 550 Mbps!”. Meaning you can run several meetings totaling 1000+ users with the server specs referenced.

That said, your test showing a max capability of only 35 people suggests something is wrong with your deployment.

Oh Sorry ,What I mean of 35x is 351-359 users approx

At that moment all CPU cores reached 85-90% but the load still not distribute to the second JVB.

Ah, then you need to check your JVB configuration to make sure loadbalancing is working properly.

1 Like

Please find the following info for my JVB config
Is there anything missing for my configuration?

/etc/jitsi/videobridge/jvb.conf

videobridge {
    http-servers {
        public {
            port = 9090
        }
    }
    websockets {
        server-id = "<my-jvb-PublicIP>"
        enabled = true
        domain = "<my-domain>:443"
        tls = true
    }
}

/etc/jitsi/videobridge/sip-communicator.properties

org.ice4j.ice.harvest.DISABLE_AWS_HARVESTER=true
org.ice4j.ice.harvest.STUN_MAPPING_HARVESTER_ADDRESSES=meet-jit-si-turnrelay.jitsi.net:443
org.jitsi.videobridge.ENABLE_STATISTICS=true
org.jitsi.videobridge.STATISTICS_TRANSPORT=muc,colibri
org.jitsi.videobridge.xmpp.user.shard.HOSTNAME=<my-domain>
org.jitsi.videobridge.xmpp.user.shard.DOMAIN=auth.<my-domain>
org.jitsi.videobridge.xmpp.user.shard.USERNAME=jvb
org.jitsi.videobridge.xmpp.user.shard.PASSWORD=<SECRET>
org.jitsi.videobridge.xmpp.user.shard.MUC_JIDS=JvbBrewery@internal.auth.<my-domain>
org.jitsi.videobridge.xmpp.user.shard.MUC_NICKNAME=jvb-1
org.jitsi.videobridge.xmpp.user.shard.DISABLE_CERTIFICATE_VERIFICATION=true

# OCTO Config
org.jitsi.videobridge.octo.BIND_ADDRESS=<my-jvb-PrivateP>
org.jitsi.videobridge.octo.PUBLIC_ADDRESS=<my-jvb-PublicIP>
org.jitsi.videobridge.octo.BIND_PORT=4096
org.jitsi.videobridge.REGION=region1

/etc/jitsi/videobridge/config

# Jitsi Videobridge settings

# sets the XMPP domain (default: none)
# Keep as empty
JVB_HOSTNAME=

# sets the hostname of the XMPP server (default: domain if set, localhost otherwise)
JVB_HOST=<my-domain>

# sets the port of the XMPP server (default: 5275)
JVB_PORT=5347

# sets the shared secret used to authenticate to the XMPP server
JVB_SECRET=<SECRET>

# adds java system props that are passed to jvb (default are for home and logging config file)
# JAVA_SYS_PROPS="-Dconfig.file=/etc/jitsi/videobridge/jvb.conf -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/jitsi -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=videobridge -Dnet.java.sip.communicator.SC_LOG_DIR_LOCATION=/var/log/jitsi -Djava.util.logging.config.file=/etc/jitsi/videobridge/logging.properties"
#

JVB_OPTS="--apis=rest,"

JAVA_SYS_PROPS="-Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/jitsi -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=videobridge -Dnet.java.sip.communicator.SC_LOG_DIR_LOCATION=/var/log/jitsi -Djava.util.logging.config.file=/etc/jitsi/videobridge/logging.properties"

Hi Freddie,

Regards to my JVB configurations, do you think is there any mistake I should fix to solve my issue?

You currently cannot have 1000+ users in one conference, the tested and stated max is 500 (with multiple JVBs). Besides that, in your scenario, you need to test your deployment first to make sure Octo works. If you want multiple bridges to support one meeting, Octo has to be properly configured. Otherwise, all your participants will try to join the meeting on the same JVB and as you’ve seen, that maxes out.

1 Like