Listing Thumbnail

    Moodle LMS Hosted on AWS with Support from SolveDevOps

     Info
    Deployed on AWS
    AWS Free Tier
    This is a repackaged open source software product wherein additional charges apply for the pre-configured Moodle LMS stack (Apache, MariaDB, PHP, Postfix) with PHP tuned for Moodle, HTTPS redirect, Moodle cron, per-instance database credentials generated on first boot, a configured Amazon CloudWatch agent shipping web, database and mail logs plus host metrics, Amazon SSM Agent for Session Manager access, security hardening, and vendor support.

    Overview

    Moodle LMS on AWS - Pre-Configured, Hardened, and Ready to Deploy

    Moodle is an open-source learning management system (LMS) used by educators, administrators, and learners worldwide. This AMI from SolveDevOps delivers a complete, pre-configured Moodle 4.4 stack on AWS EC2 - so you can go from launch to a working LMS in minutes, not hours.

    What is Included in This AMI

    Full Moodle 4.4 Stack - Pre-Installed and Configured:

    • Moodle 4.4 stable deployed to /var/www/html/moodle with data root on /opt/moodledata
    • Apache with HTTPS forced via RewriteRule, mod_ssl and mod_rewrite enabled, dedicated access and error logs
    • MariaDB bound to localhost with utf8mb4 encoding and file-based error logging
    • PHP tuned to Moodle-recommended limits: memory_limit=512M, upload_max_filesize=1024M, post_max_size=1024M, max_execution_time=300, max_input_vars=5000
    • Postfix configured for outbound mail delivery
    • Moodle cron job scheduled to run every minute
    • Certbot pre-installed for easy Let's Encrypt certificate setup

    Per-Instance Credential Generation:

    • On first boot, the instance automatically derives unique MariaDB root credentials and a dedicated Moodle database, user, and password from the instance ID
    • A self-signed SSL certificate is generated in /etc/ssl/certs/solve-devops-dummycerts/
    • All generated credentials are recorded in /opt/moodle-info/generated-credentials.txt
    • No two instances share a secret - every deployment starts with unique credentials

    Amazon CloudWatch Integration:

    • CloudWatch agent pre-installed and enabled with a ready-made configuration
    • Ships Apache access/error logs, MariaDB error logs, mail logs, syslog, and auth logs to CloudWatch Logs with 30-day retention
    • Publishes CPU, memory, disk, TCP connection, and process metrics under the SolveDevOps/Moodle namespace
    • Streams organized per instance ID for easy multi-instance monitoring

    AWS Systems Manager Integration:

    • SSM Agent installed and enabled for Session Manager, Run Command, Patch Manager, and Inventory
    • Manage your Moodle instance without opening SSH ports to the internet

    Security Hardening Applied to This AMI

    • Key-based SSH only - password authentication is disabled
    • No root login permitted via SSH
    • No secrets or AWS credentials baked into the image
    • Cloud-init instance data and SSH authorized keys scrubbed at build time
    • Unique credentials generated per instance - no shared default passwords
    • HTTPS enforced with automatic HTTP-to-HTTPS redirect
    • MariaDB locked down to localhost-only connections with secured root account

    Deployment Quick-Start

    1. Launch the AMI and attach an IAM instance profile with CloudWatchAgentServerPolicy and AmazonSSMManagedInstanceCore
    2. Open https:// (port 443; port 80 redirects automatically) to run the Moodle installer
    3. Run sudo change-www to set your site URL
    4. Replace the self-signed certificate using the pre-installed certbot
    5. Find your database credentials at /opt/moodle-info/generated-credentials.txt

    A login banner (motd) displays site and admin URLs, credential file location, the change-www command, and CloudWatch/SSM activation steps on every login. Full root access is provided.

    Why Host Moodle on AWS

    • Scalability: Scale EC2 instances up or down based on learner demand
    • Cost Optimization: Pay-as-you-go model with EC2, RDS, and S3 integration options
    • High Availability: AWS infrastructure supports disaster recovery and redundancy
    • Observability: Pre-configured CloudWatch logging and metrics give you visibility from the first boot
    • Managed Access: SSM integration enables secure, auditable instance management

    Example Use Case

    A university preparing for exam season needs to rapidly deploy a reliable LMS that handles increased traffic from students accessing quizzes and assignments simultaneously. With this AMI, the IT team launches a pre-configured Moodle instance on EC2, attaches CloudWatch monitoring to track performance under load, and uses SSM for secure remote management - all without manually installing or configuring the Moodle stack.

    Highlights

    • Moodle 4.4 stable with Apache, MariaDB, PHP (all required extensions), Postfix and certbot; PHP limits raised for Moodle (512M memory, 1G uploads, max_input_vars 5000), HTTP-to-HTTPS redirect, Moodle cron running every minute, data directory at /opt/moodledata, and a change-www helper to set the site hostname.
    • Per-instance secrets: the MariaDB root password, Moodle database name/user/password and a self-signed certificate are generated on first boot and written to /opt/moodle-info/generated-credentials.txt; no shared passwords ship in the image.
    • Built-in observability and remote management: Amazon CloudWatch agent ships Moodle's Apache access/error logs, the MariaDB error log, mail.log, syslog and auth.log and CPU/memory/disk/TCP metrics (namespace SolveDevOps/Moodle); Amazon SSM Agent enabled for Session Manager

    Details

    Delivery method

    Delivery option
    64-bit (x86) Amazon Machine Image (AMI)

    Latest version

    Operating system
    Ubuntu 22.04

    Deployed on AWS
    New

    Introducing multi-product solutions

    You can now purchase comprehensive solutions tailored to use cases and industries.

    Multi-product solutions

    Features and programs

    Financing for AWS Marketplace purchases

    AWS Marketplace now accepts line of credit payments through the PNC Vendor Finance program. This program is available to select AWS customers in the US, excluding NV, NC, ND, TN, & VT.
    Financing for AWS Marketplace purchases

    Pricing

    Moodle LMS Hosted on AWS with Support from SolveDevOps

     Info
    Pricing is based on actual usage, with charges varying according to how much you consume. Subscriptions have no end date and may be canceled any time.
    Additional AWS infrastructure costs may apply. Use the AWS Pricing Calculator  to estimate your infrastructure costs.
    If you are an AWS Free Tier customer with a free plan, you are eligible to subscribe to this offer. You can use free credits to cover the cost of eligible AWS infrastructure. See AWS Free Tier  for more details. If you created an AWS account before July 15th, 2025, and qualify for the Legacy AWS Free Tier, Amazon EC2 charges for Micro instances are free for up to 750 hours per month. See Legacy AWS Free Tier  for more details.

    Usage costs (286)

     Info
    • ...
    Dimension
    Cost/hour
    t3.large
    Recommended
    $0.019
    t2.micro
    $0.019
    t3.micro
    $0.019
    c7i.large
    $0.019
    d3.xlarge
    $0.019
    c5ad.large
    $0.019
    m5a.4xlarge
    $0.019
    c5a.xlarge
    $0.019
    r6idn.xlarge
    $0.019
    c6i.large
    $0.019

    AI Insights

     Info

    Dimensions summary

    You pay by the hour for the AWS EC2 instance that runs Moodle, an open-source learning management system. Pricing is not tiered by features. Instead, each dimension maps to a specific EC2 instance type, and every instance runs the same software. Rates scale with the compute, memory, and specialized hardware each instance provides. Smaller instances like t3.nano suit light workloads, while larger and specialized types (GPU, memory-optimized, storage-optimized) handle heavier demand. You choose the instance that fits your expected traffic. AWS infrastructure charges apply alongside the hourly software rate, and you can change instance types as needs grow.

    Top-of-mind questions for buyers

    Each dimension bills the hourly rate for one running EC2 instance of that type, running Moodle. The rate reflects the instance's compute, memory, and specialized hardware. One instance running for one hour equals one billed hour. You pay AWS infrastructure charges on top of the software rate.
    The software rate meters running time only. A stopped instance does not accrue the hourly software charge. Underlying AWS storage for the volume may still apply while the instance is stopped. You resume charges when you start the instance again.
    You switch to a different instance-type dimension. The new hourly rate applies once that instance runs. You can also set up AWS Auto Scaling to add or remove EC2 instances based on traffic, so charges track the number of running instances.
    solvedevops.com
    Helpful?

    Vendor refund policy

    Cance Anytime

    How can we make this page better?

    Tell us how we can improve this page, or report an issue with this product.
    Tell us how we can improve this page, or report an issue with this product.

    Legal

    Vendor terms and conditions

    Upon subscribing to this product, you must acknowledge and agree to the terms and conditions outlined in the vendor's End User License Agreement (EULA) .

    Content disclaimer

    Vendors are responsible for their product descriptions and other product content. AWS does not warrant that vendors' product descriptions or other product content are accurate, complete, reliable, current, or error-free.

    Usage information

     Info

    Delivery details

    64-bit (x86) Amazon Machine Image (AMI)

    Amazon Machine Image (AMI)

    An AMI is a virtual image that provides the information required to launch an instance. Amazon EC2 (Elastic Compute Cloud) instances are virtual servers on which you can run your applications and workloads, offering varying combinations of CPU, memory, storage, and networking resources. You can launch as many instances from as many different AMIs as you need.

    Version release notes

    Updates to the latest Security Patches for Moodle and Ubuntu 22.04

    Additional details

    Usage instructions

    Quick Start: Once your instance is ready, visit https://instance-ip-address  or https://instance-host-name  to setup Moodle. If your Moodle LMS does not load up correctly, access the instance over SSH to configure your www hostname or IP address. More advanced use-cases can be found here https://solvedevops.com/docs/moodle/hosting-moodle-on-aws-a-comprehensive-guide/  Support and Suggestions: support@solvedevops.com 

    Support

    Vendor support

    For assistance with your Moodle LMS deployment, contact the SolveDevOps support team at support@solvedevops.com . You can also reach us through our contact page at

    AWS infrastructure support

    AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.

    Similar products

    Customer reviews

    Ratings and reviews

     Info
    0 ratings
    5 star
    4 star
    3 star
    2 star
    1 star
    0%
    0%
    0%
    0%
    0%
    0 reviews
    No customer reviews yet
    Be the first to review this product . We've partnered with PeerSpot to gather customer feedback. You can share your experience by writing or recording a review, or scheduling a call with a PeerSpot analyst.