Giter VIP home page Giter VIP logo

aws-ebs-moodle's Introduction

Deploying Moodle on Elastic Beanstalk

Configurations to deploy a moodle envioronment with two instances for HA with an external database and autoscale to 4 instances.

Cache recomendations

The nfs mount (Elastic File System) is a bad choice to store de application cache. It have a 5 seconds latency at least, very poor performance. To solve this issue is recomended to use a memcached node from Elasticache and configure it in moodle: Administration -> Plugins -> Caching -> Cache Stores.

Domain name

I set up a CNAME alias pointing to the Elastic Beanstalk environment URL on Route 53.

Configuration files

Modify the configuration files in the .ebextensions folder with the IDs of your default VPC and subnets, and your public IP address.

  • .ebextensions/efs-create.config creates an EFS file system and mount points in each Availability Zone / subnet in your VPC. Identify your default VPC and subnet IDs in the VPC console. If you have not used the console before, use the region selector to select the same region that you chose for your environment.
  • .ebextensions/efs-mount.config mount EFS on instances.
  • .ebextensions/cronjob.config cron job needed for moodle (https://docs.moodle.org/33/en/Cron)
  • .ebextensions/securitygroups.config Elastic Load Balancer configurationssecurity groups, ssh whitelist, http and https ELB ports
  • .ebextensions/configuration.config Environment variables, php.ini options, deploy modes, autoscaling setttings, notifications, health checks, ELB configurations.
  • config.php To replace the database, user, password values in the config.php we use the enviornment variables, check the syntax in config.php.

Backup

Now that you've gone through all the trouble of installing your site, you will want to back up the data in RDS and EFS that your site depends on. See the following topics for instructions.

Documentation used

Documentation used: Deploying a High-Availability WordPress Website with an External Amazon RDS Database to Elastic Beanstalk.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.