Multi-tenant

Does's The Proxmox VE support multi-tenant ?
Short answer: yes, Proxmox VE can be used for multi-tenant style setups – but it doesn’t come as an “opinionated multi-tenant product” out of the box.

You normally combine a few native features:

- Pools and roles (RBAC) for separating who can see / manage which VMs
- SDN zones + VNets for L2 network isolation between tenants or projects
- Firewall rules (datacenter / host / SDN) to keep traffic strictly segmented

Designing a full multi-tenant environment with these building blocks is definitely possible, but it takes some work to glue everything together in a secure way (routing, return paths, VPN entry points, user permissions, etc.).

For transparency: I’ve been working on an open project called MSL Setup that tries to turn Proxmox into a pre-designed multi-project / multi-tenant lab. It automates SDN zones, per-project VNets, and VPN entry points, and adds a self-service style portal on top.

I’m not saying you need this project, but if you’d like to see one concrete example of how to orchestrate PVE’s native features for multi-tenant usage, the step-by-step guide is here:

Concept: https://github.com/zelogx/proxmox-msl-setup-basic
Automated Scripts: https://github.com/zelogx/msl-setup

Even if you don’t use it directly, the concept docs might give you some ideas for your own design.
 
- Pools and roles (RBAC) for separating who can see / manage which VMs
- SDN zones + VNets for L2 network isolation between tenants or projects
- Firewall rules (datacenter / host / SDN) to keep traffic strictly segmented
I don't know if this was implied, but also software defined storage is a requirement so that you can quota the used storage for your clients / customers / tenants.

What is missing to turn this into a fully fledged setup are:
  • RAM restrictions
  • CPU restrictions
AFAIK, you cannot limit this on a per pool basis, yet. So every tenant can allocate as much ram or CPU as desired.