Locataires et projets locataires

Ce guide présente les locataires App Lifecycle Manager et explique comment les utiliser pour organiser votre offre SaaS.

Locataires et projets locataires

Une ressource locataire App Lifecycle Manager représente un client, un client ou un locataire logique de votre offre SaaS. Elle sert principalement d'outil d'organisation qui vous aide à regrouper les unités appartenant à un locataire spécifique.

Si votre offre SaaS comporte plusieurs locataires, nous vous recommandons de provisionner les ressources de chacun d'eux dans un projet distinct Google Cloud . Pour séparer vos ressources locataires dans des projets dédiés Google Cloud , vous devez créer au moins deux projets :

  • Projet producteur : projet dans lequel votre offre SaaS est configurée. Vous n'avez besoin que d'un seul projet producteur pour votre application SaaS.
  • Projets locataires : projets contenant des ressources App Lifecycle Manager pour un locataire spécifique. Nous vous recommandons de créer un projet pour chacun de vos locataires.

L'utilisation de projets distincts pour chaque locataire vous permet de définir des configurations (stratégies IAM ou appairage de réseau, par exemple) dans les projets locataires, et vous aide à suivre les coûts et à gérer les ressources de chaque locataire.

Comptes de service d'activation dans un projet locataire

Le compte de service d'activation a besoin d'autorisations dans le projet locataire pour créer et gérer les ressources définies dans votre configuration Terraform. Nous vous recommandons de configurer un compte d'activation distinct pour chacun de vos locataires.

Pour en savoir plus sur les comptes de service d'activation et les autorisations potentiellement requises, consultez la section Compte de service d'activation.

API dans un projet locataire

Lorsque App Lifecycle Manager utilise Infrastructure Manager et le compte de service d'activation pour créer des ressources (une VM, par exemple) dans un projet locataire, les API nécessaires doivent être activées dans ce projet locataire. Sinon, le provisionnement va échouer.

Vous devez activer les API pour tous les types de ressources utilisés par votre configuration Terraform dans un projet locataire.

Utiliser un type d'unité provisoire pour automatiser la configuration de votre locataire

Lorsque vous créez manuellement des projets, activez des API et configurez IAM pour chaque nouveau locataire, cela prend du temps et est source d'erreurs. Vous pouvez automatiser le processus de configuration du locataire à l'aide d'App Lifecycle Manager en créant un type d'unité provisoire contenant une configuration Terraform qui :

  • crée un nouveau Google Cloud projet pour le locataire ;
  • active les API nécessaires dans ce nouveau projet ;
  • crée un compte de service d'activation dédié pour le locataire provisionné (dans le projet producteur ou le projet locataire) ;
  • accorde les autorisations IAM nécessaires aux comptes de service dans le projet locataire ;
  • configure la mise en réseau, la journalisation ou une autre infrastructure de base.

Votre type d'unité provisoire doit :

  • définir les variables output Terraform pour l'adresse e-mail tenant_project_id, tenant_project_number et actuation_sa qu'il crée ;
  • recevoir tenant_project_id et tenant_project_number en tant que variables input.

Configurez votre type d'unité d'application pour qu'il dépende du type d'unité provisoire et mappez les variables de sortie avec les variables d'entrée correspondantes de l'unité d'application.

Une fois que vous avez configuré les dépendances de votre type d'unité, App Lifecycle Manager vérifie que l'unité d'infrastructure locataire sous-jacente est provisionnée (création d'un projet locataire et configuration de ses autorisations) avant que l'unité contenant votre application ne soit provisionnée.

Pour en savoir plus sur l'implémentation de ce modèle, consultez la section Gérer les dépendances entre les unités et utiliser des variables.

Étape suivante