Questa guida fornisce una panoramica dei tenant di Runtime SaaS e di come puoi utilizzarli per organizzare la tua offerta SaaS.
Tenant e progetti tenant
Una risorsa tenant di Runtime SaaS rappresenta un cliente logico, un client o un tenant della tua offerta SaaS. Funge principalmente da strumento organizzativo che ti aiuta a raggruppare le unità appartenenti a un tenant specifico.
Se la tua offerta SaaS ha più tenant, ti consigliamo di eseguire il provisioning delle risorse di ogni tenant in un progetto Google Cloud separato. Per separare le risorse del tenant in progetti Google Cloud dedicati, devi creare almeno due progetti:
- Progetto produttore:il progetto in cui è configurata la tua offerta SaaS. Per l'applicazione SaaS è necessario un solo progetto di produttore.
- Progetti tenant: i progetti con risorse Runtime SaaS per un tenant specifico. Ti consigliamo di creare un progetto per ciascuno dei tuoi tenant.
L'utilizzo di progetti separati per ogni tenant consente di impostare configurazioni (ad esempio, criteri IAM o peering di rete) all'interno dei progetti tenant e ti aiuta a monitorare i costi e gestire le risorse per ogni tenant.
Service account di attivazione in un progetto tenant
Il service account di attivazione ha bisogno delle autorizzazioni nel progetto tenant per creare e gestire le risorse definite nella configurazione Terraform. Ti consigliamo di configurare un account di attivazione separato per ciascuno dei tuoi inquilini.
Per saperne di più sui service account di attivazione e sulle autorizzazioni potenzialmente richieste, consulta Service account di attivazione.
API in un progetto tenant
Quando SaaS Runtime (tramite Infrastructure Manager e il service account di attivazione) tenta di creare risorse (ad esempio una VM) in un progetto tenant, le API necessarie devono essere abilitate in quel progetto tenant. In caso contrario, il provisioning non riuscirà.
Devi abilitare le API per tutti i tipi di risorse utilizzati dalla configurazione Terraform all'interno di un progetto tenant.
Utilizzare un tipo di unità provvisorio per automatizzare la configurazione del tenant
La creazione manuale di progetti, l'attivazione di API e la configurazione di IAM per ogni nuovo tenant richiedono molto tempo e sono soggette a errori. Puoi automatizzare il processo di configurazione del tenant utilizzando Runtime SaaS creando un tipo di unità provvisorio contenente una configurazione Terraform che:
- Crea un nuovo progetto Google Cloud per il tenant.
- Abilita le API necessarie nel nuovo progetto.
- Crea un account di servizio di attivazione dedicato per il tenant di cui è stato eseguito il provisioning (nel progetto produttore o nel progetto tenant).
- Concede le autorizzazioni IAM necessarie ai service account all'interno del progetto tenant.
- Configura il networking, la registrazione o altre infrastrutture di base.
Il tipo di unità provvisorio deve:
- Definisci le variabili Terraform
outputpertenant_project_id,tenant_project_numbere l'emailactuation_sache crea. - Ricevi
tenant_idcome variabileinput.
Configura il tipo di unità dell'applicazione in modo che dipenda dal tipo di unità provvisorio e mappa le variabili di output alle variabili di input corrispondenti dell'unità dell'applicazione.
Dopo aver configurato le dipendenze del tipo di unità, SaaS Runtime verifica che l'unità di infrastruttura tenant sottostante sia sottoposta a provisioning (creando un progetto tenant e configurandone le autorizzazioni) prima che venga eseguito il provisioning dell'unità contenente l'applicazione.
Per ulteriori dettagli sull'implementazione di questo pattern, consulta Gestire le dipendenze tra le unità e Utilizzare le variabili.
Passaggi successivi
- Scopri come creare progetti e risorse tenant.
- Scopri come associare le unità agli inquilini