In a typical GoQuorum or Hyperledger Besu privacy-enabled network, each participant (tenant) uses their own GoQuorum or Besu node and Tessera node. Tessera can be configured to manage multiple key pairs owned by one tenant. This model is costly to run and scale as more tenants join the network.
Multi-tenancy allows multiple tenants to use the same GoQuorum or Besu node, with each tenant having its own private state. Each tenant can perform all operations (create, read, and write) on any contract in its private state. Multi-tenancy provides a user experience similar to a user running their own managed node.
In GoQuorum, you can enable multi-tenancy via multiple private states (MPS), which allows each tenant to have access to multiple private states.
The public state remains publicly available to all tenants, and private states are logically separated.
For more information about GoQuorum multi-tenancy via MPS, see the GoQuorum multi-tenancy documentation. For more information about Besu multi-tenancy, see the Besu multi-tenancy documentation.
Use GoQuorum multi-tenancy
To use GoQuorum multi-tenancy via MPS:
You must have:
- Tessera version
21.4.0or later installed.
- GoQuorum version
21.4.2or later installed.
If running an earlier GoQuorum or Tessera version, upgrade your existing nodes to enable MPS and multi-tenancy. This includes running the Tessera multi-tenancy migration tool to upgrade Tessera to support multi-tenancy.
- Tessera version
Configure multi-tenancy via MPS. This includes configuring MPS in Tessera.
You can also add a new tenant to a multi-tenant node.
Use Besu multi-tenancy
To use Besu multi-tenancy, you must create a privacy-enabled network.
Configure multi-tenant Besu and Tessera nodes according to the Besu multi-tenancy configuration tutorial.