Hardware Requirements of Moodle

Hardware Requirements of Moodle

by Antony Meyn -
Number of replies: 23

My team plans to use Moodle for a customer population of 1000 (approx) concurrent users.

I am trying to get a document which will give me a picture as to how I have to decide on the server configaration, It may have to scale up to 10,000 users later, So i need to get a crystal clear picture of the figures before making any investments into using moodle.

Thanks in advance.

Average of ratings: -
In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
Antony,

Tell us what *you* mean by concurrent users before we go any further.

We typically talk about the peak number of session objects that are less than 5 seconds old. 1000 is a *lot* and it's worth investigating if it's correct before we go any further.To give you an idea, that would be servers to the tune of about 20Gigs (the web server is the bottleneck for memory) of memory (very roughly).


What's your maximum number of user accounts too? You will probably also need to think about the storage requirements if this is a big system.

BTW... I use, as a sanity check, that concurrency is normally around 5% of the number of active user accounts - as an order of magnitude anyway.
In reply to Howard Miller

Re: Hardware Requirements of Moodle

by Antony Meyn -

1000 user will be taking up a quiz at the same time, thats what i had in mind about concurrent users.

Maximum no user accounts will be 1000 + 60 (sixty being the no. of teachers etc)

This will be phase 1.

Phase 2....will be 10 times the load of phase 1, depending on the success of Phase 1.

PS:: will there be any issues if the server is windows rather than Linux....ie. having moodle set up on WAMP.

Thanks again.

In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
BTW... you do know this is the wrong forum? Perhaps Helen can move it to the "Hardware & Performance" form smile

Ok.. simultaneous quizzes is indeed about the worst case scenario.

If you don't listen to anything else I say, listen to this - don't even think about this on Windows. There'll be LOTS of issues. You are looking at a very highly loaded system, you need all the help you can get.

I would have thought you would be looking at 2 or even better/safer 3 Linux boxes for the web servers - 8GB, 2xQuad Core, RAID. A database server, similar spec and a load balancer. This lot will need fast networking and a good switch in the middle. You'll need to make sure you have plenty of bandwidth between the servers and your users.

10 times that is a whole other ballgame. Again, 10,000 people all sitting a quiz simultaneously - are you *sure*? That's a hell of a big classroom.

I'd been intrigued to hear more about this project if you can.
In reply to Howard Miller

Re: Hardware Requirements of Moodle

by Antony Meyn -

Yep.....i kinda realized tht this was to wrong forum. This was my first thread!!! (Hope it gets moved)

BTW I have a server of this configaration @ present.

System Configuration: Sun Microsystems sun4u Sun Fire V890

System clock frequency: 150 MHz

RAM : 16GB

No of Processor : 4

Hardisk : 146GB x 4, No raid available

Network card : 1GB

One major constrain is that no matter what servers I get, They will be far from me physically, and I have to handle them remotely. Currently we are using a remote  access utility called putty. Thats why I wanted to know if Windows is a good option (Now i guess it is not). What do you think the above configaration will be able to handle???

In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
I think that you're probably going to be in the ballpark with this box. You never *really* know until you try it. I guess it would be nice to have the database on another machine just to be sure. You might also want to have a look at the lightweight alternative to Apache, lighttpd and the PHP accelerator, eAccelerator,. We have had some good results with these.

Remote SSH access using PuTTY or whatever is the beauty of a Unix (command line) box.
In reply to Howard Miller

Re: Hardware Requirements of Moodle

by Antony Meyn -
My guess is 200+ smooth "concurrent users".
In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
??

Not sure what you mean, have you changed your mind about the number of users?
In reply to Howard Miller

Re: Hardware Requirements of Moodle

by Antony Meyn -
I mean i guess this hardware will support 200 users (concurrent), I have still not changed my mind about 1000 users(concurrent).

System Configuration: Sun Microsystems sun4u Sun Fire V890

System clock frequency: 150 MHz

RAM : 16GB

No of Processor : 4

Hardisk : 146GB x 4, No raid available

Network card : 1GB


In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
I'd like to think you'd do better that 200! You've got lots of memory - that's the main thing. The web server processes use up the memory, start swapping and it's game over.
In reply to Howard Miller

Re: Hardware Requirements of Moodle

by Michael Penney -

8GB, 2xQuad Core, RAID. A database server, similar spec and a load balancer.

This scenario includes heavy very heavy database use (lots of writes), so I would make the DB server as if not more powerful than the Apache servers(s).

For 10,000, you'll want clustered db servers - probably Solaris is the best choice for the OS (though we are also a Sun partner, so my opinion is biasedsmile) - OTOH there is reason we use Solaris - it's not just the pretty namewink.

In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
> 1000 user will be taking up a quiz at the same time, thats what i had in mind about concurrent users.

