Need help in OCTO setup

Hello Everyone,

I am new here in this community. Over the past week I have gone through the Jitsi documentation, various threads on the community.jitsi.org and many Youtube videos but I am not able to get through.
I am looking to have a scalable setup (both horizontally and vertically) which can scale to have upto 100 persons in one conference and can run 500+ conferences at a time. I believe the setup needs to involve OCTO.


I am currently testing it with two regions. I am following the guide given by @rn1984
Octo Cascade Bridges - here's how! FULL GUIDE

Here I am using the Route53 geolocation policies to return the IP of region 1 as default but if the request is coming from America(Region2) it will be redirected to JitsiMeet Machine IP of region 2.

Now on next step I am configuring machine2-region2 to connect to Jicofo of Machine1-region1 so that it get registered there but it is not working primarily because the JVB machine(machine2-region2) is in US region

org.jitsi.videobridge.xmpp.user.shard.HOSTNAME=jitsidemo1.example.com

jitsidemo1.example.com for machine2-region2 is actually resolving to the Region2 IP due to which it will always try to connect to machine1-region2. How can we make machine2-region2 machine to get registered on Jicofo of region 1.

I am assuming here we can have only one Jicofo in the setup as suggested here: Octo Cascade Bridges - here's how! FULL GUIDE - #35 by rn1984

Any help will be highly appreciated

You need haproxy infront and make sure that all requests for room1 (the value of url param) land on the same shard.
And make every shard to have a pool of bridges.
Same room/conference needs to reach one prosody/jicofo.

Thanks for quick reply…

Route53 can’t be used as the replacement for HAProxy? As described in the Octo Cascade Bridges - here's how! FULL GUIDE

Want to avoid HAProxy(if possible) and want to rely on a managed AWS service.

I don’t think aws has a service that can stick sessions to a server based on url param?

ok understood. So we can have a HAproxy in front which will make sure that all requests for room1 (the value of url param) land on the same shard.

I have a question regarding the concept of OCTO. (I know the steps how OCTO is implemented and successfully tested it)
Help me understand plz… Like in my example(see diagram in beginning of this post) in Region2 (Oregon) we can have multiple video bridges all connected to Jitsi meet of Region2-machine1(which will run JItsi web+prosody+jicofo+JVB (optional)). Consider I have a same setup in Region 1 (MUMBAI) as well.

A conference was started by some people living in US and they were send to ShardUS(region2). How can any user connecting from India to same conference will be served from the nearest JVB (of region1) as Jicofo running on Region2-machine1 has no info about the JVB running in Region1. Am I missing here something?

You need to make sure clients have the correct region in their config.js (generating config.js based on user region … ) and use this RegionBasedBridgeSelectionStrategy

But check this, we no longer use this as it wasn’t performing so good as we thought and it does not scale well: OCTO for Geo-distributed conferences - #4 by damencho

Sorry didn’t get that… So we need to rather use “SplitBridgeSelectionStrategy” and now there is no way we can do multi videobridge geographical cascading at the moment?

I think what’s being communicated is that using Octo in that scenario has not proved to be as effective; it can still be used, but it’s not providing the most optimal experience.

Just seeing this now. The guide I posted discusses 1 shard deployed over multiple regions. Route53 directs to the proper JMS according to it’s policies and the region information from that JMS is communicated to Jicofo which activates the right bridge from the same region.

All bridges has to be connected to the same jicofo = same shard.

Hope this helps