Choosing a server environment or how not to put Moodle

    Since the Moodle distance learning environment is quite popular, discussions on the most suitable server environment regularly pop up in specialized forums.

    Moodle is based on cross-platform technologies (LAMP), so by adding time, effort and knowledge, you can make Moodle work anywhere from Moemo to Windows. At the same time, none of the platforms is a “silver bullet”.

    Moodle is a professional enterprise-level software product. In complexity, it can be compared with a corporate ERP / CRM system. The developers made it user friendly and easy to administer as much as possible. And this external simplicity provokes an amateurish approach to implementation: it seems that if a specialist successfully manages the installation of MS Office, administers a site on Joomla or is knowledgeable in IT technologies, he can easily complete the installation of Moodle in an hour and then return to the main ones responsibilities.

    Here are 4 common antipatterns for installing Moodle:

    Novice Windows administratorsOften given as an industrial implementation, installing the XAMPP-based trial package for Windows. Everything is there, as technicians who are not faced with serious server administration are used to: a ready-made kit, a graphical installer, works without editing configuration files. With such an installation, the inoperability of many functions, serious security and performance problems, as well as the complete unavailability of such installations and the specialists who made them for any failures are overlooked.

    The first difficulties appear already when setting up external access from the Internet, so the forums are full of questions like “why do I have a 127.0.0.1/moodle link , but others don’t? Where to enter the new address elearning.world-school-of-everything.narod.ru to work? ”

    Most often, such an implementation ends with a disappointment in Moodle, accusing the product of all the problems caused by an incompetent installation. It is much worse if the system manages to take root before the first serious failure: the organization will lose not only the money invested in filling the system with content, but also its reputation. The entire history of training, grades, information about the tasks completed by students may be lost: convincing teachers and students to repeat the experiment for the second time will be very difficult. However, it is often enough to attract a qualified engineer and he will recover all or most of the lost information.

    In fairness, it should be noted that novice Linux administratorsInstalling Moodle with the apt-get install moodle command or copying the distribution package to / var / www of the system web server are in the same place.

    Webmasterscan make a generalization that since Moodle is written in PHP and uses an SQL database, then this is a regular CMS engine, like Joomla, which means that you can upload it via FTP for hosting for 100 rubles per month and click the "install" button in admin interface. We leave behind the scenes that even CMS engines of important sites should pay more attention, competence and system resources. This generalization is similar to the conclusion that a regular bus is the same scooter, and it can also be parked in a barn, filled with a mixture of gasoline and oil, operated without maintenance until it breaks, and then repaired in the yard with a set of screwdrivers and wrenches: technology similar, but different scale, system complexity, load and level of responsibility.

    Here, in the best case, the webmaster will receive a “white page” at the installation stage - this will protect the hosting provider from exceeding the system limits. If providers for 100 rubles were giving out unlimited resources to everyone, they would have long gone bankrupt on hardware. If there are enough resources for the installation, users will “get to know” the hoster's protection a little later: when they start filling the system with materials, the load will increase or specific functions will begin to be used, such as import / export of courses.

    Most providers try by default to install more libraries and features, but for the full functioning of Moodle they are still missing. In addition to the slow and unstable operation of LMS, there may be problems with performing background tasks, sending notifications, synchronization, network interaction, import / export, checking spelling texts, checking viruses for attachments, working with formulas, displaying “heavy” content, and a number of other difficulties .

    Scholars- this is the most difficult case. They sometimes make very good professionals, but this takes a lot of time, patience and, often, several ruined projects and critical failures with the loss of all content. At the stage under discussion, they inspire the leadership with inspiration to deploy the system to FreeBSD / Mac OSX Server / blade server / MS SQLServer / anything else and require this from the contractor, skillfully using professional terminology and quoting authorities. Their practical skills are often limited by the ability to order a virtual machine with FreeBSD preinstalled, and the web server that breaks the page encoding or is hieroglyphic, instead of days of the week, is explained by defects of Moodle itself, and not by the inability of a scholar to set up a locale under FreeBSD.

    It is very simple to distinguish “scrabble” from an expert: the expert has more than three successful implementations on the technology recommended by him, more than two fully implemented implementations on other technologies and he has already assembled and tested the prototype Moodle installation with the technology recommended by him.

    All of the above is true not only for Moodle, but also for any other LMS, ERP / CRM system or a professional online store (Magento etc.). There cannot be a “simple and easy LMS” because the subject area itself is complex and diverse. In this sense, an easy SDO looks like a trap with a wide entrance and a narrow exit: very soon, any organization will become crowded and uncomfortable in it. Changing an already implemented solution is many times more difficult than the initial implementation.

    However, there is one exception: enthusiastic teachers who introduce e-learning on a voluntary basis can safely ignore all my recommendations, because any work done for free and on their own initiative is good and worthy of respect. But managers, accepting such a project as a pilot for implementation, must thank and reward the creator, and then instruct specialists to remake the technical solution in accordance with all the rules.

    Our team has chosen Ubuntu Linux Server for itself, as a stable, easily and regularly updated and easy to administer system. Its free is an important factor, as it affects the total cost of implementation.

    The ability to perform any work from the console, including remotely, via ssh, even on a slow connection, is inherent in all Unix systems. Only inexperienced administrators speak of the insecurity of this function, for which setting permissions, ssh access, Firewall, and automatic blocking by suspicious activity in logs is akin to magic.

    The ability to automate operations by writing scripts and creating deb packages turned out to be very useful for us. The availability of free, but professional monitoring, backup and mass administration tools, virtualization systems in Linux makes this platform especially attractive.

    Of all the operating systems and distributions that I have seen, Ubuntu Linux Server is the most willing to deploy Moodle, although there you need to install and configure dozens of additional packages. But the use of a typical platform allows all this to be easily automated. And the problem of the lack of Linux-oriented specialists in the market is very simple to solve: Ubuntu Linux is the standard for all the jobs of our technical specialists. Any developer, trainee or technical support engineer, even if he is not involved in server administration, involuntarily gets used to the platform and tests all the developments immediately in the same environment as on the server.

    Other teams of specialists may well have a different experience: a lot of successful projects on Window, FreeBSD or Max OS X Server. Even cabinet and plumbing assemblers bring with them a set of familiar and convenient tools. Therefore, I want to end with a proverb: "In skillful hands and a stick shoots." And no platform is suitable for industrial implementation if a specialist does this for the first time.

    Also popular now: