Allow object to have multiple tenants #554

Closed
opened 2025-12-29 16:23:08 +01:00 by adam · 10 comments
Owner

Originally created by @eacheach on GitHub (Nov 28, 2016).

We'd like to have objects like Sites and Prefixes support multiple Tenants. So Site A has two Tenants, Tenant Y and Tenant Z that occupy that location. Prefix B is used by Tenants T, U and V. Etc.

Originally created by @eacheach on GitHub (Nov 28, 2016). We'd like to have objects like Sites and Prefixes support multiple Tenants. So Site A has two Tenants, Tenant Y and Tenant Z that occupy that location. Prefix B is used by Tenants T, U and V. Etc.
adam closed this issue 2025-12-29 16:23:08 +01:00
Author
Owner

@aveloz commented on GitHub (Nov 28, 2016):

Im asking for that exactly here:

https://groups.google.com/forum/#!topic/netbox-discuss/985YOncQEo0

Theres an option to create Tenants Groups but thats all...You cant assign a tenant group to a site, device etc....

@aveloz commented on GitHub (Nov 28, 2016): Im asking for that exactly here: https://groups.google.com/forum/#!topic/netbox-discuss/985YOncQEo0 Theres an option to create Tenants Groups but thats all...You cant assign a tenant group to a site, device etc....
Author
Owner

@eacheach commented on GitHub (Nov 29, 2016):

Our use case is a little different I think. We are an Enterprise and are documenting our WAN. A Site is a building with a WAN circuit and there are multiple Tenants in that building separated into their own VRF's. We'd like to be able to filter Sites for a given Tenant and have all the Sites where that Tenant resides show up. We also have some (though few) cases where a Prefix is shared between Tenants. We have shared Circuits as well.

@eacheach commented on GitHub (Nov 29, 2016): Our use case is a little different I think. We are an Enterprise and are documenting our WAN. A Site is a building with a WAN circuit and there are multiple Tenants in that building separated into their own VRF's. We'd like to be able to filter Sites for a given Tenant and have all the Sites where that Tenant resides show up. We also have some (though few) cases where a Prefix is shared between Tenants. We have shared Circuits as well.
Author
Owner

@aveloz commented on GitHub (Nov 29, 2016):

Thats my case too.

@aveloz commented on GitHub (Nov 29, 2016): Thats my case too.
Author
Owner

@jeremystretch commented on GitHub (Dec 1, 2016):

The concept of tenancy was added to NetBox to allow for tracking resources (devices or sites, for example) which are owned by or associated with only one specific specific tenant. If a resource is shared by multiple tenants, it shouldn't be considered as belonging to any of them, but rather to the primary organization which uses NetBox (e.g. the managed services provider).

Mapping multiple tenants to a single resource conflates the concept of ownership with that of dependency, which is a much more difficult trait to define and track. It would also greatly impede efforts to implement tenant-based security roles for NetBox users (see #554).

I'll keep this request open for some time to see if other have feedback to offer, but at this time I'm not expecting to implement it.

@jeremystretch commented on GitHub (Dec 1, 2016): The concept of tenancy was added to NetBox to allow for tracking resources (devices or sites, for example) which are owned by or associated with only one specific specific tenant. If a resource is shared by multiple tenants, it shouldn't be considered as belonging to any of them, but rather to the primary organization which uses NetBox (e.g. the managed services provider). Mapping multiple tenants to a single resource conflates the concept of ownership with that of dependency, which is a much more difficult trait to define and track. It would also greatly impede efforts to implement tenant-based security roles for NetBox users (see #554). I'll keep this request open for some time to see if other have feedback to offer, but at this time I'm not expecting to implement it.
Author
Owner

@ack-martijng commented on GitHub (Dec 15, 2016):

I would like to confirm the need for dependencies, or the here described multi tennant usage.
But i believe that the note of @jeremystretch is better, however dependencies are just another parameter that should be able to be tracked within Netbox.

We are also offering services to multiple tennants in one building (site) And provide a circuit that is assigned to us as provider However we would like to make clear which tennants/customers are depending on the equipment.

@ack-martijng commented on GitHub (Dec 15, 2016): I would like to confirm the need for dependencies, or the here described multi tennant usage. But i believe that the note of @jeremystretch is better, however dependencies are just another parameter that should be able to be tracked within Netbox. We are also offering services to multiple tennants in one building (site) And provide a circuit that is assigned to us as provider However we would like to make clear which tennants/customers are depending on the equipment.
Author
Owner

@jeremystretch commented on GitHub (Feb 14, 2017):

What happens if you have a site with a hundred tenants? For example, maybe you're an MSP with a hundred customers represented in one of your colocation centers. Most people are going to decide that it's not worth the trouble to assign so many explicit relationships. But then you have a logical conflict where some sites (those with only a handful of tenants) have relationships assigned but others don't, even though they're all multitenant sites. For this reason I believe it's more practical to limit tenancy assignments to a single tenant.

@jeremystretch commented on GitHub (Feb 14, 2017): What happens if you have a site with a hundred tenants? For example, maybe you're an MSP with a hundred customers represented in one of your colocation centers. Most people are going to decide that it's not worth the trouble to assign so many explicit relationships. But then you have a logical conflict where _some_ sites (those with only a handful of tenants) have relationships assigned but others don't, even though they're all multitenant sites. For this reason I believe it's more practical to limit tenancy assignments to a single tenant.
Author
Owner

@MrDragon commented on GitHub (Mar 8, 2017):

Just adding my $.02 :)
We have data centers at multiple locations and lease space to our customers. I'd like to track where our customers are - some have space in more than one data center.
I don't want to assign a whole site (datacenter) to a tenant (it's our site, after all), but only add the tenant to a site (so-to-speak) - basically a field within the tenant where I can select 0-to-several of the sites to indicate that the tenant is "there".
I could conceivable make tenant-groups, call them "Site-A-customer", "Site-B-Customer", etc, but then I'd need to be able to put a tenant into multiple groups (which I currently can't, either).
Ideally there'd be an additional box in the "Stats" box (groups/sites/whatever) where I can quickly click and see where they rent space.
I see, though, that things aren't as easy as I imagined them. Still, I'm giving a "me too" to this feature-request / wish-list

I hear there are custom fields I can define somewhere (really haven't messed with that) - could those offer a work-around?

@MrDragon commented on GitHub (Mar 8, 2017): Just adding my $.02 :) We have data centers at multiple locations and lease space to our customers. I'd like to track where our customers are - some have space in more than one data center. I don't want to assign a whole site (datacenter) to a tenant (it's our site, after all), but only add the tenant to a site (so-to-speak) - basically a field within the tenant where I can select 0-to-several of the sites to indicate that the tenant is "there". I could conceivable make tenant-groups, call them "Site-A-customer", "Site-B-Customer", etc, but then I'd need to be able to put a tenant into multiple groups (which I currently can't, either). Ideally there'd be an additional box in the "Stats" box (groups/sites/whatever) where I can quickly click and see where they rent space. I see, though, that things aren't as easy as I imagined them. Still, I'm giving a "me too" to this feature-request / wish-list I hear there are custom fields I can define somewhere (really haven't messed with that) - could those offer a work-around?
Author
Owner

@jsenecal commented on GitHub (Mar 9, 2017):

Maybe having a way to query / display tenants referenced by objects in site
or in rack could help?

On Wed, Mar 8, 2017, 04:37 MrDragon, notifications@github.com wrote:

Just adding my $.02 :)
We have data centers at multiple locations and lease space to our
customers. I'd like to track where our customers are - some have space in
more than one data center.
I don't want to assign a whole site (datacenter) to a tenant (it's our
site, after all), but only add the tenant to a site (so-to-speak) -
basically a field within the tenant where I can select 0-to-several of the
sites to indicate that the tenant is "there".
I could conceivable make tenant-groups, call them "Site-A-customer",
"Site-B-Customer", etc, but then I'd need to be able to put a tenant into
multiple groups (which I currently can't, either).
Ideally there'd be an additional box in the "Stats" box
(groups/sites/whatever) where I can quickly click and see where they rent
space.
I see, though, that things aren't as easy as I imagined them. Still, I'm
giving a "me too" to this feature-request / wish-list

I hear there are custom fields I can define somewhere (really haven't
messed with that) - could those offer a work-around?


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/digitalocean/netbox/issues/711#issuecomment-284993410,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABfg5kStdy_mZJS_rLbVs4ng-DGsuv5jks5rjnbggaJpZM4K-QDK
.

@jsenecal commented on GitHub (Mar 9, 2017): Maybe having a way to query / display tenants referenced by objects in site or in rack could help? On Wed, Mar 8, 2017, 04:37 MrDragon, <notifications@github.com> wrote: > Just adding my $.02 :) > We have data centers at multiple locations and lease space to our > customers. I'd like to track where our customers are - some have space in > more than one data center. > I don't want to assign a whole site (datacenter) to a tenant (it's our > site, after all), but only add the tenant to a site (so-to-speak) - > basically a field within the tenant where I can select 0-to-several of the > sites to indicate that the tenant is "there". > I could conceivable make tenant-groups, call them "Site-A-customer", > "Site-B-Customer", etc, but then I'd need to be able to put a tenant into > multiple groups (which I currently can't, either). > Ideally there'd be an additional box in the "Stats" box > (groups/sites/whatever) where I can quickly click and see where they rent > space. > I see, though, that things aren't as easy as I imagined them. Still, I'm > giving a "me too" to this feature-request / wish-list > > I hear there are custom fields I can define somewhere (really haven't > messed with that) - could those offer a work-around? > > — > You are receiving this because you are subscribed to this thread. > Reply to this email directly, view it on GitHub > <https://github.com/digitalocean/netbox/issues/711#issuecomment-284993410>, > or mute the thread > <https://github.com/notifications/unsubscribe-auth/ABfg5kStdy_mZJS_rLbVs4ng-DGsuv5jks5rjnbggaJpZM4K-QDK> > . >
Author
Owner

@jeremystretch commented on GitHub (Apr 19, 2017):

Closing this out as I'm going to keep the "single tenant" constraint. I'm open to providing ways to query for tenant presence, but that would need its own feature request.

@jeremystretch commented on GitHub (Apr 19, 2017): Closing this out as I'm going to keep the "single tenant" constraint. I'm open to providing ways to query for tenant presence, but that would need its own feature request.
Author
Owner

@LukeDRussell commented on GitHub (Jun 8, 2018):

If I have a site with 100 tenants, I will provision 100 tenants on the site.

@LukeDRussell commented on GitHub (Jun 8, 2018): If I have a site with 100 tenants, I will provision 100 tenants on the site.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#554