Building a Multi Tenant Node-RED Service

I was recently approached about adding Multi Tenant support to the core of Node-RED, I had to explain that due to the nature of NodeJS this isn't really a good idea as there is no way to get clean separation between the different users. But it is possible to build a system that spins up distinct instances for each user.

Over the month of October I'll be releasing a series of blog posts outlining all the components needed to build such a system and finally how to assemble them into a proof of concept deployment.

The first post is now live here

I will update that post with links to the subsequent articles as they go live and I'll try and remember to come back and post them here as well.


Hi Ben,
really nice initiative! A very basic question about "to the core": does this mean that (once your project is finished) when I install Node-RED from NPM, it will have multi-tenancy out of the box (baked into the core). I mean inclusive a http proxy and all related stuff... Or is this a completely separate project, that needs to be installed separately?

@BartButenaers the original request Ben received was about adding it to the core. You'll be familiar with the many discussions on that in this forum and our stated position that the node-red core is not suitable for multi-tenancy. The work Ben has been doing is building a multi-tenant service around the outside of Node-RED.


Part 2 - Building a Node-RED Storage Plugin


Part 3 - Building Authentication Plugins


Part 4 - Custom Node-RED Docker Container


Part 5 - Proxying for multiple Node-RED Instances


Part 6 - Managing Multi Tenant Node-RED instances


Hey Ben, this looks awesome. I am not a subject matter expert here, however, I think I get the idea (sort of). It definitely helps to understand principles of multi-tenant environments. Thanks a lot.

Part 7 - Advanced Multi Tenant Node-RED Topics


Part 8 - Working Example of Multi Tenant Node-RED

1 Like

This topic was automatically closed after 60 days. New replies are no longer allowed.