Enterprise Architecture: Recommend best practise to support multi tenancy / multiple domain?

rajivdua
Giga Contributor

Is there an official documentation around Architecture recommend best practise to support multi tenancy, multiple domain? What are the things to consider if we are including another internal customer to an existing instance so that they do not see each other data, however still able to share the common data like Companies, People?

3 REPLIES 3

dravvyramlochun
ServiceNow Employee
ServiceNow Employee

Hello Rajiv,



Please check the following documentation, they have plenty of information regarding Multi Tenancy and Domain Separation concepts



http://wiki.servicenow.com/index.php?title=Multi_Tenancy_and_Domain_Separation_Options#gsc.tab=0


Domain separation


Domain separation options



Thanks,


Dravvy



Please Hit like, Helpful or Correct depending on the impact of the response


Kostya
Tera Guru

Hello rajivdua,



there is a lot to consider. First of all, you need to keep in mind, what do you deliver to your end users / customers and if makes sense to have it on one common instance. There is actually three main options


  • Domain Separation on one global instance
  • Multiple inctances (maybe connected via direct APIs or Enterprise Service Bus)
  • "Platform-feature"-based separation (ACL, Filter, query business rules etc.)
  • And, of course, you can mix all of above (having on global service management instance and multiple local instances, integrated with an ESB)


Links sent by Dravvy may help to understand advantages and disadvantages. But if you are not a MSP and you do not have any policies to use a multi-tenancy, than I would not suggest to use Domain Separation applivcation.



Best regards


Hit the Thumb Icon and/or mark as Correct, if my answer was correct. So you help others to see correct responses and I get fame 🙂

Cheers,
Kostya

Rick Frasz
Kilo Contributor

Hi rajivdua



I have similar questions and am still working through domain separation and when to apply it.   Here is what I can share based on my reading and research:



  • Domain separation only makes sense if you are an MSP.   Even in this case you need to be aware that domain separation adds a lot of complexity to the implementation.
  • There are features that are not available with domain separation (i.e. service portal is an example).   This may change in the future but there is no ETA on the service portal being domain separate in an upcoming release.
  • Once you enable domain separation there is no turning back.   You can disable it but you can never remove domain separation from your instance.
  • If you need to ensure that there is separation between instances so that the admin cannot access data (for security or regulatory reasons) for a customer then you may want to look at a single instance or scoped apps versus domain separation.


Like I said, I am still wrapping my head around domain separation and other available options but I wanted to share with you.   I'd be curious to hear what others in the community are doing...



Rick