Multi-tenancy​Multi-tenancy

Available on: Enterprise EditionCloud>= 0.13.0

Multi-tenancy allows you to manage multiple environments (e.g., dev, staging, prod) in a single Kestra instance.

What is multi-tenancy

Multi-tenancy is a software architecture in which a single instance of software serves multiple tenants. You can think of it as running multiple virtual instances in a single physical instance. You can use multi-tenancy to separate resources between business units, teams, or customers.

This feature requires a commercial license.

How does multi-tenancy work in Kestra

Starting from Kestra 0.23, multi-tenancy is enabled by default and required. All resources (such as flows, triggers, executions, RBAC, and more) are isolated by the tenant. This means that you can have a flow with the same identifier and the same namespace in multiple tenants at the same time.

Data stored inside the Internal Storage is also isolated by tenants.

End-users can use the tenant selection dropdown menu from the UI to see tenants they have access to. It allows users to switch between tenants easily. Each UI page also includes the tenant ID in the URL (e.g., https://demo.kestra.io/ui/yourTenantId/executions/namespace/flow/executionId.)

Tenants selection dropdown

Most of API endpoints also include the tenant identifier. The exception to that are instance-level endpoints such as /configs, /license-info or /banners that require a Superadmin access.

For example, the URL of the API operation to list flows of the products namespace is /api/v1/{your_tenant_id}/flows/products. You can check the Enterprise Edition API Guide for more information.

Was this page helpful?