This is probably an examination, so at the hour these users will be competing against each other to load the quiz. (I'm assuming that they were allowed to login before the hour.) That is going to generate a high peek load already with 200 users!

> will there be any issues if the server is windows rather than Linux....ie. having moodle set up on WAMP

Well, both sides have "issues", but there is an apparent one with Windows. Search this forum for "apache memory leak".

In any case do a search here first, you'll find many relevant discussions.
In reply to Howard Miller

Re: Hardware Requirements of Moodle

by sulochana sooriyaarachchi -
**concurrent users*** wide eyes

I am also looking for a way to emulate real human Moodle-users, at least to emulate a person sitting for a quiz, at least-least to emulate a person doing final submission of quiz.

If I emulate a single "User" as "a sequence of requests" like this...???

eg: a user doing final submission of a quiz should be the sequence of URLs generated from the time a person clicks "Submit all and Finish" till response comes back.
I should be able to record this sequence of URLs by doing one submission. (Can use Apache access log to record it.)

Then to emulate 100 people submitting quiz at the same time, I should replay the record using concurrent 100 threads in Linux. (Can use a tool like Apache Benchmark to replay URLs. If any other tool available it so nice if u could share about it...)

Will this be a better approximation for real human users doing concurrent submission?

BTW: what is this "session object" idea? Can u pls explain a bit how I can use that to synthetically load my Moodle installation?

*concurrency is normally around 5% of the number of active user accounts*
How to get this kind of idea about a Moodle intallation? thoughtful If I am to find level of concurrency for my installation what method I should follow?
In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Cristian Alvarado -
I'm no expert on the subject, but let me chime in with our setup here:
  • 1 Load balance server running squid in a round robin
  • 2 Application servers, both are sun xfires, no idea what model, but they are new, running Apache2
  • 1 database server, a dell machine, also don't know what model.
All four of them run Red Hat Linux. We experience heavy loads during midterm and finals, and as far as I know, we have the largest moodle installation on the west coast of the US. (As an aside, we also host the US cvs mirror). As far as I know, one machine will absolutely die under the amount of concurrent quiz users you are describing.

(disclosure: I am not a system administrator. I work on our faculty and student support team for our moodle installation)
In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Don Hinkelman -
Picture of Particularly helpful Moodlers Picture of Plugin developers
Hi Antony,

Have you looked carefully at this performance report in the Quiz forums?
http://moodle.org/mod/forum/discuss.php?d=68579

I think your hardware investment can be modest. 4GB memory for 1000 simultaneous quiz users with heavy audio files is doable (loading 50 questions, 30 audio files) on an internal LAN. The key is LAMP configuration. If you go with Windows, I have no experience. I highly recommend barebones Linux for performance along with a cheap Dell server.
In reply to Don Hinkelman

Re: Hardware Requirements of Moodle

by Antony Meyn -
I want a few suggestions on the Linux distro for my moodle server, any favorites?
In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
`That depends a good deal on where you want to get to,' said the Cat.

`I don't much care where--' said Alice.

`Then it doesn't matter which way you go,' said the Cat.

`--so long as I get SOMEWHERE,' Alice added as an explanation.

`Oh, you're sure to do that,' said the Cat, `if you only walk long enough.'

http://www.gutenberg.org/dirs/etext91/alice30.txt
In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Mitja Podreka -
Picture of Translators
Few suggestions are here.
My favourite is Debian. People say it is not easy to use, which I don't agree, but a server running an important web site shouldn't be "easy to use".
Average of ratings: Useful (2)
In reply to Mitja Podreka

Re: Hardware Requirements of Moodle

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
Or if you are more famliar with Ubuntu, the Server Edition http://www.ubuntu.com/products/whatisubuntu/serveredition

If you want some orientaion on all the 250 alternatives check http://distrowatch.com/
In reply to Visvanath Ratnaweera

Re: Hardware Requirements of Moodle

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
Vote +1 for Ubuntu Server.

I find it very straightforward, and there is lots of support for it which is more to the point usually.
In reply to Antony Meyn

Re: Hardware Requirements of Moodle

by Lynn Revai -
We are in the same situation Antony.

What conclusion did you come to? now that it is late May.

We are just about to move from 1.7 to 1.9 and I want to be sure it works when we move over?
In reply to Lynn Revai

Re: Hardware Requirements of Moodle

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
Hi Lynn

A Moodle site is a bit too complicated to categorized as "it works" or "it does't work". You have to be more specific, I guess.
In reply to Lynn Revai

Re: Hardware Requirements of Moodle

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
If it worked for 1.7, it'll almost certainly work for 1.9 all else being equal. In fact, I would hope you may see a performance improvement with 1.9.
In reply to Howard Miller

Re: Hardware Requirements of Moodle

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
Since this thread had resurfaced I notice that the obvious wasn't stated: Moodle 1.6 is still maintained and is the lightest of all.