University of Alberta went from a pilot project of 13 courses in January 2011 to running all centrally supported courses (3600+) in Moodle in September 2012. Our central Moodle instance has seen more than 500,000 page loads and 24,000 unique visitors per day. This is a technical discussion of the challenges involved with providing this solution in large enterprise environment. We will discuss the architecture decisions, processes required to support this project, major incidents, resolutions and workarounds that were encountered during the first year and a half of the life of this project.
3. Introduction
In 2010 University of Alberta was
looking for a new LMS.
Objectives:
- Reduce licensing costs
- Create a service people want to
use
- Improve service reliability
- Collaborate with other institutions
across the province and beyond
5. Developers
• New features
• Bug fixes
• Frequent Updates
(See their talk at 3:30
Collaboration without
Compromising)
Organization
VS.
System Admins
• Stability
• Security
• Redundancy
10. Architecture
Decisions
Software Software Decisions
- Ubuntu LTS
- Postgresql 9.0
- Database in a VM
- FIleserver replication using LVM and
DRBD
- Hourly (nearly) backups with 30 day
retention
- Backups happen on Standby servers
- eAcceletor
- "make everything as simple as possible,
but not simpler"
14. Architecture
Monitoring
Catch problems
before they turn
into outages
All machines are monitored for
- CPU load
- Disk
- Free Memory
Database
- Postgresql errors
- Long running processes
Fileserver
- DRBD Mirror Status
Application
- Number of apache processes
17. What is next?
Suggestions for improvements
- moodle cron.php
- Application functional testing
- Application monitoring
- create our own Ubuntu repository
- scaling up and clustering Postgresql
18. Questions?
More information, including scripts,
documentation, Disaster Recovery
procedures, installation instructions,
please go to
http://www.ualberta.ca/~dostatni/
moodlemoot2013