Dear Sir/ Madam, I want to configure a local Moodle website in our campus for quiz and other academic related operations & approx 1000 to 2000 students could access them. Kindly suggest what could be the sufficient system configuration?
Moving to Hardware and performance...
What operating system do you plan on using?
How will they be accessing the site... will large classes be accessing Moodle at the same time or will it be more evenly spread? Approximately how many people will actively be using the site at the same time (not just logged in)?
Sir, I want to use windows server 2008 and approximate 1000 users.
Re: Local Moodle Website - System Configuration
All the initial pointers in performance matters become visible when you write a new post, https://moodle.org/mod/forum/post.php?forum=94 (and then vanish) in the forum. For example, with the Advanced search mentioned there, you could have found the following recent threads:
- "Advice : AWS Capacity Planning for 20,000 concurrent users" https://moodle.org/mod/forum/discuss.php?d=337550
- "hardware and software needs for a powerfull moodle server" https://moodle.org/mod/forum/discuss.php?d=337585
I love these scenarios as they are local and you have the flexibility of building something rather amazing on a pretty limited budget. Plus I'm not a fan of the entire, go look here answer as 1 answer does not come close.
Local:
Networking infrastructure should be be at least 1Gbps
Server:
Depending who you talk to 1000-2000 students is not that difficult. The most common mistake I see is overlooking the storage requirements, specifically IOPS required to run Moodle smoothly.
If your budget permits I would recommend either 4x SSD in Raid 10 utilizing a HW Raid Controller. Otherwise you may also consider NVMe.
CPU - Intel Xeon E5-1650V2
RAM - 64Gb - 128Gb DDR3 ECC
SSD - 4x 512Gb in Raid 10 (scale depending on storage requirements)
HDD - 2x - 2Tb in Raid 1
System
Ubuntu 16.04
Nginx 1.10
PHP 7
MySQL 5.7.x
Ram Disk
I believe the above would be enough to get you started. However, you would need to scale depending on your storage requirements and planned usage.
If you have any other questions, feel free to ask.
On PHP 7 and nginx serving as web server, 4 core CPU even based on nehalem architecture and even RAID 0 on standard drives with 8GB RAM would be sufficient serving 2000 users where not all would be taking quiz at the same time.
Do you donate hardware to clients as well when you suggest them overkills?
No but I'm also not and ass about it either. After the number of Moodle setups I've completed over the years, I am just providing a best case scenario given their one line response indicating operating environment and estimated requirements.
Plus clearly this is a production server. No one should be suggestion standard drives for this type of implementation. Hardware is relatively cheap these days and given this is a local install it simplifies some things compared to a typical data-center setup.
It makes absolute no sense to mess around with hardware in a professional production environment. I have seen it time and time again when recommendations like yours just end up costing them more money in the end.
None the less thanks for your valuable insight.
Grant, please dont mind what I mentioned above, i definitely had no intentions to offend you, but you as well have to consider the location of original poster, NVMe even I do recommend for high IOPS, but not available in South Asian region as easily as in Europe/US, and on tops the cost involved is tremendous and they will likely be looking for cheap alternative, not even a proper server class CPU but desktop to be converted into Server.
Usman you are correct , i am looking for a cheap solution.
Dhanajay, your current hardware based on i3 and 8GB RAM is good enough for 1000 registered users, but make sure you have Server 2008 R2, if not R2, then get update for Server 2008 so it will server PHP as FastCGI process and not CGI.
Also, do keep eye on your server resources during the quiz, as you will be in better position to see if it's memory or CPU creating a bottle neck.
additionally, I will recommend adding a SSD drive to your server and serve your database and temp folder out of moodledata folder from SSD drive.
finally, if you can, as RAM is pretty cheaper either increase your RAM size to 16GB and allocate DB buffer to 8GB, also use SSD as well for O/S and IIS installation.
Finally, if running latest version of moodle, use PHP 7, and on top of that make use of Zend OpCache together with WinCache for PHP 7
I have installed winodws 200 server r2 and latest xampp means php 7 and all. but when load increases on the server the apache gets crash. please give the solution i am stuck.
I have created a blog post, showing Moodle installation on Windows server using IIS as web server, just watch the video and setup your server.
http://blog.academictools.org/2015/12/installing-moodle-on-microsoft-windows.html
Sigh...
You ask 10 people for their opinions and you get 10 different answers. And everybody thinks *they* are correct
Let's be nice out there!
But, gentlemen, we don't know nearly enough about the user's situation to be so specific.
My guess would be that his solution is in the realms of some relatively inexpensive 'commodity' off-the-shelf server. 2000 users isn't many but it's critical to understand what they are doing. A class of 100-200 doing a quiz at the same time is an entirely different story.
Anyway, my guess is that the OP will not be back
Exactly my point, limited information and a rough guide to get started. Plus the opportunity to open a dialogue with Dhananjay and obtain more information regarding the build-out.
There is no absolute when dealing with hardware. As Usman mentioned earlier if your using the latest version of Moodle with PHP7, properly configured and tuned it will make a huge difference in your hardware requirements.
If you are stuck with your current configuration, consider swapping out your standard hard-drive for an SSD drive. (Easy and relatively cheap). This will give you a huge performance bump due to increased IOPS.
If I understand you correctly your already having issues conducting an exam of over 100 students. But you want to be able to handle 500?
Also, are you asking me to suggest minimum hardware (new) because you have the opportunity to buy new hardware? Or are you hoping to upgrade your i3 system?
Grant
Sharma, just get a quote about server hardware from vendors, and lets see what they offer.
What operating system do you intend to install on server?