Openfire plan for large scale, multiple location deployment with HA

Openfire plan for large scale, multiple location deployment with HA

good day community

My question is if I wanted to deploy on a large scale with mutiple locations what would be the best server placement setup?

Details

1 - 3 or 4 locations in Canada with 6000 - 10000 users

2 - want the solution to be available on the internal networks and via the internet

3 - looking to implement viceo and voice chatting via Redfire

4 - interested in implmenting the sip or asterix plugin and providing the capability to call to land lines

5 - interested in this solution being scalable (meaning I can easily add more servers and locations if required)

6 - interested in this solution being highly available

7 - looking to allow file transfers

8 - if the sip or asterix plugin is configured to go to our pbx in location 1 will the clients located in other locations be making long distance calls all the time? (im new to pbx integration)

9 - was going to run this on openvz or vmware… (not my first choice but…)

the ideas I am considering now that I am developing and looking for input

##########

load balancer for jabber.example.com

9 - configured sticky bit, meaning you stay with the server you connected to

10 - if you are on an internal network it directs you to the closest servers to you, then the next closest servers, then the next set for HA

11 - if you are external (meaning on the internet) should I place a couple connection managers dedicated for that? or should I just direct you the closest server?

##########

Main location configuration

wondering if I should put connection managers here… seems like a lot of servers… (again just want it to be scalable and be able to add if needed)

2 x openfire servers clustered

2 x mysql servers clustered

##########

to be added if needed (wondering if I can run this all from the main location instead of adding connection managers…)

site 1

2 x connection managers?

##########

to be added if needed (wondering if I can run this all from the main location instead of adding connection managers…)

site 2

2 x connetion managers?

###########

additional questions

12 - how much cpu and memory and hard drive should these servers have?

13 - how much java memory should i allocate on the openfire servers and connection managers?

14 - do file transfers happen peer to peer between clients or do they go through the servers? do I need hard drive space on the servers?

15 - does voice and video take lots of bandwidth? should i be scared?

16 - what about long distance considerations when going through a pbx? (meaning multiple locations using the same pbx… would location 1 get all the long distance bills?)

17 - why would i want the jingle plugin? or do i get all that in the redfire plugin?

18 - what is the jingle nodes plugin?

19 - could 10000 users from several locations use the setup in the main location with file transfers and voice and video and pbx integration without problems? I want to get this

online fast and dont want to scare management with a huge plan involving many servers in multiple locations…

20 - has anyone setup the spark web chat? or the fast path web chat plugin? the docs seem a bit all over the place… anyone have a good comprehensive implementation doc or recommendations?

as to how to proceed? i want to use this as a failback if peoples local chat client isnt working or not installed yet. can i run this on the openfire servers or the connection managers?

or should i implement a webchat server on apache?

Any input would be appreciated

Mainly I do not want to throw all kinds of clients on this system and watch it crawl due to insufficient planning or lack or research.

Any good books someone could recommend?

Thanks in advance

That is all I can think of for now