We use cookies on our website to ensure we provide you with the best experience on our website. By using our website, you agree to the use of cookies for analytics and personalized content.This website uses cookies. More Information
It seems like your browser didn't download the required fonts. Please revise your security settings and try again.
Barracuda Load Balancer ADC

Moodle Deployment

  • Last updated on

The Barracuda Load Balancer ADC increases the scalability and reliability of your Moodle deployment.

Product Versions and Prerequisites

You must have:

  • Barracuda Load Balancer ADC version 5.1 or 5.2.
  • Moodle 2.6 or earlier versions.
  • Installed your Barracuda Load Balancer ADC(s), connected to the web interface, and activated your subscription(s). 

Terminology

Before you begin deploying the Barracuda Load Balancer ADC with Moodle, familiarize yourself with these terms:

Term

Definition

Moodle

Modular Object-Oriented Dynamic Learning Environment. A free software e-learning platform or a course management system that provides easy-to-edit, secure, and structured course web sites.

NFS

Network File System. Lets machines mount a disk partition on a remote machine as if it were a local disk. It allows for fast, seamless sharing of files across a network.

Fully Qualified Domain Name (FQDN)

The unique name for a specific computer or host that can resolve to an IP address (e.g., www.example.com).

Service

A combination of a virtual IP (VIP) address and one or more TCP/UDP ports that the Barracuda Load Balancer ADC listens on. Traffic arriving over the specified port(s) is directed to one of the real servers associated with a particular service. 

Instant SSL

Instant SSL provides SSL (HTTPS) access to content on servers without having to modify the servers or the content on the servers. The Barracuda Load Balancer ADC rewrites the "http" links in the response to "https".

Moodle Services Deployment Options

Deployments of Moodle services are supported in either a one-armed or a two-armed topology. This can be either a single or multiple subnet configuration. Unless the users must directly access individual servers, it is recommended that you place the servers in one or more subnets that are reachable by an internal-facing port of the Barracuda Load Balancer ADC. If users must directly access individual servers, a one-armed deployment is recommended.

Direct Server Return (DSR) is not supported in a Moodle services deployment.

You can create either an Instant SSL or HTTP service. If you want to enforce encryption for all connections to your Moodle servers, create an Instant SSL service. Otherwise, create an HTTP service.

The following diagram shows an example of how the Barracuda Load Balancer ADC can be deployed with Moodle services in a web farm. 

Deployment Scenario

Moodle_deployment_new.png

 

Deploy the Barracuda Load Balancer ADC for Moodle

To deploy the Barracuda Load Balancer ADC for Moodle services in a web farm, complete the following steps :

Step 1. Install Moodle in a Web Farm

Install the latest Moodle software on the back-end servers. 

It is recommended that you place the database on a separate server. You can use either NFS or Samba to share  the Moodle database between the database server and the back-end servers.

Step 2. Create Services on the Barracuda Load Balancer ADC

You can create either an Instant SSL or HTTP service. If you want to enforce encryption for all connections to your Moodle servers, create an Instant SSL service. Otherwise, create an HTTP service.

Create an Instant SSL Service
  1. Log into the Barracuda Load Balancer ADC as the administrator.
  2. Go to the BASIC > Certificates page and create the required certificate.
  3. Go to the  BASIC > Services  page. 
  4. Click  Add Service  and enter the values in the corresponding fields.

    Name

    Type

    IP Address

    Port

    HTTP Service PortSSL SettingsCertificatesLoad Balancing

    Moodle_InstantSSL

    Instant SSL

    The IP address of the FQDN that clients use to access.

    For example, 10.5.7.205.

    443

    80
    • Secure Site Domain – Enter the domain name of your Moodle server. If the internal and external domain are different, you can use wildcard characters. For example: *.barracuda.com
    • If your Barracuda Load Balancer ADC is running version 5.1.1 and above, set the Rewrite Support option to On. For versions below 5.1.1, this option is named Instant SSL.

    Select the certificate that you uploaded for the service.
    • Persistence Type – Select Source IP.
    • Persistence Netmask – Enter: 255.255.255.255 
  5. Click Add Server to configure the real servers. In the server settings, ensure that you:
    • Enter the IP addresses of the back-end servers.  For example, 192.168.17.197 and 192.168.17.199.
    • Use port 80.
    • If traffic must be encrypted when it is passed to the real servers, enable Server uses SSL Otherwise, non-encrypted traffic is passed to the real servers because the Barracuda Load Balancer ADC decrypts the incoming traffic.
  6. If the Moodle server uses compression, configure the web translations. By default, the  Barracuda Load Balancer ADC  does not decompress encoded content. If the Moodle servers use compression, create an  HTTP Request Rewrite condition to remove the Accept-Encoding header.

    1. Go to the TRAFFIC > Web Translations page.
    2. In the HTTP Request  Rewrite section, create the following rule:

      Rule Name

      Sequence Number

      Action

      Header Name

      Old Value

      Rewrite Condition

      Remove_Encoding2Remove HeaderAccept-Encoding**
Create an HTTP Service
  1. Log into the Barracuda Load Balancer ADC as the administrator.
  2. Go to the BASIC > Services page. 

  3. Click  Add Service and enter the values in the corresponding fields.

    Name

    Type

    IP Address

    Port

    Load Balancing

    Moodle_HTTP

    HTTP

    The IP address of the FQDN that clients use to access.

    80

    • Persistence Type – Select Source IP.
    • Persistence Netmask – Enter: 255.255.255.255
  4. Click Add Server to configure the real servers. In the server settings, ensure that you:
    • Enter the IP addresses of the back-end servers.  For example, 192.168.17.197 and 192.168.17.199.
    • Use port 80.
Last updated on