Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

Moodle 3 Administration - Third Edition
Moodle 3 Administration - Third Edition
Moodle 3 Administration - Third Edition
Ebook969 pages5 hours

Moodle 3 Administration - Third Edition

Rating: 0 out of 5 stars

()

Read preview

About this ebook

An administrator’s guide to configuring, securing, customizing, and extending Moodle

About This Book
- Learn how to plan, install, optimize, customize, and configure Moodle
- Guarantee a cutting-edge learning experience in a secure and customizable environment while optimizing your day-to-day workload
- A one-stop guide with a problem-solution approach and a wide range of real-world examples

Who This Book Is For
If you are a technician, systems administrator, or part of academic staff, this is the book for you. This book is ideal for anyone who has to administer a Moodle system. Whether you are dealing with a small-scale local Moodle system or a large-scale multi-site Virtual Learning Environment, this book will assist you with any administrative task. Some basic Moodle knowledge is helpful, but not essential.

What You Will Learn
- Install and update Moodle on multiple platforms manually and via CLI and GIT
- Manage courses and categories, users and cohorts, as well as roles
- Get Moodle hooked up to repositories, portfolios, and open badges
- Configure Moodle for mobile usage, accessibility, localization, communication, and collaboration
- Guarantee backups, security and privacy, and achieve maximum performance via the Moodle Universal Cache and the new cron system
- Configure the Moodle events system to generate comprehensive reports, statistics, and learning analytics
- Network Moodle with Mahara and extend it with third-party add-ons and via LTI
- Customize Moodle web services to enable mobile learning and integration with other IT systems

In Detail
Moodle is the de facto standard for open source learning platforms. However, setting up and managing a learning environment can be a complex task since it covers a wide range of technical, organizational, and pedagogical topics. This ranges from basic user and course management, to configuring plugins and design elements, all the way to system settings, performance optimization, events frameworks, and so on.

This book concentrates on basic tasks such as how to set up and configure Moodle and how to perform day-to-day administration activities, and progresses on to more advanced topics that show you how to customize and extend Moodle, manage courses, cohorts, and users, and how to work with roles and capabilities. You’ll learn to configure Moodle plugins and ensure your VLE conforms to pedagogical and technical requirements in your organization. You’ll then learn how to integrate the VLE via web services and network it with other sites, including Mahara, and extend your system via plugins and LTI. By the end of this book, you will be able to set up an efficient, fully fledged, and secure Moodle system.

Style and approach
The book takes a problem-solution approach to fall in line with your day-to-day operations. This is a one-stop reference for any task you will ever come across when administering a Moodle site of any shape and size.
LanguageEnglish
Release dateFeb 29, 2016
ISBN9781783289721
Moodle 3 Administration - Third Edition

Read more from Alex Buchner

Related to Moodle 3 Administration - Third Edition

Related ebooks

Programming For You

View More

Related articles

