Chapter 1. Moodle Installation

Let's get started by installing Moodle.

After providing an overview that describes which setup is most suitable, software as well as hardware requirements are outlined.

We will then cover the following installations:

  • Installing Moodle in a LAMP/Unix environment
  • Installing Moodle in a Windows environment
  • Installing Moodle in a Mac OS X environment
  • Installing Moodle via the Command Line Interface (CLI)
  • Upgrading Moodle manually and via CLI and Git

You will only need to study the section(s) of the operating system(s) you are planning to use. Moodle can be scaled from a single instructor to an entire institution. We will only be able to cover the most common installations and present solutions to some common problems. We also have to assume that you are familiar with basic system administration of the operating system on which you will be installing Moodle.

Moodle installation – an overview

Before we start installing Moodle, you have to decide which setup is right for your organization. Once you have come to a conclusion, there are a number of prerequisites that you have to provide before we can get started.

Choosing the best setup

There are a number of different environments in which you can set up Moodle. The three main criteria that should dictate the choice of the correct setup are:

  • Flexibility: If you want to have full control over your system, be able to tweak system settings, and make frequent changes to the setup, you are best suited to host your own server. However, if your preferred choice is to only administer Moodle while somebody else is looking after the operating system, the web server, and backups, it is better to opt for a professionally-hosted setup, and particularly, the offerings provided by the authorized Moodle Partners.
  • Scalability: This is entirely driven by the number of concurrent users, that is, the number of active learners and teachers logged in to Moodle at the same time. A Moodle on a single-processor desktop computer will not be able to cope with hundreds of simultaneously logged-in users. A load-balanced cluster, on the other hand, would be overkill for a small institution with a handful of learners. The following table provides some indicative setups for different types of educational organizations, and is by no means complete:

    Max number of concurrent users

    Recommended setup

    1 (to experiment locally)

    Desktop, laptop, memory stick

    20 (single class)

    Public server or https://moodlecloud.com/en/

    100 (small school / company)

    Shared server

    250 (large school / company)

    Dedicated server

    500 (medium-to-large college)

    Dedicated application and database servers

    +500 (university/corporate)

    Load-balanced cluster

    Please bear in mind that these are only indicative numbers, which are not written in stone, and also depend on the other factors mentioned here. The mentioned hosting option on https://moodlecloud.com/en/ offers free Moodle hosting by Moodle HQ with a number of limitations: maximum number of users is set to 50, storage capacity is limited to 200 MB, there is no ability to install plugins, and there is advertisement displayed throughout the site. This is a good way to try out Moodle, but not intended for production sites.

    Organizations require a server (either dedicated or shared) that is either hosted in-house or externally. If you decide to go down the hosted route, it is highly recommended to avoid a cheap hosting package as their systems are not optimized for Moodle usage. This will have a significant impact on the performance of the system, especially with an increasing number of users.

  • Cost: Budgetary constraints will certainly play an important role in your setup. Unless you already have the appropriate infrastructure in place, it is likely to be more cost-effective to host your Moodle system externally as it saves you from having to purchase servers and provide a 24/7 data connection that caters to your learners' needs. Licensing cost is significantly higher if you use commercial operating systems, web servers, and database systems, instead of an open source solution. Either way, Moodle is designed to support a wide range of possible infrastructures suitable to your organization's IT policy.

In addition to these three key criteria that usually influence the decision about the underlying infrastructure, there are other factors that will have an impact on your decision, such as in-house expertise, compatibility with other systems, personal preference, and existing resources.

We will cover the three most popular operating systems for hosting Moodle—Linux, Windows, and Mac OS. For other setups such as on a memory stick, in a virtualized environment, or a larger multi-server cluster, please consult your local Moodle Partner (https://moodle.com/). Some hosting companies offer quick one-click installations (often via the Fantastico installer, which usually doesn't contain the latest version). While the resulting Moodle system is sufficient for experimental sites, it is certainly unsuitable for production environments.

Moodle prerequisites

There are a number of hardware and software requirements that have to be satisfied before we can start installing Moodle.

Hardware requirements

These requirements apply if you host Moodle yourself or if it is hosted on an external server (shared, virtual, dedicated, or clustered). On cheaper hosting packages, the hardware configuration is often insufficient to run Moodle efficiently:

  • Disk space: Moodle takes up between 150 MB and 200 MB of disk space. However, this only provides you with an empty system and does not take into account the space you require for any learning resources. The faster the disks, the better. RAIDed disks are recommended, but are not essential on smaller installations.
  • Memory: The (absolute) minimum requirement is 256 MB for a single-user instance, but more is necessary in a multiuser setup. A good rule of thumb is to have 1 GB of RAM for every 10-15 concurrent users. You have to double this calculation on Windows-based systems due to the higher overhead of the operating system.

    Tip

    The more RAM the better; the faster the RAM the better.

  • CPU: Processor type and speed is important too, but not as important as RAM. As always, the faster the CPU the better, and the more cores a CPU has, the more powerful it will be.
  • Network: While Moodle can run on a standalone machine, its full potential is in a networked environment. A fast network card is essential, as is good upload and download speed if the LMS is accessed over the Internet.

Software requirements

While it is recommend to have the latest version installed, for Moodle 3, you must have the following components up and running on your server (release specific notes can be found at https://docs.moodle.org/dev/Releases):

  • Database: Moodle officially supports four database systems: MySQL (version 5.5.31 or later utilizing the ACID-compliant InnoDB storage engine), PostgreSQL (version 9.1+), MariaDB (version 5.5.31+) Microsoft SQL Server (version 2008+), and Oracle (version 10.2+).
  • Web server: Apache is the preferred web server option, but Moodle works well with any other web server that supports PHP such as Microsoft IIS.
  • PHP: PHP 5.4.4 is the minimum PHP version to run Moodle 3. PHP 7 is also supported. There are a number of PHP settings, which you might have to change in the php.ini or .htaccess file (see https://docs.moodle.org/en/Installing_Moodle for more details).
  • PHP extensions: Moodle makes use of a number of extensions, most of which are compiled into PHP, by default. They are as follows:
    • Compulsory extensions: curl, ctype, dom, gd, hash, iconv, json, pcre, simplexml, spl, xml, zip, and zlib
    • Recommended extensions: intl, mbstring, openssl, tokenizer, soap, and xmlrpc
    • Conditional extensions: mysql, odbc, pgsql, (depending on database) and ldap, ntlm, and so on (depending on authentication mechanism used)

Depending on your specific setup, additional software and hardware might be required. It is assumed that the database, web server, PHP, and its extensions have been installed correctly as this is not a VLE administrator task. Once this is the case, we are ready to go.

Tip

Internet Explorer 8 is not supported by Moodle. A modern web browser (Internet Explorer 9+, Firefox 25+, Google Chrome 30+, or Safari 6+) is required to access Moodle.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.35.247