Multi-tenancy

Experimental ::: tool_mutenancy
Maintained by Petr Skoda
Multi-tenancy plugin is part of MuTMS suite, please note that core patching is required.
Latest release:
43 downloads
2 fans
Current versions available: 1

 

What is Multi-tenancy?

Multitenancy makes it possible to handle a variety of use cases, such as:

  1. Corporate Training
    Create separate tenants for departments, regions, or subsidiaries. This setup allows for tailored training programs, while management stays centralized.
    Example: A multinational corporation can set up tenants for Europe, Asia, and the Americas, each with its own specific training content while sharing global compliance courses.

  2. Client Training
    Offer customized learning environments for each client with unique permissions and branding.
    Example: A consultancy firm provides training portals for different clients, ensuring each client sees their unique branding and only their specific training materials.

  3. Partner and Vendor Training
    Provide dedicated tenants for external partners or vendors, giving them secure access to their training materials without interfering with internal operations.
    Example: A manufacturing company trains its distributors and suppliers through separate partner-specific tenants, ensuring they only access relevant information.

  4. Franchise Management
    Give franchisees their own tenants to run localized training programs while keeping things consistent across the organization.
    Example: A restaurant franchise offers tenants for franchise owners to manage staff training tailored to their region while enforcing corporate standards.

  5. Shared Resources
    Use shared spaces between tenants to distribute common resources, like compliance courses or company announcements.
    Example: A global healthcare company shares mandatory compliance training across tenants while allowing each region to manage its additional training needs.


Drawbacks of Multi-tenancy

  1. Later Splitting of Tenants is Hard
    Breaking up one multi-tenant site into separate independent sites can be a very complex process, requiring site cloning and a lot of data cleanup.

  2. Shared Infrastructure Issues
    If one tenant uses too many resources, it can slow things down for everyone else.

  3. Limited Customization
    Tenants can make some branding and setting changes, but they're more limited compared to standalone Moodle™ instances.

  4. Security Concerns
    Even with isolation measures, shared infrastructure creates the risk of vulnerabilities affecting multiple tenants.

  5. Plugin and Feature Restrictions
    Some standard functionalities might not work as expected, and third-party plugins like enrolment or authentication tools may need significant adjustments.


Installation steps

  • Apply the multi-tenancy patch to Moodle™ codebase: GitHub Repository
  • Install the tool_mulib plugin: GitHub Plugin Page
  • Install the tool_mutenancy plugin: GitHub Plugin Page
  • Install or upgrade the site
  • Login as site administrator
  • Activate multi-tenancy in: Site administration / General / Tenants
  • Start creating tenants and member accounts

Known Limitations

  • Only the latest Moodle™ 4.5.x releases to be supported in 2025.
  • Supported databases: PostgreSQL and MariaDB (MySQL is not recommeded).
  • 64-bit PHP is required.
  • Tenant-specific appearance settings may not display correctly in the Moodle Mobile App.

Support

Paid support options will be available starting in 2026.

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5
Screenshot #6
Screenshot #7
Screenshot #8
Screenshot #9

Contributors

Petr Skoda (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
Please login to post comments