Skip to main content

tenantd documentation

tenantd is a cPanel-first multi-tenancy isolation layer for stock AlmaLinux, Rocky, and RHEL 9. It gives you per-tenant CPU, memory, process, filesystem, shell, cron, and MySQL isolation on the in-tree kernel you already run.

Every feature is free. There are no tiers and no license keys.

Start here

  • Quickstart - install tenantd and enroll your first tenant. Ten minutes, start to finish.
  • Migrating from CloudLinux - convert an existing CloudLinux host. Reads your LVE caps and CageFS layout, keeps cron and SSH up, and has a rollback.

Reference

What tenantd does not do

We keep this in the docs rather than buried in a comparison page.

tenantd runs on the stock kernel. That is the entire point of the product, and it costs us one specific capability: cgroup v2's io controller is domain-only, so per-thread block-IO throttling inside a shared mysqld is not possible without patching the kernel. We refuse to patch the kernel.

We handle this in two ways. The governor catches the symptoms of a noisy database neighbor (runaway queries, connection floods, lock storms) and kills them. For tenants that are genuinely IO-heavy, tenantctl mysql-promote moves them onto a dedicated per-tenant mariadb@ instance, where per-tenant IO enforcement works properly because the mysqld is no longer shared. Promotion is free, like everything else.

If your fleet needs hard per-thread IO caps on shared mysqlds you cannot promote off, CloudLinux does that and tenantd does not. The full detail is in tenantd vs CloudLinux.

Support

The software is free and no support contract gates any feature. If you want an SLA or hands-on migration help, see pricing and support.