Reviews for Moodle 3 Administration - Third Edition

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Moodle 3 Administration - Third Edition - Alex Buchner

    Table of Contents

    Moodle 3 Administration Third Edition

    Credits

    About the Author

    About the Reviewers

    www.PacktPub.com

    eBooks, discount offers, and more

    Why subscribe?

    Preface

    What this book covers

    What you need for this book

    Who this book is for

    VLE job functions

    Obligations and skill sets of a VLE administrator

    Conventions

    Reader feedback

    Customer support

    Downloading the color images of this book

    Errata

    Piracy

    Questions

    1. Moodle Installation

    Moodle installation – an overview

    Choosing the best setup

    Moodle prerequisites

    Hardware requirements

    Software requirements

    Installation in a LAMP environment

    Downloading Moodle

    Creating the Moodle database and the data directory

    Using a hosted server

    Using the command line

    Creating the Moodle data directory

    Running the installer script

    Finalizing the installation

    Setting up the cron process

    Installation in a Windows environment

    Installation in a Mac OS X environment

    Installation via the Command Line Interface

    Updating Moodle

    Manual update

    Creating a backup

    Creating your new Moodle system

    Running the update script

    Updating Moodle via CLI

    Update notifications

    Summary

    2. The Moodle System

    Moodle architecture

    The LAMP architecture

    The Moodle layer

    Code and data locations

    Finding your way around in Moodle

    The Navigation bar

    The administrator search facility

    Moodle bookmarks

    Moodle Docs and Help

    File management

    The Moodle file management interface

    Uploading files

    Private files

    To link or to copy?

    File types

    The upload limit

    Web host file management

    File management via the file system repository

    Summary

    3. Courses, Users, and Roles

    A high-level overview

    Moodle courses

    Moodle users

    Moodle roles

    Summary

    4. Course Management

    Course categories

    Course categories – an overview

    Managing course categories

    Adding course categories

    Course sub-categories

    Deleting course categories

    Organizing courses and categories

    Creating courses

    Course requests – enabling teachers to ask for new courses

    Managing courses in bulk

    Forms of enrolment

    Internal enrolment

    Manual enrolment

    Self enrolment

    Guest access

    Cohort enrolment and synchronization

    Database-driven enrolment

    LDAP

    External databases

    Flat files

    The IMS Enterprise file

    Meta courses – sharing enrolment across courses

    Enrolment with payment

    PayPal

    Summary

    5. User Management

    User profiles

    Profile fields

    General category

    User picture category

    Additional names

    Interests category

    Optional category

    Creating user-defined profile fields

    Profile categories

    Profile fields

    User preferences

    Standard user actions

    Browsing users

    Filtering users

    Bulk user actions

    Manual accounts

    Adding individual users

    Bulk uploading and updating of users and their pictures

    The text file format

    Required fields

    Password

    Optional fields

    Custom profile fields

    Enrolment fields

    Cohort fields

    System role

    Special fields

    Uploading users

    Setting default values and templates

    Loading of data

    Uploading user pictures

    Manual account settings

    Cohorts

    User authentication

    Common authentication settings

    Email-based self-registration

    The LDAP server

    The LDAP server settings

    Data mapping

    External databases

    Connection settings

    Data mapping

    Other authentication mechanisms

    External Moodle authentication methods

    Internal Moodle authentication methods

    Usernames – best practice

    Summary

    6. Managing Permissions – Roles and Capabilities

    Moodle predefined roles

    Contexts

    Assigning roles

    The System context

    The Course Category context

    The Course context

    The Module context

    The Block context

    The User context

    The Front page context

    Multiple roles

    Capabilities

    Role definitions

    Modifying roles

    Overriding roles

    Creating custom roles

    Example roles

    The parent/mentor role

    Testing new roles

    Roles management

    Allowing roles assignments and overrides

    Assigning of default roles

    Moodle role assignment – best practice

    Summary

    7. Moodle Look and Feel

    An overview of the look and feel

    Site versus Dashboard

    Customizing your front page

    The front page settings

    Arranging front page blocks

    Logging in from a different website

    Other front page items

    Front page users

    Front page filters

    Front page reports

    The front page backup and restore

    Front page questions

    The default Dashboard and Profile pages

    Customizing navigation

    Replacing the front page

    Moodle themes

    Fixed width versus fluid versus responsive themes

    Selecting a Moodle theme

    Theme types

    Theme settings

    Customizing themes

    Theme customization basics

    The Moodle editor

    Configuring the Atto editor

    Extending the functionality of tables

    Supporting mathematical equations

    Adding some awesomeness

    Accessibility

    Guaranteeing accessibility through Moodle themes

    Accessibility support through the Moodle editor

    Support for a screen reader

    Summary

    8. Moodle Plugins

    Plugins – an overview

    Module plugins

    Activity modules

    Configuring blocks

    Configuring filters

    Moodle repositories

    Internal repository plugins

    External repository plugins

    Data storage repositories

    Application repositories

    Moodle portfolios

    Miscellaneous plugins

    Course formats

    Question types and behaviors

    Availability restrictions

    Licences

    Plagiarism prevention

    Installing third-party plugins

    Third-party software – an overview

    Good add-ons and bad add-ons

    Popular add-ons

    Organizational decisions around plugins

    Installing third-party add-ons

    Installing the Collapsed Topics format plugin via the web interface

    Installing the Configurable Reports plugin manually

    Installing the Certificate module via Git

    Installing plugins via the command line

    Keeping plugins up to date

    Uninstalling third-party add-ons

    Summary

    9. Moodle Configuration

    Collaboration

    Configuring blogs

    Supporting comments

    Managing tags

    Configuring and managing badges

    Adding badges

    Supporting the LTI consumers and producers

    Localization

    Languages, idiomas, 语言, and اللغات

    Language packs

    Language settings

    Language customization

    Multilingual content

    Calendaric information

    Calendars

    Time zones

    Grades and gradebook settings

    Miscellaneous educational settings

    Communication

    Synchronous communication

    Instant messaging

    Video conferencing

    Asynchronous communication

    Messaging configuration

    Outbound messaging

    E-mail configuration

    The Jabber configuration

    Mobile notifications

    Default message output

    Inbound messaging

    Support contact

    Configuration RSS feeds

    Experimental settings

    Summary

    10. Moodle Logging and Reporting

    Moodle's logging framework

    Events

    Event lists

    Event monitoring rules

    The log manager

    The log store

    Reports

    An overview of reporting

    Moodle's reporting facilities

    Live logs

    Error reports

    Course and user reports

    Statistics

    Statistics settings

    Statistics view

    Report generation

    Configurable reports

    The Totara report builder

    Data analysis

    Web log analyzers

    Google Analytics and Piwik

    Miscellaneous reports

    Summary

    11. Moodle Security and Privacy

    Security – an overview

    Security notifications

    Moodle notifications

    Security report

    User security

    Access to Moodle

    Self-registration

    Guest access

    Protection of user details

    Course contacts

    Moodle passwords

    Security in roles

    Spam prevention

    Data and content security

    Content created within Moodle

    Visibility of content

    Site policy

    Antivirus

    System security

    Configuration security

    Access to dataroot

    The cron process

    HTTP security

    The IP blocker

    Moodle privacy

    Information stored about users

    Information available to other users

    Summary

    12. Moodle Performance and Optimization

    An overview of performance and optimization

    The Moodle content

    Content creation

    Content volume

    Content types

    Moodle's filter settings

    Moodle Universal Cache

    The MUC background

    Cache types

    Cache stores

    Cache definitions

    MUC configuration and testing

    The Moodle system settings

    Session handling

    Cron management and scheduled tasks

    Module settings

    Gradebook optimization

    Chat optimization

    Forums

    Miscellaneous settings

    Course backups

    Log files

    System paths

    Front page courses

    Roles and users

    Moodle performance profiling and monitoring

    Built-in profiling

    System profiling

    Summary

    13. Backup and Restore

    The course-level backup and restore

    The course backup

    Initial settings

    Backup default values

    Content-only backup versus full-course backup

    Schema settings

    Confirmation and review

    Finalizing a backup

    The course restore

    The restore destination

    Restore settings

    The backup schema

    Finalizing a restore

    The course Import

    Site-level backups

    Backup settings

    Backup reports and notifications

    The backup strategy

    Drawbacks of site-level backups

    System-level backups

    Moodle backups

    The Moodle software

    The Moodle data

    Snapshot creation

    Uses of backup and restore

    The year-end procedure

    Course templates

    Summary

    14. Moodle Admin Tools

    Web-based admin tools

    Upgrade tools

    Database tools

    Other tools

    Command Line Interface (CLI)

    Moosh – the Moodle shell

    Moodle Adminer

    Summary

    15. Moodle Integration

    Web services overview

    Web services in Moodle

    Enabling web services for external systems

    Create a specific user

    Check user capability

    Select a service

    Add functions

    Select a specific user

    Create a token for a user

    Enable developer documentation

    Test the service

    Enabling web services for users

    The Moodle mobile web service

    Customizing styles for the Moodle app

    Mobile app notifications

    Summary

    16. Moodle Networking

    Networking overview

    Networking prerequisites and security

    Required PHP extensions

    Networking security

    Peer-to-peer networks

    Adding a peer

    Peer services

    Profile fields

    Network authentication

    Allowing roaming

    Network servers block

    Network enrolment

    Moodle hubs

    Integrating Mahara or Totara Social

    Mahoodle!

    Mahara networking

    Adding Mahara to Moodle

    The Mahara portfolio

    The Moodle Community Hub (Moodle.net)

    Summary

    A. Configuration Settings

    Configuration reference: an overview

    Configuration reference: administration settings

    Configuration reference: system settings

    Default parameters

    Optional parameters

    Index

    Moodle 3 Administration Third Edition


    Moodle 3 Administration Third Edition

    Copyright © 2016 Packt Publishing

    All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

    Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

    Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

    First published: September 2008

    Second Edition: October 2011

    Third Edition: February 2016

    Production reference: 1240216

    Published by Packt Publishing Ltd.

    Livery Place

    35 Livery Street

    Birmingham B3 2PB, UK.

    ISBN 978-1-78328-971-4

    www.packtpub.com

    Credits

    Author

    Alex Büchner

    Reviewers

    Chad Outten

    Ian Rifkin

    Shashikant Vaishnav

    Acquisition Editors

    Reshma Raman

    Rebecca Youe

    Content Development Editor

    Rashmi Suvarna

    Technical Editor

    Shivani Kiran Mistry

    Copy Editor

    Sonia Cheema

    Project Coordinator

    Suzanne Coutinho

    Proofreader

    Safis Editing

    Indexer

    Tejal Daruwale Soni

    Production Coordinator

    Nilesh Mohite

    Cover Work

    Nilesh Mohite

    About the Author

    Alex Büchner is the co-founder and technical director of the Platinum Totara, Moodle, and Mahara partner, Synergy Learning. He has been involved in system and database administration for more than two decades and has been administering virtual learning environments of all shapes and sizes since their advent on the educational landscape.

    Alex holds a PhD in computer science and an MSc in software engineering. He has authored over 50 international publications, including two books, and is a frequent speaker on Totara, Moodle, Mahara, and related open source technologies. His first two books on Moodle Administration by Packt Publishing have become the de facto standard on the topic.

    The best learning experience in Moodle is provided when communication and collaboration is utilized. The same has been applied in writing this book, which would not have been possible without the support of the Packt editorial team.

    I would like to thank the reviewers for their constructive feedback provided during the reviewing process. This book would not be the same without your comments and suggestions.

    Special thanks must go to all my colleagues at Synergy Learning. No matter how tricky the Moodle problem, somebody will always be there to come up with a rock solid solution.

    I have to thank all our customers. Without you, we wouldn't be aware of all the Moodle hitches and glitches that are out there. Keep them coming!

    Last but not least, I have to thank AB + ab for their support and patience while I have been hiding away writing yet another book. I will make up for it. Promise!

    About the Reviewers

    Chad Outten is a qualified educator and technologist with more than 15 years of experience in the education and ICT sectors. He is the Managing Director at My Learning Space, an Australian e-learning company, and has worked closely with high-profile organizations such as eBay, Shell, Ricoh, iiNet, Rip Curl, and Queensland Health, among a diverse range of clients to help them improve staff performance and business outcomes through better learning, training, and compliance programs.

    Chad is a Moodle certified teacher and has acted as a mentor and assessor for the internationally recognized Moodle Teacher Certification program. He is a proud member of the esteemed Particularly Helpful Moodlers and Quality Assurance Testers groups at moodle.org, and in 2008, he organized the Australian Moodle Moot. Chad is passionate about e-learning, admires educators, and understands the value of a good learning management system to address the challenges of 21st century education.

    Ian Rifkin has experience with servers and applications (purchased, open source, and custom), and acts as a release engineer for his institution. He has in-depth knowledge of web application development and middleware integrations, including identity management systems. He is a developer and manager who has intimate knowledge of command-line Unix environments.

    He has worked with Moodle as a student, faculty member, and administrator. Currently, he is employed as the software systems manager at Brandeis University, where he manages a small web team. He also holds a part-time adjunct instructor role for the Graduate Professional Studies division at Brandeis University, where he teaches web content management and web application development.

    Ian holds an M.Sc. degree in information technology management and a BA degree in anthropology (with a minor in Internet studies). In his spare time, he enjoys computer games, genealogy research, baking, gardening, and spending time with his wife, Valerie, and son, Caleb.

    Shashikant Vaishnav was born and brought up in Jodhpur, a desert town in Rajasthan, India. He's involved with a London-based Seedcamp-supported start-up, Shoprocket. It's an e-commerce system delivered over the cloud and integrates seamlessly into any application with a single line of code.

    He is been involved with Moodle for quite a long time as a student. While an undergraduate, he participated in Google's Summer of Code program and integrated Apache Solr with Moodle. He also participated as a mentor in Google's Code-in program for the Sugar Labs organization.

    He finished his graduation from the Government Engineering college Bikaner with a bachelor's of engineering and technology degree in computer science in 2013. His focus on academics aside, he harbors a deep interest in music and sports.

    He loves to blog about his experiences with open source technology, travel, and life. He reads spiritual books, indulges in photography, and hacks around with open source projects.

    He previously collaborated with Packt Publishing as a technical reviewer of Git Version Control Cookbook and Moodle 3 Administration Third Edition.

    www.PacktPub.com

    eBooks, discount offers, and more

    Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at for more details.

    At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

    https://www2.packtpub.com/books/subscription/packtlib

    Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can search, access, and read Packt's entire library of books.

    Why subscribe?

    Fully searchable across every book published by Packt

    Copy and paste, print, and bookmark content

    On demand and accessible via a web browser

    Preface

    Since its launch in 2002, Moodle has become the benchmark that every learning management system is measured against. It has won a wide range of international accolades and established itself as an ecosystem for a large number of educational tools and services.

    Moodle 3 Administration, Third Edition is a complete, practical guide for administering Moodle sites. It covers setting up Moodle, configuration, and day-to-day administrative tasks as well as advanced options to customize and extend Moodle.

    The author, who has been at the cutting edge of Moodle administration since its advent, has adopted a problem-solution approach to bring the content in line with your day-to-day operations. The practical examples will help you to set up Moodle for large organizations and small courses alike.

    This is a one-stop reference for tasks that you will come across when administering a Moodle site of any shape or size. It not only covers core Moodle functionality, but also third-party tools and add-ons that will increase your flexibility and efficiency even further when dealing with administrative duties.

    Why another book on Moodle administration? Since the second edition of the title in 2011, the system has been modified and extended significantly to cover all the relevant new functionality in Moodle 3.

    What this book covers

    Moodle has grown into a mature, sophisticated, and complex software system. As a result, Moodle Administration covers a wide range of topics. A fun way to demonstrate the various subjects is in the form of a tube/subway/metro/ underground map (under the Creative Commons license by Synergy Learning):

    Chapter 1, Moodle Installation, tells you about the most suitable Moodle setup for your organization, including software and hardware requirements. You will learn how to install Moodle in three environments, namely, LAMP/Unix, Windows, and Mac OS, before Moodle updates options are covered in detail. Throughout the chapter, you will also learn how to perform some of the described operations using the Moodle Command-line Interface (CLI), Git, and Moodle Shell (Moosh).

    Chapter 2, The Moodle System, covers the building blocks of the learning platform. First, we cover the Moodle architecture, that is, the main Moodle components and where its data and code is stored. We then provide you with the skills to find your way a round in Moodle via its intuitive user and administration interface. Finally, we deal with the management of files, which includes Moodle's standard file management, web host file management, and file management via the file system repository.

    Chapter 3, Courses, Users, and Roles, gives you an overview of Moodle courses, users, and roles. It covers the basics of the three key concepts and demonstrates how the three core elements are inherently intertwined.

    Chapter 4, Course Management, shows you how to set up new courses (also in bulk) and organize them in categories. The remainder of the chapter deals with an array of enrolment options, covering Moodle's internal enrolment (manual, self, and guest), cohort enrolment and synchronization, database-driven enrolment, for instance, via LDAP, meta courses, and payment-driven enrolments.

    Chapter 5, User Management, explains how to manage users on your system. We first cover what user profiles look like and how they can be extended before presenting (manual and bulk) standard user actions. We then explain how to add users to Moodle manually, that is, one-by-one, and via batch upload before dealing with cohorts. Then, you will learn about a plethora of authentication mechanisms that Moodle equips us with. Finally, we discuss the best practices of user naming schemes.

    Chapter 6, Managing Permissions – Roles and Capabilities, guides you through permission management. It applies roles and capabilities to users in different contexts. We will cover the assignment of roles, modification of existing roles, and creation of new roles before we deal with any administrative role-related settings.

    Chapter 7, Moodle Look and Feel, tells you how to adapt your Moodle system to bring it in line with the corporate branding of your organization. We will cover the customization of the front page, basic creation of Moodle themes, and support for mobile devices via responsive themes. You will also learn how to configure the Moodle editor and support users with accessibility requirements.

    Chapter 8, Moodle Plugins, explains in detail how to extend your Moodle system via third-party add-ons. You will be able to distinguish between good add-ons and not-so-good add-ons before we cover extensions that are popular with other users. We will then cover how to install, configure, and uninstall third-party add-ons. Plugins that are covered are activities, blocks and filters, repositories, portfolios, text editors, licenses, question types and behaviors, plagiarism prevention, licenses, and availability restrictions.

    Chapter 9, Moodle Configuration, deals with the educational and technical configuration of your Moodle system. Pedagogical topics that are covered are badges, collaboration (blogs, comments and tags), LTI, localization, grades and gradebook settings, and a number of miscellaneous parameters. Technical subjects that are dealt with include synchronous communication (instant messaging and video conferencing), asynchronous communication (inbound and messaging as well as RSS feeds), and a number of experimental settings.

    Chapter 10, Moodle Logging and Reporting, equips you with the tools that you require in order to interpret and analyze the vast amount of usage data that Moodle is collecting. You will learn about the logging framework and monitoring facilities provided by Moodle that include activity reporting, user tracking, and some basic statistics. Then, we will take a look at third-party tools that cover learning analytics, report generation, web log analyzers, and live data trackers such as Google Analytics and Piwik.

    Chapter 11, Moodle Security and Privacy, focuses on ensuring that the data in your Moodle system is protected from any misuse. You will learn about security notifications, user security, data and content security, and system security. We will conclude the chapter with information on privacy and data protection concerns.

    Chapter 12, Moodle Performance and Optimization, makes sure that your Moodle system runs to its full potential. We will cover configuring, monitoring, and fine-tuning your virtual learning environment for maximum speed. You will learn how to optimize Moodle content before we focus on system parameters, namely, caching via the Moodle Universal Cache (MUC), session handling, cron management, scheduled tasks, module settings, and miscellaneous settings. We also present some basic performance profiling and monitoring tools.

    Chapter 13, Backup and Restore, focuses on ensuring that your data would not be lost in the event of a disaster. We will cover course backups, site backups, system backups, and restoring data from the taken data archives.

    Chapter 14, Moodle Admin Tools, covers Moodle admin tools that assist you with certain specific administrative tasks. These include web-based helpers such as upgrade and database tools as well as CLI scripts. We will also be looking at some add-ons, especially the powerful Moodle Shell, Moosh.

    Chapter 15, Moodle Integration, looks at ways to integrate Moodle with other systems via web services. We will provide information about the basic concepts of Moodle web services before you learn how to set up external systems and users controlling Moodle. This also covers the support for the official mobile app.

    Chapter 16, Moodle Networking, tells you how to connect disparate Moodle and Totara systems either in a peer-to-peer setup or via a Moodle hub. You will also be able to apply the learned networking techniques to connect the popular open source e-portfolio system, Mahara, and the social learning tool, Totara Social, to Moodle. We will further show you how to connect to Moodle.net and set up your own community hub.

    Appendix, Configuration Settings, provides you with a list of parameters that can be modified in Moodle's configuration file and the impact that each of these values will have. The areas covered are Administration Settings and System Settings.

    What you need for this book

    For Moodle, you must have the following components up and running on your server (at the time of writing for version 3.0):

    Database: MySQL (version 5.5.31 or later with the InnoDB storage engine activated), PostgreSQL (9.1 or later), Microsoft SQL Server (2008 or later), Oracle (10.2 or later), or Maria DB (5.5.31 or later)

    Web server: Apache is the preferred web server, but Microsoft IIS is also possible

    PHP 5.4.4 or later is required to run Moodle (PHP 7 is supported as well)

    PHP extensions: Moodle makes use of a number of PHP extensions—most of which are compiled in PHP by default.

    Depending on your specific setup, additional software and hardware might be required.

    Who this book is for

    This book is written for technicians and systems administrators as well as academic staff, that is, basically for anyone who has to administer a Moodle system. Whether you are dealing with a small-scale local Moodle system or a large-scale multi-site Virtual Learning Environment (VLE), this book will assist you with any administrative tasks. Some basic Moodle knowledge is helpful, but not essential.

    VLE job functions

    A Moodle administrator is basically a VLE administrator who manages a Moodle system. A quick search through recruitment agencies specializing in the educational sector reveals a growing number of dedicated job titles that are closely related to VLE administration. A few examples are as follows:

    VLE administrator (or LMS administrator or MLE administrator)

    VLE support officer

    VLE architect

    VLE engineer

    VLE coordinator

    The list does not include functions that regularly act in an administrative capacity, such as IT support. It also does not include roles that are situated in the pedagogical field, but often take on the work of a VLE administrator, such as learning technologists or e-learning coordinators.

    A VLE administrator usually works very closely with the staff who has the responsibility for the administration of IT systems, databases, and networks. It has been proven beneficial to have some basic skills in these areas. Additionally, links are likely in larger organizations where content management systems, student information management systems, and other related infrastructure is present.

    Given this growing number of VLE administration-related roles, let's look at some key obligations of the job functions and what skills are essential and desirable.

    Obligations and skill sets of a VLE administrator

    The responsibilities of a VLE administrator differ from organization to organization. However, there are some obligations that are common across installations and setups:

    User management (learners, teachers, and others)

    Course management (prospectus mapping)

    Module management (functionality provided to users)

    Look and feel of the VLE (often carried out by a web designer)

    Year-end maintenance (if applicable)

    Beginning-of-year setup (if applicable)

    Support teaching staff and learners

    In addition to these VLE-specific features, you are required to make sure that the virtual learning environment is secure and stable and performs well. Backups have to be in place, monitoring has to be set up, reports about usage have to be produced, and regular system maintenance has to be carried out.

    If you host your own system, you will be responsible for all of the listed tasks and many more. If your VLE is hosted in a managed environment, some of the tasks closer to system level will be carried out by the hosting provider. So, it is important that they have a good understanding of Moodle. Either way, you will be the first person to be contacted by staff and learners if anything goes wrong, if they require new functionality, or if some administrative task has to be carried out.

    Note

    With great power comes great responsibility!

    While a range of e-learning-related activities are now taught as part of some academic and vocational qualifications (for instance, instructional design or e-moderation), VLE administration per se is not. Most VLE administrators have a technical background and often have some system or database administration knowledge. Again, it entirely depends on whether you host your VLE locally or externally. The administration skills of a remotely hosted system can be learned by anybody with some technical knowledge. However, for an internally hosted system, you will require a good working knowledge of the operating system on which the VLE is installed, the underlying database that is used, the network in which the VLE has to operate, and any further components that have to work with the learning system.

    Conventions

    In this book, you will find a number of text styles that distinguish between different kinds of information. Here are some examples of these styles and an explanation of their meaning.

    Code words in text are shown as follows:

    If the cron.php script is invoked over HTTP (either using wget or curl), more memory is used than calling directly via the php –f command.

    Any command-line input and output is written as follows:

    There are two ways you can create a so-called database dump from a MySQL database, either via command line or via Moodle's optional database interface.

    The simplest syntax for the command line tool is:

    mysqldump -u -p > backup.sql

    New terms and important words are introduced in a bold-type font. Words that you see on the screen, in menus or dialog boxes for example, appear in our text like this:

    Clicking on the Enabled protocols link in the overview table will guide you to Plugins | Web services | Manage protocols screen.

    Note

    Warnings or important notes appear in a box like this.

    Tip

    Tips and tricks appear like this.

    Reader feedback

    Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or disliked. Reader feedback is important for us as it helps us develop titles that you will really get the most out of.

    To send us general feedback, simply e-mail <feedback@packtpub.com>, and mention the book's title in the subject of your message.

    If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, see our author guide at www.packtpub.com/authors.

    Customer support

    Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.

    Downloading the color images of this book

    We also provide you with a PDF file that has color images of the screenshots/diagrams used in this book. The color images will help you better understand the changes in the output. You can download this file from http://www.packtpub.com/sites/default/files/downloads/Moodle3AdministrationThirdEdition_ColorImages.pdf.

    Errata

    Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you find a mistake in one of our books—maybe a mistake in the text or the code—we would be grateful if you could report this to us. By doing so, you can save other readers from frustration and help us improve subsequent versions of this book. If you find any errata, please report them by visiting http://www.packtpub.com/submit-errata, selecting your book, clicking on the Errata Submission Form link, and entering the details of your errata. Once your errata are verified, your submission will be accepted and the errata will be uploaded to our website or added to any list of existing errata under the Errata section of that title.

    To view the previously submitted errata, go to https://www.packtpub.com/books/content/support and enter the name of the book in the search field. The required information will appear under the Errata section.

    Piracy

    Piracy of copyrighted material on the Internet is an ongoing problem across all media. At Packt, we take the protection of our copyright and licenses very seriously. If you come across any illegal copies of our works in any form on the Internet, please provide us with the location address or website name immediately so that we can pursue a remedy.

    Please contact us at <copyright@packtpub.com> with a link to the suspected pirated material.

    We appreciate your help in protecting our authors and our ability to bring you valuable content.

    Questions

    If you have a problem with any aspect of this book, you can contact us at <questions@packtpub.com>, and we will do our best to address the problem.

    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:

    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

    Enjoying the preview?
    Page 1 of 1