Building clustered Moodle hosting environment how much Internet speed?

Building clustered Moodle hosting environment how much Internet speed?

by Obidjon Yuldashev -
Number of replies: 1
We have a real challenge to establish nationwide DE system with 70 000 students registerd and around 2700 concurrent users at any given time. 12 courses will be created. About 1000-1500 users from 2700 can be actively accessing Moodle in short time window(for ex. during the quizzes clicking Submit button at the same time). Activities users might be doing mainly reading html pages of Moodle with minor jpgs on pages and downloading pdfs . Users will access Moodle through Internet from 15 regions within the country. Users' download speed might be 64-128 Kbps

1) Planned hardware cluster specs:
2 Intel Pentium4 3.2 GHz servers for Load balancing (is it possible to install software based load balancing because no hardware load balancer available?)
3-4 Dual Core Xeon 1.6 GHz servers for Moodle Application servers
1 Dual Core Xeon 1.6 GHz server for LDAP
2 Dual Core Xeon 1.6 GHz server for Moodle Database
all servers with SCSI 10-15K rpm storage and each server has two Gigabit ethernet cards and each server has 8G RAM memory. All these servers connected by 3 Gigabit ethernet network switches
if 3 ethernet switches are enough or do we need another networking equipment?
How do you think about hardware specs? Can this platform serve at this capacity? Вдумчивый

3) and main issue is Internet upload speed. we are aiming to have 20 - 50Mbps upload speed and users' download speed might be 64-128 Kbps
What do you think is our upload speed enough? Смешанный

Please give us your opinions on these issues.



Average of ratings: -
In reply to Obidjon Yuldashev

Re: Building clustered Moodle hosting environment how much Internet speed?

by Henning Bostelmann -
Picture of Core developers Picture of Plugin developers
Hi,

while I don't have experience with large Moodle installations specifically (ours is rather small), I do have some experience with large web-based applications. I'd have some comments on what you wrote.

First, on a rough scale, the bandwidth seems reasonable to me - I would rather suspect that you end up more on the low end (20 MBit/s rather than 50 MBit/s). Of course this very much depends on what your users are actually doing. You might want to have a look at HTTP data compression - this would increase the load on your web servers, but would make a considerable difference for users on slow connections, and also save bandwith on your side.

Second, I would strongly advise that you use a dedicated ("hardware") device for load balancing, even if it is a very basic model (for example, Cisco CSS 11501). The problems that you will be facing are not so much with bandwith, but rather with a high number of parallel HTTP connections, particularly if your users are on slow connections. Plan for 2 connections per active user, at the very least. Hardware load balancers are designed to be very efficient in handling this high number of connections (they would all need to go through one device), while usual operating systems are not.

Third, I do not think that the Ethernet switches are a bottleneck. Even one (good) GE switch would suffice.

Fourth, what system are you going to use for database clustering? This can be a very challenging point.

Fifth, are you planning for a resilient system (i.e., should hardware faults of any one server be tolerated)? The single LDAP server seems a single point of failure.

As to the specific server sizing for Moodle, I don't have much experience. But, as a general rule, design your system so that more capacity can be added at any time. This will not be much of a problem at the web server / application server level; again the database can be much more challenging.

Best wishes
Henning