Skip to main content

Single Tenant Management

Overview

In SaaS architecture, there are "single-tenant" and "multi-tenant" models.

A single-tenant architecture means that each customer (tenant) using the SaaS has a separate server and database. Each tenant maintains a completely isolated environment.

A multi-tenant architecture involves multiple tenants sharing common servers and databases. Data is partitioned by tenant, but physical resources are shared.

The single-tenant management feature is a functionality on the SaaSus Platform that supports the construction of SaaS with a single-tenant architecture.

info

The single-tenant management feature is only available to customers on the Advanced plan or higher.

In a single-tenant architecture, each tenant's data is physically isolated, reducing the risk of data leakage among other benefits. However, there is a disadvantage of increased management cost as servers and databases need to be prepared for each tenant.

The single-tenant management feature automatically prepares servers and databases in your AWS environment when you create a tenant on SaaSus. This can reduce the costs of management and operations.

Setup Method

Permission from SaaSus Platform

When onboarding a tenant, since SaaSus needs to access your AWS environment, you must grant these permissions to SaaSus.

Follow the instructions on the screen to create an IAM Role and register the details of the created role.

settings-role

Cloud Formation Template

Cloud Formation Template Sample

When you create a tenant on SaaSus, a Cloud Formation is executed in your AWS environment to create an environment for each tenant. You need to register the Cloud Formation template that will be used at this time.

The Cloud Formation's Outputs should specify the following items:

Logical IDValue
AccountIdAWS account where Cloud Formation is executed
SubnetIdsIDs of the subnets set for the DB instance
SecurityGroupIdsIDs of the security groups set for the DB instance
DbUserUser for connecting to the DB
DbPassPassword for connecting to the DB
DbHostHost (IP address) for connecting to the DB
DbPortPort number for connecting to the DB
DbNameName of the DB
DbTypeType of the DB (mysql or postgres)

SQL File

SQL File Sample

You will need to register SQL file that will be executed against the DB created by the Cloud Formation. Register the SQL for the table definitions and initial data of the DB.

How to check the progress

In the SaaS operations console - Tenant Management screen, display the target tenant, and you can check the progress information by the value of TenantOnboardingStatus.

TenantOnboardingStatusSituation
setup_cfn_in_progressPreparing to run Cloud Formation
setup_cfn_db_readyDB instance created by Cloud Formation
setup_cfn_completedCloud Formation completed
setup_db_in_progressExecuting SQL
all_completedAll processes completed normally
errorAbnormal termination (please contact support)

Note

Tenant onboarding processes will be carried out in the Tokyo region (ap-northeast-1). Tenant offboarding process is not supported.